1e943c586a
The PWM module is part of NPCM7XX module. Each NPCM7XX module has two identical PWM modules. Each module contains 4 PWM entries. Each PWM has two outputs: frequency and duty_cycle. Both are computed using inputs from software side. This module does not model detail pulse signals since it is expensive. It also does not model interrupts and watchdogs that are dependant on the detail models. The interfaces for these are left in the module so that anyone in need for these functionalities can implement on their own. The user can read the duty cycle and frequency using qom-get command. Reviewed-by: Havard Skinnemoen <hskinnemoen@google.com> Reviewed-by: Tyrone Ting <kfting@nuvoton.com> Signed-off-by: Hao Wu <wuhaotsh@google.com> Message-id: 20210108190945.949196-5-wuhaotsh@google.com Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
93 lines
2.9 KiB
ReStructuredText
93 lines
2.9 KiB
ReStructuredText
Nuvoton iBMC boards (``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-gsj`` Quanta GSJ 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)
|
|
|
|
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 controllers (GMAC and EMC)
|
|
* USB device (USBD)
|
|
* SMBus controller (SMBF)
|
|
* Peripheral SPI controller (PSPI)
|
|
* SD/MMC host
|
|
* PECI interface
|
|
* Tachometer
|
|
* 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 OpenPOWER jenkins :
|
|
|
|
https://openpower.xyz/
|
|
|
|
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``.
|