aboutsummaryrefslogtreecommitdiffstats
path: root/docs
diff options
context:
space:
mode:
authorSandrine Bailleux <sandrine.bailleux@arm.com>2020-08-05 07:42:45 +0000
committerTrustedFirmware Code Review <review@review.trustedfirmware.org>2020-08-05 07:42:45 +0000
commit95f9b1fbf96e840ff8ab02889ade0641f288fd33 (patch)
tree676e0e9f3300440d064ddbbd9f9bcb0d0edeaca8 /docs
parent8dd1c3c6c602fe2339b4b9a61ff3261430e4803f (diff)
parent231d0b351d42266da9814d025f1a0b7c6a856bb3 (diff)
downloadplatform_external_arm-trusted-firmware-95f9b1fbf96e840ff8ab02889ade0641f288fd33.tar.gz
platform_external_arm-trusted-firmware-95f9b1fbf96e840ff8ab02889ade0641f288fd33.tar.bz2
platform_external_arm-trusted-firmware-95f9b1fbf96e840ff8ab02889ade0641f288fd33.zip
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
Diffstat (limited to 'docs')
-rw-r--r--docs/plat/qemu.rst51
1 files changed, 43 insertions, 8 deletions
diff --git a/docs/plat/qemu.rst b/docs/plat/qemu.rst
index afa32c11b..66b82473c 100644
--- a/docs/plat/qemu.rst
+++ b/docs/plat/qemu.rst
@@ -20,11 +20,46 @@ provided as it's generated by QEMU.
Current limitations:
- 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
+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
-------------------------------
@@ -43,14 +78,14 @@ To build:
make CROSS_COMPILE=aarch64-none-elf- PLAT=qemu
-To start (QEMU v4.1.0):
+To start (QEMU v5.0.0):
.. code:: shell
qemu-system-aarch64 -nographic -machine virt,secure=on -cpu cortex-a57 \
-kernel Image \
- -append "console=ttyAMA0,38400 keep_bootcon root=/dev/vda2" \
- -initrd rootfs-arm64.cpio.gz -smp 2 -m 1024 -bios bl1.bin \
+ -append "console=ttyAMA0,38400 keep_bootcon" \
+ -initrd rootfs.cpio.gz -smp 2 -m 1024 -bios bl1.bin \
-d unimp -semihosting-config enable,target=native
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/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
qemu-system-aarch64 -nographic -machine virt,secure=on -cpu cortex-a57 \
-kernel Image -no-acpi \
- -append 'console=ttyAMA0,38400 keep_bootcon root=/dev/vda2' \
- -initrd rootfs-arm64.cpio.gz -smp 2 -m 1024 -bios flash.bin \
+ -append 'console=ttyAMA0,38400 keep_bootcon' \
+ -initrd rootfs.cpio.gz -smp 2 -m 1024 -bios flash.bin \
-d unimp