From: Bin Meng <bin.meng@processmission.com>
To: QEMU <qemu-devel@nongnu.org>
Cc: Alistair Francis <alistair@alistair23.me>,
"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
Peter Maydell <peter.maydell@linaro.org>,
Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>,
qemu-arm@nongnu.org
Subject: [PATCH] docs/system/arm: Document Zynq Buildroot boot
Date: Sun, 28 Jun 2026 19:49:25 +0800 [thread overview]
Message-ID: <20260628114925.418293-1-bin.meng@processmission.com> (raw)
The Zynq board documentation only showed a generic direct kernel
boot command.
Add Buildroot ZC702 commands for booting through U-Boot proper
with the generic loader and for direct Linux boot from the
generated SD image.
Signed-off-by: Bin Meng <bin.meng@processmission.com>
---
docs/system/arm/xlnx-zynq.rst | 54 ++++++++++++++++++++++++++++++-----
1 file changed, 47 insertions(+), 7 deletions(-)
diff --git a/docs/system/arm/xlnx-zynq.rst b/docs/system/arm/xlnx-zynq.rst
index aa37df2926..95538cd32f 100644
--- a/docs/system/arm/xlnx-zynq.rst
+++ b/docs/system/arm/xlnx-zynq.rst
@@ -30,16 +30,56 @@ The QEMU xilinx-zynq-a9 board supports the following devices:
- DDR Memory
- USB 2.0 x2
-Running
-"""""""
-Direct Linux boot of a generic Arm upstream Linux kernel:
+Running Buildroot ZC702 Images
+""""""""""""""""""""""""""""""
+
+Buildroot has a ZC702 defconfig. Buildroot 2026.05 release is tested at the
+time of writing. From the Buildroot source tree:
+
+.. code-block:: bash
+
+ $ make zynq_zc702_defconfig
+ $ make
+
+The generated files are in ``output/images/``. The examples below use:
+
+ * ``u-boot.bin``
+ * ``uImage``
+ * ``sdcard.img``
+
+QEMU's SD card model requires a power-of-two image size. Work on a copy
+of the Buildroot SD image and resize the copy, not the original output:
+
+.. code-block:: bash
+
+ $ cp output/images/sdcard.img sdcard-qemu.img
+ $ qemu-img resize -f raw sdcard-qemu.img 128M
+
+To boot through the U-Boot image generated by Buildroot, use the generic
+loader device to place the raw ``u-boot.bin`` at the address it was linked
+for and start the CPU there. The ``zynq_zc702_defconfig`` U-Boot image is
+U-Boot proper, not a Zynq boot ROM image, and is linked at ``0x04000000``:
+
+.. code-block:: bash
+
+ $ qemu-system-arm -M xilinx-zynq-a9 -m 1G \
+ -machine boot-mode=sd \
+ -display none -serial null -serial mon:stdio \
+ -device loader,file=output/images/u-boot.bin,addr=0x04000000,cpu-num=0 \
+ -drive file=sdcard-qemu.img,if=sd,format=raw
+
+Direct Linux boot of the generated Buildroot image is also supported. The Zynq
+ZC702 DTB is generated by Buildroot and is located in
+``output/images/zynq-zc702.dtb``. The kernel image is generated as a uImage:
.. code-block:: bash
- $ qemu-system-aarch64 -M xilinx-zynq-a9 \
- -dtb zynq-zc702.dtb -serial null -serial mon:stdio \
- -display none -m 1024 \
- -initrd rootfs.cpio.gz -kernel zImage
+ $ qemu-system-arm -M xilinx-zynq-a9 -m 1G \
+ -display none -serial null -serial mon:stdio \
+ -kernel output/images/uImage \
+ -dtb output/images/zynq-zc702.dtb \
+ -append "console=ttyPS0,115200 root=/dev/mmcblk0p2 rw rootwait" \
+ -drive file=sdcard-qemu.img,if=sd,format=raw
For configuring the boot-mode provide the following on the command line:
--
2.34.1
next reply other threads:[~2026-06-28 11:50 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-28 11:49 Bin Meng [this message]
2026-06-28 23:29 ` [PATCH] docs/system/arm: Document Zynq Buildroot boot Alistair Francis
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260628114925.418293-1-bin.meng@processmission.com \
--to=bin.meng@processmission.com \
--cc=alistair@alistair23.me \
--cc=edgar.iglesias@gmail.com \
--cc=peter.maydell@linaro.org \
--cc=pierrick.bouvier@oss.qualcomm.com \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.