qemu/hw/arm
Havard Skinnemoen 2d8f048c25 hw/arm: Add NPCM730 and NPCM750 SoC models
The Nuvoton NPCM7xx SoC family are used to implement Baseboard
Management Controllers in servers. While the family includes four SoCs,
this patch implements limited support for two of them: NPCM730 (targeted
for Data Center applications) and NPCM750 (targeted for Enterprise
applications).

This patch includes little more than the bare minimum needed to boot a
Linux kernel built with NPCM7xx support in direct-kernel mode:

  - Two Cortex-A9 CPU cores with built-in periperhals.
  - Global Configuration Registers.
  - Clock Management.
  - 3 Timer Modules with 5 timers each.
  - 4 serial ports.

The chips themselves have a lot more features, some of which will be
added to the model at a later stage.

Reviewed-by: Tyrone Ting <kfting@nuvoton.com>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Alexander Bulekov <alxndr@bu.edu>
Signed-off-by: Havard Skinnemoen <hskinnemoen@google.com>
Message-id: 20200911052101.2602693-5-hskinnemoen@google.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2020-09-14 14:24:58 +01:00
..
allwinner-a10.c hw/sd/allwinner-sdhost: Use AddressSpace for DMA transfers 2020-08-28 10:02:45 +01:00
allwinner-h3.c target-arm queue: 2020-08-28 15:14:40 +01:00
armsse.c target-arm queue: 2020-08-28 15:14:40 +01:00
armv7m.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
aspeed_ast2600.c aspeed_soc: Rename memmap/irqmap enum constants 2020-08-27 14:04:54 -04:00
aspeed_soc.c aspeed_soc: Rename memmap/irqmap enum constants 2020-08-27 14:04:54 -04:00
aspeed.c hw/arm/aspeed: Add board model for Supermicro X11 BMC 2020-09-01 14:21:50 +02:00
bcm2835_peripherals.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
bcm2836.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
boot.c hw/arm/boot: Fix MTE for EL3 direct kernel boot 2020-07-27 16:12:10 +01:00
collie.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
cubieboard.c qom: Use returned bool to check for failure, Coccinelle part 2020-07-10 15:18:08 +02:00
digic_boards.c qdev: Use returned bool to check for qdev_realize() etc. failure 2020-07-10 15:01:06 +02:00
digic.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
exynos4_boards.c sysbus: Convert qdev_set_parent_bus() use with Coccinelle, part 1 2020-06-15 22:06:04 +02:00
exynos4210.c qom: Put name parameter before value / visitor parameter 2020-07-10 15:18:08 +02:00
fsl-imx6.c Add the ability to change the FEC PHY MDIO device number on i.MX6 processor 2020-07-13 14:36:08 +01:00
fsl-imx6ul.c qom: Put name parameter before value / visitor parameter 2020-07-10 15:18:08 +02:00
fsl-imx7.c Add the ability to change the FEC PHY MDIO devices numbers on i.MX7 processor 2020-07-13 14:36:08 +01:00
fsl-imx25.c Add the ability to change the FEC PHY MDIO device number on i.MX25 processor 2020-07-13 14:36:07 +01:00
fsl-imx31.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
gumstix.c hw/arm/gumstix: Simplify since the machines are little-endian only 2020-03-05 16:09:14 +00:00
highbank.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
imx25_pdk.c qdev: Make qdev_prop_set_drive() match the other helpers 2020-06-23 16:07:07 +02:00
integratorcp.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
Kconfig hw/arm: Add NPCM730 and NPCM750 SoC models 2020-09-14 14:24:58 +01:00
kzm.c qdev: Convert bus-less devices to qdev_realize() with Coccinelle 2020-06-15 22:06:04 +02:00
mainstone.c hw/arm: Use memory_region_init_rom() with read-only regions 2020-03-17 15:18:46 +01:00
mcimx6ul-evk.c qom: Put name parameter before value / visitor parameter 2020-07-10 15:18:08 +02:00
mcimx7d-sabre.c qdev: Make qdev_prop_set_drive() match the other helpers 2020-06-23 16:07:07 +02:00
meson.build hw/arm: Add NPCM730 and NPCM750 SoC models 2020-09-14 14:24:58 +01:00
microbit.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
mps2-tz.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
mps2.c hw/arm/mps2: New board model mps2-an500 2020-09-14 14:23:19 +01:00
msf2-soc.c msf2-soc, stellaris: Don't wire up SYSRESETREQ 2020-08-03 17:55:03 +01:00
msf2-som.c qdev: Make qdev_prop_set_drive() match the other helpers 2020-06-23 16:07:07 +02:00
musca.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
musicpal.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
netduino2.c hw/arm/netduino2, netduinoplus2: Set system_clock_scale 2020-08-03 17:55:03 +01:00
netduinoplus2.c hw/arm/netduino2, netduinoplus2: Set system_clock_scale 2020-08-03 17:55:03 +01:00
npcm7xx.c hw/arm: Add NPCM730 and NPCM750 SoC models 2020-09-14 14:24:58 +01:00
nrf51_soc.c hw/arm/nrf51_soc: Set system_clock_scale 2020-08-03 17:55:31 +01:00
nseries.c hw/i2c: Rename i2c_create_slave() as i2c_slave_create_simple() 2020-07-16 12:30:54 -05:00
omap1.c hw/arm/omap1:Remove redundant statement in omap_clkdsp_read() 2020-09-01 11:53:44 +02:00
omap2.c sysbus: Convert to sysbus_realize() etc. with Coccinelle 2020-06-15 22:05:28 +02:00
omap_sx1.c hw/arm: Use memory_region_init_rom() with read-only regions 2020-03-17 15:18:46 +01:00
orangepi.c allwinner-h3: Rename memmap enum constants 2020-08-27 14:04:54 -04:00
palm.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
pxa2xx_gpio.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
pxa2xx_pic.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
pxa2xx.c trivial patches pull request 20200911 2020-09-12 14:23:15 +01:00
raspi.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
realview.c hw/sd/pl181: Do not create SD card within the SD host controller 2020-08-21 16:22:43 +02:00
sabrelite.c qdev: Make qdev_prop_set_drive() match the other helpers 2020-06-23 16:07:07 +02:00
sbsa-ref.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
smmu-common.c hw/arm/smmuv3: Support HAD and advertise SMMUv3.1 support 2020-08-24 10:02:06 +01:00
smmu-internal.h hw/arm/smmu-common: Manage IOTLB block entries 2020-08-24 10:02:06 +01:00
smmuv3-internal.h hw/arm/smmuv3: Advertise SMMUv3.2 range invalidation 2020-08-24 10:02:06 +01:00
smmuv3.c hw/arm/smmuv3: Advertise SMMUv3.2 range invalidation 2020-08-24 10:02:06 +01:00
spitz.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
stellaris.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
stm32f205_soc.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
stm32f405_soc.c error: Eliminate error_propagate() with Coccinelle, part 1 2020-07-10 15:18:08 +02:00
strongarm.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
strongarm.h hw/arm/collie: Create the RAM in the board 2019-10-22 17:44:01 +01:00
sysbus-fdt.c hw/arm/virt: vTPM support 2020-03-05 12:18:16 -05:00
tosa.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
trace-events hw/arm/smmuv3: Support HAD and advertise SMMUv3.1 support 2020-08-24 10:02:06 +01:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00
versatilepb.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
vexpress.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
virt-acpi-build.c hw/arm/virt-acpi-build:Remove dead assignment in build_madt() 2020-09-01 11:52:25 +02:00
virt.c hw: add compat machines for 5.2 2020-08-19 10:45:48 -04:00
xilinx_zynq.c This PR includes multiple fixes and features for RISC-V: 2020-09-13 20:29:35 +01:00
xlnx-versal-virt.c hw/arm: versal-virt: Correct the tx/rx GEM clocks 2020-09-14 14:24:15 +01:00
xlnx-versal.c hw/arm: xlnx: Set all boards' GEM 'phy-addr' property value to 23 2020-09-09 15:54:18 -07:00
xlnx-zcu102.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00
xlnx-zynqmp.c hw/arm: xlnx: Set all boards' GEM 'phy-addr' property value to 23 2020-09-09 15:54:18 -07:00
z2.c Use DECLARE_*CHECKER* macros 2020-09-09 09:27:09 -04:00