From: Thomas Mittelstaedt <thomas.mittelsta...@de.bosch.com> Signed-off-by: Thomas Mittelstaedt <thomas.mittelsta...@de.bosch.com> --- doc/develop/uefi/u-boot_on_efi.rst | 76 ++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+)
diff --git a/doc/develop/uefi/u-boot_on_efi.rst b/doc/develop/uefi/u-boot_on_efi.rst index acad6397e8..927e1dc266 100644 --- a/doc/develop/uefi/u-boot_on_efi.rst +++ b/doc/develop/uefi/u-boot_on_efi.rst @@ -254,6 +254,82 @@ This shows running with serial enabled (see `include/configs/efi-x86_app.h`):: => QEMU: Terminated +Run at VirtualBox (x86) +-------------------------- + +Enable EFI +~~~~~~~~~~~~ +At settings for virtual machine the flag at **System->Motherboard->Enable EFI (special OSes only)** has to be enabled. + +Installation +~~~~~~~~~~~~ +Install the needed system at a VDI disk and connect this to SATA controller (type AHCI) at settings +for virtual machine at **System->Storage->Controller:SATA**. + +For the following description 3 partitions are assumed: + +- Partition 1: formatted as **vfat**, used for U-Boot and and its environment filesenvironment, flag **boot** set +- Partition 2: formatted as **ext2/ext4**, used for Linux image and boot configuration, flag **boot** set +- Partition 3: formatted as **ext4**, used for root file system + +Create an extlinux.conf or a boot script +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Following files are assumed to be located at system for boot configuration:: + + Partition File Comment + 1 EFI/BOOT/BOOTX64.efi # renamed U-Boot EFI image + 2 Image # Linux image + 2 Initrd # Initramfs of Linux + +Boot script +~~~~~~~~~~~ + +The boot script **boot.scr** is assumed to be located at:: + + Partition File Comment + 2 boot.scr # Boot script, generated with mkimage from template + +Content of **boot.scr**: + +.. code-block:: bash + + ext4load ${devtype} ${devnum}:${distro_bootpart} ${kernel_addr_r} ${prefix}Image + setenv kernel_size ${filesize} + ext4load ${devtype} ${devnum}:${distro_bootpart} ${ramdisk_addr_r} ${prefix}Initrd + setenv initrd_size ${filesize} + zboot ${kernel_addr_r} ${kernel_size} ${ramdisk_addr_r} ${initrd_size} + +Extlinux configuration +~~~~~~~~~~~~~~~~~~~~~~ + +Alternatively a configuration **extlinux.conf** can be used. **extlinux.conf** is assumed to be located at:: + + Partition File Comment + 2 extlinux/extlinux.conf # Extlinux boot configuration + +Content of **extlinux.conf**: + +.. code-block:: bash + + default l0 + menu title U-Boot menu + prompt 0 + timeout 50 + + label l0 + menu label Linux + linux /Image + initrd /Initrd + + +Additionally something like (sda is assumed as disk device): + +.. code-block:: bash + + append root=/dev/sda3 console=tty0 console=ttyS0,115200n8 rootwait rw + + Future work ----------- -- 2.30.2