在 aarch64 上使用 UEFI 启动的最小内核配置是什么?

在 aarch64 上使用 UEFI 启动的最小内核配置是什么?

我一直在和一些人玩UEFI固件我下载了 Raspberry Pi,并且我也一直在尝试获取树莓派内核使用 UEFI 启动。所以我只是运行make -j4 bcm2711_defconfig并启用了显示的选项Linux 从头开始​​页面使用 UEFI 启动并运行make -j4编译我的内核。

一旦完成,我就运行make -j4 dtbs modulesmake -j4 dtbs_install modules_install install安装我的内核。我发现了一个名为vmlinuz.efiin 的文件/boot,并认为这是一个好兆头。

重新启动后,我进入提供的 UEFI shell 并输入以下命令:

Shell> fs0:
FS0:\> vmlinuz.efi root=/dev/mmcblk0p2 rootwait ro

我没有启动(或出现内核恐慌),而是得到以下结果:

Shell> fs0:
FS0:\> vmlinuz.efi root=/dev/mmcblk0p2 rootwait ro
EFI stub: Decompressing Linux Kernel...
EFI stub: Generating empty DTB
EFI stub: Exiting boot services...
EFI stub: ERROR: Exit boot services failed.
EFI stub: ERROR: Failed to update FDT and exit boot services

我在这里做错了什么?

这是我的.config 文件

相关内容