diff options
| author | Peter Maydell <peter.maydell@linaro.org> | 2021-02-08 13:00:54 +0000 |
|---|---|---|
| committer | Peter Maydell <peter.maydell@linaro.org> | 2021-02-08 13:00:54 +0000 |
| commit | 8eef07b4d3c2f1048012f6a5174671bc167b4604 (patch) | |
| tree | df39d809cdd23250770cf646a48760056f01d166 /docs/system | |
| parent | 6f0e9c26dbae9ac18b89d359791008fe3432ca91 (diff) | |
| parent | d994cc54498e8952113110b07a76dbfecd46a909 (diff) | |
| download | focaccia-qemu-8eef07b4d3c2f1048012f6a5174671bc167b4604.tar.gz focaccia-qemu-8eef07b4d3c2f1048012f6a5174671bc167b4604.zip | |
Merge remote-tracking branch 'remotes/stsquad/tags/pull-testing-gdbstub-docs-080221-1' into staging
Testing, gdbstub and doc tweaks: - increase timeout on replay kernel acceptance test - fixes for binfmt_misc docker images - better gdb version detection - don't silently skip gdb tests - fix for gdbstub auxv handling - cleaner handling of check-tcg on tcg disabled builds - expand vexpress/versitile docs with examples # gpg: Signature made Mon 08 Feb 2021 11:12:03 GMT # gpg: using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44 # gpg: Good signature from "Alex Bennée (Master Work Key) <alex.bennee@linaro.org>" [full] # Primary key fingerprint: 6685 AE99 E751 67BC AFC8 DF35 FBD0 DB09 5A9E 2A44 * remotes/stsquad/tags/pull-testing-gdbstub-docs-080221-1: docs/system: document an example booting the versatilepb machine docs/system: document an example vexpress-a15 invocation tests/Makefile.include: don't use TARGET_DIRS for check-tcg scripts/mtest2make.py: export all-%s-targets variable and use it tests/tcg: Replace /bin/true by true (required on macOS) gdbstub: Fix handle_query_xfer_auxv tests/tcg: don't silently skip the gdb tests configure: bump the minimum gdb version for check-tcg to 9.1 configure: make version_ge more tolerant of shady version input tests/docker: add a docker-exec-copy-test tests/docker: alias docker-help target for consistency tests/docker: preserve original name when copying libs tests/docker: make _copy_with_mkdir accept missing files tests/docker: Fix typo in help message tests/docker: Fix _get_so_libs() for docker-binfmt-image tests/acceptance: Increase the timeout in the replay tests Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'docs/system')
| -rw-r--r-- | docs/system/arm/versatile.rst | 34 | ||||
| -rw-r--r-- | docs/system/arm/vexpress.rst | 28 |
2 files changed, 62 insertions, 0 deletions
diff --git a/docs/system/arm/versatile.rst b/docs/system/arm/versatile.rst index 51221c30a4..2ae792bac3 100644 --- a/docs/system/arm/versatile.rst +++ b/docs/system/arm/versatile.rst @@ -27,3 +27,37 @@ The Arm Versatile baseboard is emulated with the following devices: devices. - PL181 MultiMedia Card Interface with SD card. + +Booting a Linux kernel +---------------------- + +Building a current Linux kernel with ``versatile_defconfig`` should be +enough to get something running. Nowadays an out-of-tree build is +recommended (and also useful if you build a lot of different targets). +In the following example $BLD points to the build directory and $SRC +points to the root of the Linux source tree. You can drop $SRC if you +are running from there. + +.. code-block:: bash + + $ make O=$BLD -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- versatile_defconfig + $ make O=$BLD -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- + +You may want to enable some additional modules if you want to boot +something from the SCSI interface:: + + CONFIG_PCI=y + CONFIG_PCI_VERSATILE=y + CONFIG_SCSI=y + CONFIG_SCSI_SYM53C8XX_2=y + +You can then boot with a command line like: + +.. code-block:: bash + + $ qemu-system-arm -machine type=versatilepb \ + -serial mon:stdio \ + -drive if=scsi,driver=file,filename=debian-buster-armel-rootfs.ext4 \ + -kernel zImage \ + -dtb versatile-pb.dtb \ + -append "console=ttyAMA0 ro root=/dev/sda" diff --git a/docs/system/arm/vexpress.rst b/docs/system/arm/vexpress.rst index 7f1bcbef07..3e3839e923 100644 --- a/docs/system/arm/vexpress.rst +++ b/docs/system/arm/vexpress.rst @@ -58,3 +58,31 @@ Other differences between the hardware and the QEMU model: ``vexpress-a15``, and have IRQs from 40 upwards. If a dtb is provided on the command line then QEMU will edit it to include suitable entries describing these transports for the guest. + +Booting a Linux kernel +---------------------- + +Building a current Linux kernel with ``multi_v7_defconfig`` should be +enough to get something running. Nowadays an out-of-tree build is +recommended (and also useful if you build a lot of different targets). +In the following example $BLD points to the build directory and $SRC +points to the root of the Linux source tree. You can drop $SRC if you +are running from there. + +.. code-block:: bash + + $ make O=$BLD -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- multi_v7_defconfig + $ make O=$BLD -C $SRC ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- + +By default you will want to boot your rootfs off the sdcard interface. +Your rootfs will need to be padded to the right size. With a suitable +DTB you could also add devices to the virtio-mmio bus. + +.. code-block:: bash + + $ qemu-system-arm -cpu cortex-a15 -smp 4 -m 4096 \ + -machine type=vexpress-a15 -serial mon:stdio \ + -drive if=sd,driver=file,filename=armel-rootfs.ext4 \ + -kernel zImage \ + -dtb vexpress-v2p-ca15-tc1.dtb \ + -append "console=ttyAMA0 root=/dev/mmcblk0 ro" |