mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-24 13:55:56 +00:00
Merge changes from topic "qemu" into integration
* changes: docs: qemu: bump to QEMU 5.0.0 docs: qemu: remove unneeded root=/dev/vda2 kernel parameter docs: qemu: add build instructions for QEMU_EFI.fd and rootfs.cpio.gz
This commit is contained in:
commit
95f9b1fbf9
1 changed files with 43 additions and 8 deletions
|
@ -20,11 +20,46 @@ provided as it's generated by QEMU.
|
||||||
Current limitations:
|
Current limitations:
|
||||||
|
|
||||||
- Only cold boot is supported
|
- Only cold boot is supported
|
||||||
- No build instructions for QEMU\_EFI.fd and rootfs-arm64.cpio.gz
|
|
||||||
|
|
||||||
``QEMU_EFI.fd`` can be dowloaded from
|
Getting non-TF images
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
``QEMU_EFI.fd`` can be downloaded from
|
||||||
http://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/latest/QEMU-KERNEL-AARCH64/RELEASE_GCC5/QEMU_EFI.fd
|
http://snapshots.linaro.org/components/kernel/leg-virt-tianocore-edk2-upstream/latest/QEMU-KERNEL-AARCH64/RELEASE_GCC5/QEMU_EFI.fd
|
||||||
|
|
||||||
|
or, can be built as follows:
|
||||||
|
|
||||||
|
.. code:: shell
|
||||||
|
|
||||||
|
git clone https://github.com/tianocore/edk2.git
|
||||||
|
cd edk2
|
||||||
|
git submodule update --init
|
||||||
|
make -C BaseTools
|
||||||
|
source edksetup.sh
|
||||||
|
export GCC5_AARCH64_PREFIX=aarch64-linux-gnu-
|
||||||
|
build -a AARCH64 -t GCC5 -p ArmVirtPkg/ArmVirtQemuKernel.dsc
|
||||||
|
|
||||||
|
````
|
||||||
|
|
||||||
|
Then, you will get ``Build/ArmVirtQemuKernel-AARCH64/DEBUG_GCC5/FV/QEMU_EFI.fd``
|
||||||
|
|
||||||
|
Please note you do not need to use GCC 5 in spite of the environment variable
|
||||||
|
``GCC5_AARCH64_PREFIX``
|
||||||
|
|
||||||
|
The rootfs can be built by using Buildroot as follows:
|
||||||
|
|
||||||
|
.. code:: shell
|
||||||
|
|
||||||
|
git clone git://git.buildroot.net/buildroot.git
|
||||||
|
cd buildroot
|
||||||
|
make qemu_aarch64_virt_defconfig
|
||||||
|
utils/config -e BR2_TARGET_ROOTFS_CPIO
|
||||||
|
utils/config -e BR2_TARGET_ROOTFS_CPIO_GZIP
|
||||||
|
make olddefconfig
|
||||||
|
make
|
||||||
|
|
||||||
|
Then, you will get ``output/images/rootfs.cpio.gz``.
|
||||||
|
|
||||||
Booting via semi-hosting option
|
Booting via semi-hosting option
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
|
@ -43,14 +78,14 @@ To build:
|
||||||
|
|
||||||
make CROSS_COMPILE=aarch64-none-elf- PLAT=qemu
|
make CROSS_COMPILE=aarch64-none-elf- PLAT=qemu
|
||||||
|
|
||||||
To start (QEMU v4.1.0):
|
To start (QEMU v5.0.0):
|
||||||
|
|
||||||
.. code:: shell
|
.. code:: shell
|
||||||
|
|
||||||
qemu-system-aarch64 -nographic -machine virt,secure=on -cpu cortex-a57 \
|
qemu-system-aarch64 -nographic -machine virt,secure=on -cpu cortex-a57 \
|
||||||
-kernel Image \
|
-kernel Image \
|
||||||
-append "console=ttyAMA0,38400 keep_bootcon root=/dev/vda2" \
|
-append "console=ttyAMA0,38400 keep_bootcon" \
|
||||||
-initrd rootfs-arm64.cpio.gz -smp 2 -m 1024 -bios bl1.bin \
|
-initrd rootfs.cpio.gz -smp 2 -m 1024 -bios bl1.bin \
|
||||||
-d unimp -semihosting-config enable,target=native
|
-d unimp -semihosting-config enable,target=native
|
||||||
|
|
||||||
Booting via flash based firmwares
|
Booting via flash based firmwares
|
||||||
|
@ -92,12 +127,12 @@ To build flash.bin:
|
||||||
dd if=build/qemu/release/bl1.bin of=flash.bin bs=4096 conv=notrunc
|
dd if=build/qemu/release/bl1.bin of=flash.bin bs=4096 conv=notrunc
|
||||||
dd if=build/qemu/release/fip.bin of=flash.bin seek=64 bs=4096 conv=notrunc
|
dd if=build/qemu/release/fip.bin of=flash.bin seek=64 bs=4096 conv=notrunc
|
||||||
|
|
||||||
To start (QEMU v2.6.0):
|
To start (QEMU v5.0.0):
|
||||||
|
|
||||||
.. code:: shell
|
.. code:: shell
|
||||||
|
|
||||||
qemu-system-aarch64 -nographic -machine virt,secure=on -cpu cortex-a57 \
|
qemu-system-aarch64 -nographic -machine virt,secure=on -cpu cortex-a57 \
|
||||||
-kernel Image -no-acpi \
|
-kernel Image -no-acpi \
|
||||||
-append 'console=ttyAMA0,38400 keep_bootcon root=/dev/vda2' \
|
-append 'console=ttyAMA0,38400 keep_bootcon' \
|
||||||
-initrd rootfs-arm64.cpio.gz -smp 2 -m 1024 -bios flash.bin \
|
-initrd rootfs.cpio.gz -smp 2 -m 1024 -bios flash.bin \
|
||||||
-d unimp
|
-d unimp
|
||||||
|
|
Loading…
Add table
Reference in a new issue