initial buildroot for linux 5.15
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
image efi-part.vfat {
|
||||
vfat {
|
||||
file EFI {
|
||||
image = "efi-part/EFI"
|
||||
}
|
||||
file Image {
|
||||
image = "Image"
|
||||
}
|
||||
}
|
||||
|
||||
size = 32M
|
||||
}
|
||||
|
||||
image disk.img {
|
||||
hdimage {
|
||||
gpt = true
|
||||
}
|
||||
|
||||
partition boot {
|
||||
image = "efi-part.vfat"
|
||||
partition-type-uuid = c12a7328-f81f-11d2-ba4b-00a0c93ec93b
|
||||
offset = 32K
|
||||
bootable = true
|
||||
}
|
||||
|
||||
partition root {
|
||||
partition-type-uuid = b921b045-1df0-41c3-af44-4c6f280d3fae
|
||||
image = "rootfs.ext2"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
set default="0"
|
||||
set timeout="5"
|
||||
|
||||
menuentry "Buildroot" {
|
||||
linux /Image root=PARTLABEL=root rootwait
|
||||
}
|
||||
Executable
+5
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
cp -f ${BOARD_DIR}/grub.cfg ${BINARIES_DIR}/efi-part/EFI/BOOT/grub.cfg
|
||||
@@ -0,0 +1,53 @@
|
||||
|
||||
The aarch64_efi_defconfig allows to build a minimal Linux system that
|
||||
can boot on all AArch64 servers providing an EFI firmware.
|
||||
|
||||
This includes all Arm EBBR[1] compliant systems, and all Arm SystemReady[2]
|
||||
compliant systems for example.
|
||||
|
||||
|
||||
Building and booting
|
||||
====================
|
||||
|
||||
$ make aarch64_efi_defconfig
|
||||
$ make
|
||||
|
||||
The file output/images/disk.img is a complete disk image that can be
|
||||
booted, it includes the grub2 bootloader, Linux kernel and root
|
||||
filesystem.
|
||||
|
||||
Testing under Qemu
|
||||
==================
|
||||
|
||||
This image can also be tested using Qemu:
|
||||
|
||||
qemu-system-aarch64 \
|
||||
-M virt \
|
||||
-cpu cortex-a57 \
|
||||
-m 512 \
|
||||
-nographic \
|
||||
-bios </path/to/QEMU_EFI.fd> \
|
||||
-drive file=output/images/disk.img,if=none,format=raw,id=hd0 \
|
||||
-device virtio-blk-device,drive=hd0 \
|
||||
-netdev user,id=eth0 \
|
||||
-device virtio-net-device,netdev=eth0
|
||||
|
||||
Note that </path/to/QEMU_EFI.fd> needs to point to a valid aarch64 UEFI
|
||||
firmware image for qemu.
|
||||
It may be provided by your distribution as a edk2-aarch64 or AAVMF
|
||||
package, in path such as /usr/share/edk2/aarch64/QEMU_EFI.fd .
|
||||
|
||||
U-Boot based qemu firmware
|
||||
==========================
|
||||
|
||||
A qemu firmware with support for UEFI based on U-Boot can be built following
|
||||
the instructions in [3], with qemu_arm64_defconfig.
|
||||
|
||||
This should give you a nor_flash.bin, which you can use with qemu as an
|
||||
alternative to QEMU_EFI.fd. You will also need to change the machine
|
||||
specification to "-M virt,secure" on qemu command line, to enable TrustZone
|
||||
support, and you will need to increase the memory with "-m 1024".
|
||||
|
||||
[1]: https://github.com/ARM-software/ebbr
|
||||
[2]: https://developer.arm.com/architectures/system-architectures/arm-systemready
|
||||
[3]: https://github.com/glikely/u-boot-tfa-build
|
||||
Reference in New Issue
Block a user