hw/misc: Add npcm7xx random number generator
[qemu.git] / docs / system / arm / aspeed.rst
1 Aspeed family boards (``*-bmc``, ``ast2500-evb``, ``ast2600-evb``)
2 ==================================================================
3
4 The QEMU Aspeed machines model BMCs of various OpenPOWER systems and
5 Aspeed evaluation boards. They are based on different releases of the
6 Aspeed SoC : the AST2400 integrating an ARM926EJ-S CPU (400MHz), the
7 AST2500 with an ARM1176JZS CPU (800MHz) and more recently the AST2600
8 with dual cores ARM Cortex A7 CPUs (1.2GHz).
9
10 The SoC comes with RAM, Gigabit ethernet, USB, SD/MMC, USB, SPI, I2C,
11 etc.
12
13 AST2400 SoC based machines :
14
15 - ``palmetto-bmc``         OpenPOWER Palmetto POWER8 BMC
16
17 AST2500 SoC based machines :
18
19 - ``ast2500-evb``          Aspeed AST2500 Evaluation board
20 - ``romulus-bmc``          OpenPOWER Romulus POWER9 BMC
21 - ``witherspoon-bmc``      OpenPOWER Witherspoon POWER9 BMC
22 - ``sonorapass-bmc``       OCP SonoraPass BMC
23 - ``swift-bmc``            OpenPOWER Swift BMC POWER9
24
25 AST2600 SoC based machines :
26
27 - ``ast2600-evb``          Aspeed AST2600 Evaluation board (Cortex A7)
28 - ``tacoma-bmc``           OpenPOWER Witherspoon POWER9 AST2600 BMC
29
30 Supported devices
31 -----------------
32
33  * SMP (for the AST2600 Cortex-A7)
34  * Interrupt Controller (VIC)
35  * Timer Controller
36  * RTC Controller
37  * I2C Controller
38  * System Control Unit (SCU)
39  * SRAM mapping
40  * X-DMA Controller (basic interface)
41  * Static Memory Controller (SMC or FMC) - Only SPI Flash support
42  * SPI Memory Controller
43  * USB 2.0 Controller
44  * SD/MMC storage controllers
45  * SDRAM controller (dummy interface for basic settings and training)
46  * Watchdog Controller
47  * GPIO Controller (Master only)
48  * UART
49  * Ethernet controllers
50
51
52 Missing devices
53 ---------------
54
55  * Coprocessor support
56  * ADC (out of tree implementation)
57  * PWM and Fan Controller
58  * LPC Bus Controller
59  * Slave GPIO Controller
60  * Super I/O Controller
61  * Hash/Crypto Engine
62  * PCI-Express 1 Controller
63  * Graphic Display Controller
64  * PECI Controller
65  * MCTP Controller
66  * Mailbox Controller
67  * Virtual UART
68  * eSPI Controller
69  * I3C Controller
70
71 Boot options
72 ------------
73
74 The Aspeed machines can be started using the -kernel option to load a
75 Linux kernel or from a firmware image which can be downloaded from the
76 OpenPOWER jenkins :
77
78    https://openpower.xyz/
79
80 The image should be attached as an MTD drive. Run :
81
82 .. code-block:: bash
83
84   $ qemu-system-arm -M romulus-bmc -nic user \
85         -drive file=flash-romulus,format=raw,if=mtd -nographic
86
87 Options specific to Aspeed machines are :
88
89  * ``execute-in-place`` which emulates the boot from the CE0 flash
90    device by using the FMC controller to load the instructions, and
91    not simply from RAM. This takes a little longer.
92
93  * ``fmc-model`` to change the FMC Flash model. FW needs support for
94    the chip model to boot.
95
96  * ``spi-model`` to change the SPI Flash model.
97
98 For instance, to start the ``ast2500-evb`` machine with a different
99 FMC chip and a bigger (64M) SPI chip, use :
100
101 .. code-block:: bash
102
103   -M ast2500-evb,fmc-model=mx25l25635e,spi-model=mx66u51235f