Signed-off-by: Hao Wu <wuhaotsh@google.com> Reviewed-by: Titus Rwantare <titusr@google.com> Reviewed-by: Philippe Mathieu-Daude <philmd@linaro.org> Message-id: 20230208235433.3989937-4-wuhaotsh@google.com Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
		
			
				
	
	
		
			97 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
Nuvoton iBMC boards (``*-bmc``, ``npcm750-evb``, ``quanta-gsj``)
 | 
						|
================================================================
 | 
						|
 | 
						|
The `Nuvoton iBMC`_ chips (NPCM7xx) are a family of ARM-based SoCs that are
 | 
						|
designed to be used as Baseboard Management Controllers (BMCs) in various
 | 
						|
servers. They all feature one or two ARM Cortex-A9 CPU cores, as well as an
 | 
						|
assortment of peripherals targeted for either Enterprise or Data Center /
 | 
						|
Hyperscale applications. The former is a superset of the latter, so NPCM750 has
 | 
						|
all the peripherals of NPCM730 and more.
 | 
						|
 | 
						|
.. _Nuvoton iBMC: https://www.nuvoton.com/products/cloud-computing/ibmc/
 | 
						|
 | 
						|
The NPCM750 SoC has two Cortex-A9 cores and is targeted for the Enterprise
 | 
						|
segment. The following machines are based on this chip :
 | 
						|
 | 
						|
- ``npcm750-evb``       Nuvoton NPCM750 Evaluation board
 | 
						|
 | 
						|
The NPCM730 SoC has two Cortex-A9 cores and is targeted for Data Center and
 | 
						|
Hyperscale applications. The following machines are based on this chip :
 | 
						|
 | 
						|
- ``quanta-gbs-bmc``    Quanta GBS server BMC
 | 
						|
- ``quanta-gsj``        Quanta GSJ server BMC
 | 
						|
- ``kudo-bmc``          Fii USA Kudo server BMC
 | 
						|
- ``mori-bmc``          Fii USA Mori server BMC
 | 
						|
 | 
						|
There are also two more SoCs, NPCM710 and NPCM705, which are single-core
 | 
						|
variants of NPCM750 and NPCM730, respectively. These are currently not
 | 
						|
supported by QEMU.
 | 
						|
 | 
						|
Supported devices
 | 
						|
-----------------
 | 
						|
 | 
						|
 * SMP (Dual Core Cortex-A9)
 | 
						|
 * Cortex-A9MPCore built-in peripherals: SCU, GIC, Global Timer, Private Timer
 | 
						|
   and Watchdog.
 | 
						|
 * SRAM, ROM and DRAM mappings
 | 
						|
 * System Global Control Registers (GCR)
 | 
						|
 * Clock and reset controller (CLK)
 | 
						|
 * Timer controller (TIM)
 | 
						|
 * Serial ports (16550-based)
 | 
						|
 * DDR4 memory controller (dummy interface indicating memory training is done)
 | 
						|
 * OTP controllers (no protection features)
 | 
						|
 * Flash Interface Unit (FIU; no protection features)
 | 
						|
 * Random Number Generator (RNG)
 | 
						|
 * USB host (USBH)
 | 
						|
 * GPIO controller
 | 
						|
 * Analog to Digital Converter (ADC)
 | 
						|
 * Pulse Width Modulation (PWM)
 | 
						|
 * SMBus controller (SMBF)
 | 
						|
 * Ethernet controller (EMC)
 | 
						|
 * Tachometer
 | 
						|
 * Peripheral SPI controller (PSPI)
 | 
						|
 | 
						|
Missing devices
 | 
						|
---------------
 | 
						|
 | 
						|
 * LPC/eSPI host-to-BMC interface, including
 | 
						|
 | 
						|
   * Keyboard and mouse controller interface (KBCI)
 | 
						|
   * Keyboard Controller Style (KCS) channels
 | 
						|
   * BIOS POST code FIFO
 | 
						|
   * System Wake-up Control (SWC)
 | 
						|
   * Shared memory (SHM)
 | 
						|
   * eSPI slave interface
 | 
						|
 | 
						|
 * Ethernet controller (GMAC)
 | 
						|
 * USB device (USBD)
 | 
						|
 * SD/MMC host
 | 
						|
 * PECI interface
 | 
						|
 * PCI and PCIe root complex and bridges
 | 
						|
 * VDM and MCTP support
 | 
						|
 * Serial I/O expansion
 | 
						|
 * LPC/eSPI host
 | 
						|
 * Coprocessor
 | 
						|
 * Graphics
 | 
						|
 * Video capture
 | 
						|
 * Encoding compression engine
 | 
						|
 * Security features
 | 
						|
 | 
						|
Boot options
 | 
						|
------------
 | 
						|
 | 
						|
The Nuvoton machines can boot from an OpenBMC firmware image, or directly into
 | 
						|
a kernel using the ``-kernel`` option. OpenBMC images for ``quanta-gsj`` and
 | 
						|
possibly others can be downloaded from the OpenBMC jenkins :
 | 
						|
 | 
						|
   https://jenkins.openbmc.org/
 | 
						|
 | 
						|
The firmware image should be attached as an MTD drive. Example :
 | 
						|
 | 
						|
.. code-block:: bash
 | 
						|
 | 
						|
  $ qemu-system-arm -machine quanta-gsj -nographic \
 | 
						|
      -drive file=image-bmc,if=mtd,bus=0,unit=0,format=raw
 | 
						|
 | 
						|
The default root password for test images is usually ``0penBmc``.
 |