2020-06-02 15:50:50 +02:00
|
|
|
Aspeed family boards (``*-bmc``, ``ast2500-evb``, ``ast2600-evb``)
|
|
|
|
==================================================================
|
|
|
|
|
|
|
|
The QEMU Aspeed machines model BMCs of various OpenPOWER systems and
|
|
|
|
Aspeed evaluation boards. They are based on different releases of the
|
|
|
|
Aspeed SoC : the AST2400 integrating an ARM926EJ-S CPU (400MHz), the
|
|
|
|
AST2500 with an ARM1176JZS CPU (800MHz) and more recently the AST2600
|
2021-05-27 11:51:52 +02:00
|
|
|
with dual cores ARM Cortex-A7 CPUs (1.2GHz).
|
2020-06-02 15:50:50 +02:00
|
|
|
|
|
|
|
The SoC comes with RAM, Gigabit ethernet, USB, SD/MMC, USB, SPI, I2C,
|
|
|
|
etc.
|
|
|
|
|
|
|
|
AST2400 SoC based machines :
|
|
|
|
|
|
|
|
- ``palmetto-bmc`` OpenPOWER Palmetto POWER8 BMC
|
2021-06-15 21:28:47 +02:00
|
|
|
- ``quanta-q71l-bmc`` OpenBMC Quanta BMC
|
2020-06-02 15:50:50 +02:00
|
|
|
|
|
|
|
AST2500 SoC based machines :
|
|
|
|
|
|
|
|
- ``ast2500-evb`` Aspeed AST2500 Evaluation board
|
|
|
|
- ``romulus-bmc`` OpenPOWER Romulus POWER9 BMC
|
|
|
|
- ``witherspoon-bmc`` OpenPOWER Witherspoon POWER9 BMC
|
|
|
|
- ``sonorapass-bmc`` OCP SonoraPass BMC
|
|
|
|
- ``swift-bmc`` OpenPOWER Swift BMC POWER9
|
|
|
|
|
|
|
|
AST2600 SoC based machines :
|
|
|
|
|
2021-05-27 11:51:52 +02:00
|
|
|
- ``ast2600-evb`` Aspeed AST2600 Evaluation board (Cortex-A7)
|
2020-06-02 15:50:50 +02:00
|
|
|
- ``tacoma-bmc`` OpenPOWER Witherspoon POWER9 AST2600 BMC
|
|
|
|
|
|
|
|
Supported devices
|
|
|
|
-----------------
|
|
|
|
|
|
|
|
* SMP (for the AST2600 Cortex-A7)
|
|
|
|
* Interrupt Controller (VIC)
|
|
|
|
* Timer Controller
|
|
|
|
* RTC Controller
|
|
|
|
* I2C Controller
|
|
|
|
* System Control Unit (SCU)
|
|
|
|
* SRAM mapping
|
|
|
|
* X-DMA Controller (basic interface)
|
|
|
|
* Static Memory Controller (SMC or FMC) - Only SPI Flash support
|
|
|
|
* SPI Memory Controller
|
|
|
|
* USB 2.0 Controller
|
|
|
|
* SD/MMC storage controllers
|
|
|
|
* SDRAM controller (dummy interface for basic settings and training)
|
|
|
|
* Watchdog Controller
|
|
|
|
* GPIO Controller (Master only)
|
|
|
|
* UART
|
|
|
|
* Ethernet controllers
|
2020-11-20 18:39:52 +01:00
|
|
|
* Front LEDs (PCA9552 on I2C bus)
|
2021-03-09 12:01:28 +01:00
|
|
|
* LPC Peripheral Controller (a subset of subdevices are supported)
|
2021-05-01 10:03:51 +02:00
|
|
|
* Hash/Crypto Engine (HACE) - Hash support only. TODO: HMAC and RSA
|
2020-06-02 15:50:50 +02:00
|
|
|
|
|
|
|
|
|
|
|
Missing devices
|
|
|
|
---------------
|
|
|
|
|
|
|
|
* Coprocessor support
|
|
|
|
* ADC (out of tree implementation)
|
|
|
|
* PWM and Fan Controller
|
|
|
|
* Slave GPIO Controller
|
|
|
|
* Super I/O Controller
|
|
|
|
* PCI-Express 1 Controller
|
|
|
|
* Graphic Display Controller
|
|
|
|
* PECI Controller
|
|
|
|
* MCTP Controller
|
|
|
|
* Mailbox Controller
|
|
|
|
* Virtual UART
|
|
|
|
* eSPI Controller
|
|
|
|
* I3C Controller
|
|
|
|
|
|
|
|
Boot options
|
|
|
|
------------
|
|
|
|
|
2021-03-09 12:01:28 +01:00
|
|
|
The Aspeed machines can be started using the ``-kernel`` option to
|
|
|
|
load a Linux kernel or from a firmware. Images can be downloaded from
|
|
|
|
the OpenBMC jenkins :
|
2020-06-02 15:50:50 +02:00
|
|
|
|
2021-03-09 12:01:28 +01:00
|
|
|
https://jenkins.openbmc.org/job/ci-openbmc/lastSuccessfulBuild/distro=ubuntu,label=docker-builder
|
|
|
|
|
|
|
|
or directly from the OpenBMC GitHub release repository :
|
|
|
|
|
|
|
|
https://github.com/openbmc/openbmc/releases
|
2020-06-02 15:50:50 +02:00
|
|
|
|
|
|
|
The image should be attached as an MTD drive. Run :
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
|
|
|
$ qemu-system-arm -M romulus-bmc -nic user \
|
2021-03-09 12:01:28 +01:00
|
|
|
-drive file=obmc-phosphor-image-romulus.static.mtd,format=raw,if=mtd -nographic
|
2020-09-18 09:04:36 +02:00
|
|
|
|
|
|
|
Options specific to Aspeed machines are :
|
|
|
|
|
|
|
|
* ``execute-in-place`` which emulates the boot from the CE0 flash
|
|
|
|
device by using the FMC controller to load the instructions, and
|
|
|
|
not simply from RAM. This takes a little longer.
|
|
|
|
|
|
|
|
* ``fmc-model`` to change the FMC Flash model. FW needs support for
|
|
|
|
the chip model to boot.
|
|
|
|
|
|
|
|
* ``spi-model`` to change the SPI Flash model.
|
|
|
|
|
|
|
|
For instance, to start the ``ast2500-evb`` machine with a different
|
|
|
|
FMC chip and a bigger (64M) SPI chip, use :
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
|
|
|
-M ast2500-evb,fmc-model=mx25l25635e,spi-model=mx66u51235f
|