aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2019-05-13 16:52:56 +0100
committerPeter Maydell <peter.maydell@linaro.org>2019-05-13 16:52:56 +0100
commite24f44dbeab8e54c72bdaedbd35453fb2a6c38da (patch)
tree4795c20d22575c28549ae24e9c8efe47ce08223e /hw
parent01807c8b0e9f5da6981c2e62a3c1d8f661fb178e (diff)
parent704d9892561d3b7ac4728296240a1b3ccfa2045a (diff)
downloadqemu-e24f44dbeab8e54c72bdaedbd35453fb2a6c38da.zip
qemu-e24f44dbeab8e54c72bdaedbd35453fb2a6c38da.tar.gz
qemu-e24f44dbeab8e54c72bdaedbd35453fb2a6c38da.tar.bz2
Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2019-05-13' into staging
Kconfig settings for the Arm machines # gpg: Signature made Mon 13 May 2019 09:19:43 BST # gpg: using RSA key 2ED9D774FE702DB5 # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full] # gpg: aka "Thomas Huth <thuth@redhat.com>" [full] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] # Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5 * remotes/huth-gitlab/tags/pull-request-2019-05-13: (29 commits) hw/arm: Remove hard-enablement of the remaining PCI devices hw/arm: Express dependencies of the musca machines with Kconfig hw/arm: Express dependencies of the xlnx-versal-virt machine with Kconfig hw/arm: Express dependencies of the ZynqMP zcu102 machine with Kconfig hw/arm: Express dependencies of the microbit / nrf51 machine with Kconfig hw/arm: Express dependencies of the remaining IMX boards with Kconfig hw/arm: Express dependencies of the MSF2 / EMCRAFT_SF2 machine with Kconfig hw/arm: Express dependencies of sabrelite with Kconfig hw/arm: Express dependencies of canon-a1100 with Kconfig hw/arm: Express dependencies of the raspi machines with Kconfig hw/arm: Express dependencies of the MPS2 boards with Kconfig hw/arm: Express dependencies of allwinner / cubieboard with Kconfig hw/arm: Express dependencies of netduino / stm32f2xx with Kconfig hw/arm: Express dependencies of the virt machine with Kconfig hw/arm: Express dependencies of the aspeed boards with Kconfig hw/arm: Express dependencies of collie with Kconfig hw/arm: Express dependencies of xilinx-zynq with Kconfig hw/arm: Express dependencies of the PXA2xx machines with Kconfig hw/arm: Express dependencies of realview, versatile and vexpress with Kconfig hw/arm: Express dependencies of stellaris with Kconfig ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r--hw/arm/Kconfig317
-rw-r--r--hw/arm/Makefile.objs25
-rw-r--r--hw/display/Kconfig3
-rw-r--r--hw/i2c/Kconfig2
-rw-r--r--hw/i386/Kconfig2
-rw-r--r--hw/ide/Kconfig6
-rw-r--r--hw/ide/Makefile.objs2
-rw-r--r--hw/misc/Kconfig2
-rw-r--r--hw/pci/pci-stub.c11
9 files changed, 355 insertions, 15 deletions
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index d298fbd..af8cffd 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -1,124 +1,435 @@
config ARM_VIRT
bool
+ imply PCI_DEVICES
+ imply TEST_DEVICES
+ imply VFIO_AMD_XGBE
imply VFIO_PLATFORM
+ imply VFIO_XGMAC
+ select A15MPCORE
+ select ACPI
+ select ARM_SMMUV3
+ select GPIO_KEY
+ select FW_CFG_DMA
+ select PCI_EXPRESS
+ select PCI_EXPRESS_GENERIC_BRIDGE
+ select PFLASH_CFI01
+ select PL011 # UART
+ select PL031 # RTC
+ select PL061 # GPIO
+ select PLATFORM_BUS
+ select SMBIOS
+ select VIRTIO_MMIO
+
+config CHEETAH
+ bool
+ select OMAP
+ select TSC210X
+
+config CUBIEBOARD
+ bool
+ select ALLWINNER_A10
config DIGIC
bool
select PTIMER
+ select PFLASH_CFI02
config EXYNOS4
bool
+ select A9MPCORE
+ select I2C
+ select LAN9118
+ select PL310 # cache controller
select PTIMER
+ select SDHCI
+ select USB_EHCI_SYSBUS
config HIGHBANK
bool
+ select A9MPCORE
+ select A15MPCORE
+ select AHCI
+ select ARM_TIMER # sp804
+ select ARM_V7M
+ select PL011 # UART
+ select PL022 # Serial port
+ select PL031 # RTC
+ select PL061 # GPIO
+ select PL310 # cache controller
+ select XGMAC # ethernet
config INTEGRATOR
bool
+ select ARM_TIMER
+ select INTEGRATOR_DEBUG
+ select PL011 # UART
+ select PL031 # RTC
+ select PL050 # keyboard/mouse
+ select PL110 # pl111 LCD controller
+ select PL181 # display
+ select SMC91C111
config MAINSTONE
bool
+ select PXA2XX
+ select PFLASH_CFI01
+ select SMC91C111
+
+config MUSCA
+ bool
+ select ARMSSE
+ select PL011
+ select PL031
config MUSICPAL
bool
+ select BITBANG_I2C
+ select MARVELL_88W8618
select PTIMER
+ select PFLASH_CFI02
+ select SERIAL
+ select WM8750
config NETDUINO2
bool
+ select STM32F205_SOC
config NSERIES
bool
+ select OMAP
+ select TMP105 # tempature sensor
+ select BLIZZARD # LCD/TV controller
+ select ONENAND
+ select TSC210X # touchscreen/sensors/audio
+ select TSC2005 # touchscreen/sensors/keypad
+ select LM832X # GPIO keyboard chip
+ select TWL92230 # energy-management
+ select TUSB6010
config OMAP
bool
+ select FRAMEBUFFER
+ select I2C
+ select ECC
+ select NAND
+ select PFLASH_CFI01
+ select SD
+ select SERIAL
config PXA2XX
bool
+ select FRAMEBUFFER
+ select I2C
+ select SERIAL
+ select SD
+ select SSI
+ select USB_OHCI
+
+config GUMSTIX
+ bool
+ select PFLASH_CFI01
+ select SMC91C111
+ select PXA2XX
+
+config TOSA
+ bool
+ select ZAURUS # scoop
+ select MICRODRIVE
+ select PXA2XX
+
+config SPITZ
+ bool
+ select ADS7846 # display
+ select MAX111X # A/D converter
+ select WM8750 # audio codec
+ select MAX7310 # GPIO expander
+ select ZAURUS # scoop
+ select NAND # memory
+ select ECC # Error-correcting for NAND
+ select MICRODRIVE
+ select PXA2XX
+
+config Z2
+ bool
+ select PFLASH_CFI01
+ select WM8750
+ select PL011 # UART
+ select PXA2XX
config REALVIEW
bool
+ imply PCI_DEVICES
+ imply PCI_TESTDEV
+ select SMC91C111
+ select LAN9118
+ select A9MPCORE
+ select A15MPCORE
+ select ARM11MPCORE
+ select ARM_TIMER
+ select VERSATILE_PCI
+ select WM8750 # audio codec
+ select LSI_SCSI_PCI
+ select PCI
+ select PL011 # UART
+ select PL031 # RTC
+ select PL041 # audio codec
+ select PL050 # keyboard/mouse
+ select PL061 # GPIO
+ select PL080 # DMA controller
+ select PL110
+ select PL181 # display
+ select PL310 # cache controller
+ select VERSATILE_I2C
+ select DS1338 # I2C RTC+NVRAM
+ select USB_OHCI
+
+config SABRELITE
+ bool
+ select FSL_IMX6
+ select SSI_M25P80
config STELLARIS
bool
+ select ARM_V7M
+ select CMSDK_APB_WATCHDOG
+ select I2C
+ select PL011 # UART
+ select PL022 # Serial port
+ select PL061 # GPIO
+ select SSD0303 # OLED display
+ select SSD0323 # OLED display
+ select SSI_SD
+ select STELLARIS_INPUT
+ select STELLARIS_ENET # ethernet
config STRONGARM
bool
+ select PXA2XX
+
+config COLLIE
+ bool
+ select PFLASH_CFI01
+ select ZAURUS # scoop
+ select STRONGARM
+
+config SX1
+ bool
+ select OMAP
config VERSATILE
bool
+ select ARM_TIMER # sp804
+ select PFLASH_CFI01
+ select LSI_SCSI_PCI
+ select PL050 # keyboard/mouse
+ select PL080 # DMA controller
+ select PL190 # Vector PIC
+ select REALVIEW
+ select USB_OHCI
+
+config VEXPRESS
+ bool
+ select A9MPCORE
+ select A15MPCORE
+ select ARM_MPTIMER
+ select ARM_TIMER # sp804
+ select LAN9118
+ select PFLASH_CFI01
+ select PL011 # UART
+ select PL041 # audio codec
+ select PL181 # display
+ select REALVIEW
+ select SII9022
+ select VIRTIO_MMIO
config ZYNQ
bool
+ select A9MPCORE
+ select CADENCE # UART
+ select PFLASH_CFI02
+ select PL330
+ select SDHCI
+ select SSI_M25P80
+ select USB_EHCI_SYSBUS
+ select XILINX # UART
+ select XILINX_AXI
+ select XILINX_SPI
+ select XILINX_SPIPS
+ select ZYNQ_DEVCFG
config ARM_V7M
bool
config ALLWINNER_A10
bool
+ select AHCI
+ select ALLWINNER_A10_PIT
+ select ALLWINNER_A10_PIC
+ select ALLWINNER_EMAC
+ select SERIAL
config RASPI
bool
+ select FRAMEBUFFER
+ select PL011 # UART
+ select SDHCI
config STM32F205_SOC
bool
+ select ARM_V7M
+ select STM32F2XX_TIMER
+ select STM32F2XX_USART
+ select STM32F2XX_SYSCFG
+ select STM32F2XX_ADC
+ select STM32F2XX_SPI
config XLNX_ZYNQMP_ARM
bool
+ select AHCI
+ select ARM_GIC
+ select CADENCE
+ select DDC
+ select DPCD
+ select SDHCI
+ select SSI
+ select SSI_M25P80
+ select XILINX_AXI
+ select XILINX_SPIPS
+ select XLNX_ZYNQMP
config XLNX_VERSAL
bool
+ select ARM_GIC
+ select PL011
+ select CADENCE
+ select VIRTIO_MMIO
config FSL_IMX25
bool
+ select IMX
+ select IMX_FEC
+ select IMX_I2C
+ select DS1338
config FSL_IMX31
bool
+ select SERIAL
+ select IMX
+ select IMX_I2C
+ select LAN9118
config FSL_IMX6
bool
+ select A9MPCORE
+ select IMX
+ select IMX_FEC
+ select IMX_I2C
+ select SDHCI
config ASPEED_SOC
bool
+ select DS1338
+ select FTGMAC100
+ select I2C
+ select PCA9552
+ select SERIAL
+ select SMBUS_EEPROM
+ select SSI
+ select SSI_M25P80
+ select TMP105
+ select TMP421
config MPS2
bool
+ select ARMSSE
+ select LAN9118
+ select MPS2_FPGAIO
+ select MPS2_SCC
+ select PL022 # Serial port
+ select PL080 # DMA controller
config FSL_IMX7
bool
+ imply PCI_DEVICES
+ imply TEST_DEVICES
+ select A15MPCORE
+ select PCI
+ select IMX
+ select IMX_FEC
+ select IMX_I2C
+ select PCI_EXPRESS_DESIGNWARE
+ select SDHCI
config ARM_SMMUV3
bool
config FSL_IMX6UL
bool
+ select A15MPCORE
+ select IMX
+ select IMX_FEC
+ select IMX_I2C
+ select SDHCI
+
+config MICROBIT
+ bool
+ select NRF51_SOC
config NRF51_SOC
bool
+ select I2C
+ select ARM_V7M
+
+config EMCRAFT_SF2
+ bool
+ select MSF2
+ select SSI_M25P80
config MSF2
bool
+ select ARM_V7M
select PTIMER
+ select SERIAL
+ select SSI
config ZAURUS
bool
+ select NAND
+ select ECC
config A9MPCORE
bool
+ select A9_GTIMER
+ select A9SCU # snoop control unit
+ select ARM_GIC
+ select ARM_MPTIMER
config A15MPCORE
bool
+ select ARM_GIC
config ARM11MPCORE
bool
+ select ARM11SCU
config ARMSSE
bool
+ select ARM_V7M
+ select ARMSSE_CPUID
+ select ARMSSE_MHU
+ select CMSDK_APB_TIMER
+ select CMSDK_APB_DUALTIMER
+ select CMSDK_APB_UART
+ select CMSDK_APB_WATCHDOG
+ select IOTKIT_SECCTL
+ select IOTKIT_SYSCTL
+ select IOTKIT_SYSINFO
+ select TZ_MPC
+ select TZ_MSC
+ select TZ_PPC
config ARMSSE_CPUID
bool
config ARMSSE_MHU
bool
-
-config MUSCA
- bool
diff --git a/hw/arm/Makefile.objs b/hw/arm/Makefile.objs
index fa57c7c..994e67d 100644
--- a/hw/arm/Makefile.objs
+++ b/hw/arm/Makefile.objs
@@ -1,21 +1,30 @@
-obj-y += boot.o sysbus-fdt.o
+obj-y += boot.o
+obj-$(CONFIG_PLATFORM_BUS) += sysbus-fdt.o
obj-$(CONFIG_ARM_VIRT) += virt.o
obj-$(CONFIG_ACPI) += virt-acpi-build.o
obj-$(CONFIG_DIGIC) += digic_boards.o
obj-$(CONFIG_EXYNOS4) += exynos4_boards.o
+obj-$(CONFIG_EMCRAFT_SF2) += msf2-som.o
obj-$(CONFIG_HIGHBANK) += highbank.o
obj-$(CONFIG_INTEGRATOR) += integratorcp.o
obj-$(CONFIG_MAINSTONE) += mainstone.o
+obj-$(CONFIG_MICROBIT) += microbit.o
obj-$(CONFIG_MUSICPAL) += musicpal.o
obj-$(CONFIG_NETDUINO2) += netduino2.o
obj-$(CONFIG_NSERIES) += nseries.o
-obj-$(CONFIG_OMAP) += omap_sx1.o palm.o
-obj-$(CONFIG_PXA2XX) += gumstix.o spitz.o tosa.o z2.o
+obj-$(CONFIG_SX1) += omap_sx1.o
+obj-$(CONFIG_CHEETAH) += palm.o
+obj-$(CONFIG_GUMSTIX) += gumstix.o
+obj-$(CONFIG_SPITZ) += spitz.o
+obj-$(CONFIG_TOSA) += tosa.o
+obj-$(CONFIG_Z2) += z2.o
obj-$(CONFIG_REALVIEW) += realview.o
obj-$(CONFIG_STELLARIS) += stellaris.o
-obj-$(CONFIG_STRONGARM) += collie.o
-obj-$(CONFIG_VERSATILE) += vexpress.o versatilepb.o
+obj-$(CONFIG_COLLIE) += collie.o
+obj-$(CONFIG_VERSATILE) += versatilepb.o
+obj-$(CONFIG_VEXPRESS) += vexpress.o
obj-$(CONFIG_ZYNQ) += xilinx_zynq.o
+obj-$(CONFIG_SABRELITE) += sabrelite.o
obj-$(CONFIG_ARM_V7M) += armv7m.o
obj-$(CONFIG_EXYNOS4) += exynos4210.o
@@ -30,14 +39,14 @@ obj-$(CONFIG_XLNX_ZYNQMP_ARM) += xlnx-zynqmp.o xlnx-zcu102.o
obj-$(CONFIG_XLNX_VERSAL) += xlnx-versal.o xlnx-versal-virt.o
obj-$(CONFIG_FSL_IMX25) += fsl-imx25.o imx25_pdk.o
obj-$(CONFIG_FSL_IMX31) += fsl-imx31.o kzm.o
-obj-$(CONFIG_FSL_IMX6) += fsl-imx6.o sabrelite.o
+obj-$(CONFIG_FSL_IMX6) += fsl-imx6.o
obj-$(CONFIG_ASPEED_SOC) += aspeed_soc.o aspeed.o
obj-$(CONFIG_MPS2) += mps2.o
obj-$(CONFIG_MPS2) += mps2-tz.o
-obj-$(CONFIG_MSF2) += msf2-soc.o msf2-som.o
+obj-$(CONFIG_MSF2) += msf2-soc.o
obj-$(CONFIG_MUSCA) += musca.o
obj-$(CONFIG_ARMSSE) += armsse.o
obj-$(CONFIG_FSL_IMX7) += fsl-imx7.o mcimx7d-sabre.o
obj-$(CONFIG_ARM_SMMUV3) += smmu-common.o smmuv3.o
obj-$(CONFIG_FSL_IMX6UL) += fsl-imx6ul.o mcimx6ul-evk.o
-obj-$(CONFIG_NRF51_SOC) += nrf51_soc.o microbit.o
+obj-$(CONFIG_NRF51_SOC) += nrf51_soc.o
diff --git a/hw/display/Kconfig b/hw/display/Kconfig
index c236cd2..dc1f113 100644
--- a/hw/display/Kconfig
+++ b/hw/display/Kconfig
@@ -26,10 +26,12 @@ config JAZZ_LED
config PL110
bool
+ select FRAMEBUFFER
config SII9022
bool
depends on I2C
+ select DDC
config SSD0303
bool
@@ -111,6 +113,7 @@ config VIRTIO_VGA
config DPCD
bool
+ select AUX
config ATI_VGA
bool
diff --git a/hw/i2c/Kconfig b/hw/i2c/Kconfig
index 78a2008..2bbd395 100644
--- a/hw/i2c/Kconfig
+++ b/hw/i2c/Kconfig
@@ -7,7 +7,7 @@ config SMBUS_EEPROM
config VERSATILE_I2C
bool
- select I2C
+ select BITBANG_I2C
config ACPI_SMBUS
bool
diff --git a/hw/i386/Kconfig b/hw/i386/Kconfig
index a6aed7c..9817888 100644
--- a/hw/i386/Kconfig
+++ b/hw/i386/Kconfig
@@ -80,7 +80,7 @@ config Q35
select PC_ACPI
select PCI_EXPRESS_Q35
select LPC_ICH9
- select AHCI
+ select AHCI_ICH9
select DIMM
select SMBIOS
select VMPORT
diff --git a/hw/ide/Kconfig b/hw/ide/Kconfig
index ab47b6a..5d9106b 100644
--- a/hw/ide/Kconfig
+++ b/hw/ide/Kconfig
@@ -44,9 +44,13 @@ config MICRODRIVE
config AHCI
bool
+ select IDE_QDEV
+
+config AHCI_ICH9
+ bool
default y if PCI_DEVICES
depends on PCI
- select IDE_QDEV
+ select AHCI
config IDE_SII3112
bool
diff --git a/hw/ide/Makefile.objs b/hw/ide/Makefile.objs
index a142add..faf04e0 100644
--- a/hw/ide/Makefile.objs
+++ b/hw/ide/Makefile.objs
@@ -9,6 +9,6 @@ common-obj-$(CONFIG_IDE_MMIO) += mmio.o
common-obj-$(CONFIG_IDE_VIA) += via.o
common-obj-$(CONFIG_MICRODRIVE) += microdrive.o
common-obj-$(CONFIG_AHCI) += ahci.o
-common-obj-$(CONFIG_AHCI) += ich.o
+common-obj-$(CONFIG_AHCI_ICH9) += ich.o
common-obj-$(CONFIG_ALLWINNER_A10) += ahci-allwinner.o
common-obj-$(CONFIG_IDE_SII3112) += sii3112.o
diff --git a/hw/misc/Kconfig b/hw/misc/Kconfig
index 5f67d0d..385e1b0 100644
--- a/hw/misc/Kconfig
+++ b/hw/misc/Kconfig
@@ -76,6 +76,8 @@ config ECCMEMCTL
config IMX
bool
select PTIMER
+ select SSI
+ select USB_EHCI_SYSBUS
config STM32F2XX_SYSCFG
bool
diff --git a/hw/pci/pci-stub.c b/hw/pci/pci-stub.c
index b941a0e..c04a5df 100644
--- a/hw/pci/pci-stub.c
+++ b/hw/pci/pci-stub.c
@@ -53,3 +53,14 @@ uint16_t pci_requester_id(PCIDevice *dev)
g_assert(false);
return 0;
}
+
+/* Required by ahci.c */
+bool msi_enabled(const PCIDevice *dev)
+{
+ return false;
+}
+
+void msi_notify(PCIDevice *dev, unsigned int vector)
+{
+ g_assert_not_reached();
+}