docs: Add support for ast2700fc machine

- Updated Aspeed family boards list to include `ast2700fc`.
- Added boot instructions for the `ast2700fc` machine.
- Detailed the configuration and loading of firmware for the
  Cortex-A35 and Cortex-M4 processors.

Signed-off-by: Steven Lee <steven_lee@aspeedtech.com>
Change-Id: Id41312e9c7cf79bc55c6f24a87a7ad9993dc7261
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20250502103449.3091642-10-steven_lee@aspeedtech.com
Signed-off-by: Cédric Le Goater <clg@redhat.com>
This commit is contained in:
Steven Lee 2025-05-02 18:34:45 +08:00 committed by Cédric Le Goater
parent 81c7447543
commit f32ef57f7d

View file

@ -1,5 +1,5 @@
Aspeed family boards (``ast2500-evb``, ``ast2600-evb``, ``bletchley-bmc``, ``fuji-bmc``, ``fby35-bmc``, ``fp5280g2-bmc``, ``g220a-bmc``, ``palmetto-bmc``, ``qcom-dc-scm-v1-bmc``, ``qcom-firework-bmc``, ``quanta-q71l-bmc``, ``rainier-bmc``, ``romulus-bmc``, ``sonorapass-bmc``, ``supermicrox11-bmc``, ``supermicrox11spi-bmc``, ``tiogapass-bmc``, ``witherspoon-bmc``, ``yosemitev2-bmc``) Aspeed family boards (``ast2500-evb``, ``ast2600-evb``, ``ast2700-evb``, ``ast2700fc``, ``bletchley-bmc``, ``fuji-bmc``, ``fby35-bmc``, ``fp5280g2-bmc``, ``g220a-bmc``, ``palmetto-bmc``, ``qcom-dc-scm-v1-bmc``, ``qcom-firework-bmc``, ``quanta-q71l-bmc``, ``rainier-bmc``, ``romulus-bmc``, ``sonorapass-bmc``, ``supermicrox11-bmc``, ``supermicrox11spi-bmc``, ``tiogapass-bmc``, ``witherspoon-bmc``, ``yosemitev2-bmc``)
================================================================================================================================================================================================================================================================================================================================================================================================================== =================================================================================================================================================================================================================================================================================================================================================================================================================================
The QEMU Aspeed machines model BMCs of various OpenPOWER systems and The QEMU Aspeed machines model BMCs of various OpenPOWER systems and
Aspeed evaluation boards. They are based on different releases of the Aspeed evaluation boards. They are based on different releases of the
@ -255,6 +255,7 @@ etc.
AST2700 SoC based machines : AST2700 SoC based machines :
- ``ast2700-evb`` Aspeed AST2700 Evaluation board (Cortex-A35) - ``ast2700-evb`` Aspeed AST2700 Evaluation board (Cortex-A35)
- ``ast2700fc`` Aspeed AST2700 Evaluation board (Cortex-A35 + Cortex-M4)
Supported devices Supported devices
----------------- -----------------
@ -285,7 +286,6 @@ Supported devices
Missing devices Missing devices
--------------- ---------------
* Coprocessor support
* PWM and Fan Controller * PWM and Fan Controller
* Slave GPIO Controller * Slave GPIO Controller
* Super I/O Controller * Super I/O Controller
@ -353,6 +353,69 @@ specified path in the ${HOME} directory.
-bios ${HOME}/ast27x0_bootrom.bin -bios ${HOME}/ast27x0_bootrom.bin
Booting the ast2700fc machine
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AST2700 features four Cortex-A35 primary processors and two Cortex-M4 coprocessors.
**ast2700-evb** machine focuses on emulating the four Cortex-A35 primary processors,
**ast2700fc** machine extends **ast2700-evb** by adding support for the two Cortex-M4 coprocessors.
Steps to boot the AST2700fc machine:
1. Ensure you have the following AST2700A1 binaries available in a directory
* u-boot-nodtb.bin
* u-boot.dtb
* bl31.bin
* optee/tee-raw.bin
* image-bmc
* zephyr-aspeed-ssp.elf (for SSP firmware, CPU 5)
* zephyr-aspeed-tsp.elf (for TSP firmware, CPU 6)
2. Execute the following command to start ``ast2700fc`` machine:
.. code-block:: bash
IMGDIR=ast2700-default
UBOOT_SIZE=$(stat --format=%s -L ${IMGDIR}/u-boot-nodtb.bin)
$ qemu-system-aarch64 -M ast2700fc \
-device loader,force-raw=on,addr=0x400000000,file=${IMGDIR}/u-boot-nodtb.bin \
-device loader,force-raw=on,addr=$((0x400000000 + ${UBOOT_SIZE})),file=${IMGDIR}/u-boot.dtb \
-device loader,force-raw=on,addr=0x430000000,file=${IMGDIR}/bl31.bin \
-device loader,force-raw=on,addr=0x430080000,file=${IMGDIR}/optee/tee-raw.bin \
-device loader,cpu-num=0,addr=0x430000000 \
-device loader,cpu-num=1,addr=0x430000000 \
-device loader,cpu-num=2,addr=0x430000000 \
-device loader,cpu-num=3,addr=0x430000000 \
-drive file=${IMGDIR}/image-bmc,if=mtd,format=raw \
-device loader,file=${IMGDIR}/zephyr-aspeed-ssp.elf,cpu-num=4 \
-device loader,file=${IMGDIR}/zephyr-aspeed-tsp.elf,cpu-num=5 \
-serial pty -serial pty -serial pty \
-snapshot \
-S -nographic
After launching QEMU, serial devices will be automatically redirected.
Example output:
.. code-block:: bash
char device redirected to /dev/pts/55 (label serial0)
char device redirected to /dev/pts/56 (label serial1)
char device redirected to /dev/pts/57 (label serial2)
- serial0: Console for the four Cortex-A35 primary processors.
- serial1 and serial2: Consoles for the two Cortex-M4 coprocessors.
Use ``tio`` or another terminal emulator to connect to the consoles:
.. code-block:: bash
$ tio /dev/pts/55
$ tio /dev/pts/56
$ tio /dev/pts/57
Aspeed minibmc family boards (``ast1030-evb``) Aspeed minibmc family boards (``ast1030-evb``)
================================================================== ==================================================================