串口处系统启动日志中增加一行打印,打印内容如下。
[TestDxeEntry][13L] Test!!
apt-get install -y python3 make gcc unzip pigz bison flex libncurses-dev squashfs-tools bc device-tree-compiler libssl-dev cmake
su - root
apt-get install uuid-dev
cd /opt
tar -xzvf Ascend310B-hboot2-source.tar.gz
cd /opt/Ascend310B-hboot2-source/drivers/firmware/bios/HwPkg/UEFI/Common/Drivers
mkdir TestDxe
cd TestDxe
vim TestDxe.c
添加如下代码,配置完成后,按“Esc”键,再执行:wq!保存修改,并按“Enter”键退出。
#include <Uefi.h> #include <types.h> #include <Library/DebugLib.h> #include <Library/IoLib.h> #include <Library/UefiBootServicesTableLib.h> #include <Resource.h> EFI_STATUS EFIAPI TestDxeEntry(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE *SystemTable) { EFI_STATUS Status = EFI_SUCCESS; PRINT_WARNING("[%a][%dL] Test!!\n", __FUNCTION__, __LINE__); return Status; }
vim TestDxe.inf
添加如下代码,配置完成后,按“Esc”键,再执行:wq!保存修改,并按“Enter”键退出。
[Defines] INF_VERSION = 0x00010005 BASE_NAME = TestDxe FILE_GUID = 4D035FE8-A0BB-42D4-B661-21771E6906A5 MODULE_TYPE = DXE_DRIVER VERSION_STRING = 1.0 ENTRY_POINT = TestDxeEntry [Sources.common] TestDxe.c [Packages] ArmPlatformPkg/ArmPlatformPkg.dec MdePkg/MdePkg.dec ArmPkg/ArmPkg.dec HwPkg/HwPkg.dec [LibraryClasses] UefiDriverEntryPoint UefiBootServicesTableLib DebugLib IoLib BlackBoxLib [Guids] [Depex] TRUE
cd /opt/Ascend310B-hboot2-source/drivers/firmware/bios/HwPkg/UEFI/Products/as310b/as310b
vim as310b.dsc
文件新增内容如下图红框,配置完成后,按“Esc”键,再执行:wq!保存修改,并按“Enter”键退出。
vim as310b.fdf
文件新增内容如下图红框,配置完成后,按“Esc”键,再执行:wq!保存修改,并按“Enter”键退出。
cd /opt/Ascend310B-hboot2-source
bash build.sh hboot2
出现如下回显,且生成“AS310B_HBOOT2_UEFI.fd”文件表示编译“AS310B_HBOOT2_UEFI.fd”文件成功。
generate /opt/Ascend310B-hboot2-source/output/AS310B_HBOOT2_UEFI.fd success! sign /opt/Ascend310B-hboot2-source/output/AS310B_HBOOT2_UEFI.fd success!
编译后的“AS310B_HBOOT2_UEFI.fd”文件会自动存放于“Ascend310B-hboot2-source/output”目录下。