aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Huth <thuth@redhat.com>2019-02-07 20:05:05 +0100
committerThomas Huth <thuth@redhat.com>2019-05-13 09:36:31 +0200
commit79e93e24de83882fc743a56560e95d3df6e42cdc (patch)
tree334f160b3ebb21a5cd0c761682499877066ff4d5
parent782ef8cd7e121819481b6ca43770ca4bde9b19ac (diff)
hw/arm: Express dependencies of realview, versatile and vexpress with Kconfig
This patch is slightly based on earlier work by Ákos Kovács (i.e. his "hw/arm/Kconfig: Add ARM Kconfig" patch). Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> Signed-off-by: Thomas Huth <thuth@redhat.com>
-rw-r--r--default-configs/arm-softmmu.mak24
-rw-r--r--hw/arm/Kconfig48
-rw-r--r--hw/arm/Makefile.objs3
-rw-r--r--hw/display/Kconfig1
-rw-r--r--hw/i2c/Kconfig2
5 files changed, 57 insertions, 21 deletions
diff --git a/default-configs/arm-softmmu.mak b/default-configs/arm-softmmu.mak
index 3f82d635e4..df7d9421e0 100644
--- a/default-configs/arm-softmmu.mak
+++ b/default-configs/arm-softmmu.mak
@@ -3,9 +3,8 @@
# TODO: ARM_V7M is currently always required - make this more flexible!
CONFIG_ARM_V7M=y
-CONFIG_PCI=y
-CONFIG_PCI_DEVICES=y
-CONFIG_PCI_TESTDEV=y
+# CONFIG_PCI_DEVICES=n
+# CONFIG_TEST_DEVICES=n
CONFIG_EXYNOS4=y
CONFIG_HIGHBANK=y
@@ -17,6 +16,9 @@ CONFIG_CHEETAH=y
CONFIG_SX1=y
CONFIG_NSERIES=y
CONFIG_STELLARIS=y
+CONFIG_REALVIEW=y
+CONFIG_VERSATILE=y
+CONFIG_VEXPRESS=y
CONFIG_VGA=y
CONFIG_NAND=y
@@ -25,8 +27,6 @@ CONFIG_SERIAL=y
CONFIG_MAX7310=y
CONFIG_TMP421=y
CONFIG_PCA9552=y
-CONFIG_DDC=y
-CONFIG_SII9022=y
CONFIG_ADS7846=y
CONFIG_MAX111X=y
CONFIG_SSI_M25P80=y
@@ -38,13 +38,8 @@ CONFIG_MICRODRIVE=y
CONFIG_PLATFORM_BUS=y
CONFIG_VIRTIO_MMIO=y
-CONFIG_ARM11MPCORE=y
-
CONFIG_NETDUINO2=y
-CONFIG_PL041=y
-CONFIG_PL080=y
-CONFIG_PL190=y
CONFIG_PL330=y
CONFIG_CADENCE=y
CONFIG_PXA2XX=y
@@ -52,12 +47,10 @@ CONFIG_FRAMEBUFFER=y
CONFIG_XILINX_SPIPS=y
CONFIG_ZYNQ_DEVCFG=y
-CONFIG_ARM11SCU=y
CONFIG_DIGIC=y
CONFIG_MAINSTONE=y
CONFIG_MPS2=y
CONFIG_RASPI=y
-CONFIG_REALVIEW=y
CONFIG_ZAURUS=y
CONFIG_ZYNQ=y
CONFIG_STM32F2XX_TIMER=y
@@ -86,10 +79,6 @@ CONFIG_IOTKIT_SYSINFO=y
CONFIG_ARMSSE_CPUID=y
CONFIG_ARMSSE_MHU=y
-CONFIG_VERSATILE=y
-CONFIG_VERSATILE_PCI=y
-CONFIG_VERSATILE_I2C=y
-
CONFIG_PCI_EXPRESS=y
CONFIG_PCI_EXPRESS_GENERIC_BRIDGE=y
@@ -120,6 +109,3 @@ CONFIG_XILINX_AXI=y
CONFIG_PCI_EXPRESS_DESIGNWARE=y
CONFIG_STRONGARM=y
-
-# for realview and versatilepb
-CONFIG_LSI_SCSI_PCI=y
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index e5a8ae5ef9..f0e112e778 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -88,6 +88,30 @@ config 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 STELLARIS
bool
@@ -112,6 +136,29 @@ config SX1
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
@@ -184,6 +231,7 @@ config A15MPCORE
config ARM11MPCORE
bool
+ select ARM11SCU
config ARMSSE
bool
diff --git a/hw/arm/Makefile.objs b/hw/arm/Makefile.objs
index 8302b8df1d..bd0b45a799 100644
--- a/hw/arm/Makefile.objs
+++ b/hw/arm/Makefile.objs
@@ -15,7 +15,8 @@ obj-$(CONFIG_PXA2XX) += gumstix.o spitz.o tosa.o 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_VERSATILE) += versatilepb.o
+obj-$(CONFIG_VEXPRESS) += vexpress.o
obj-$(CONFIG_ZYNQ) += xilinx_zynq.o
obj-$(CONFIG_ARM_V7M) += armv7m.o
diff --git a/hw/display/Kconfig b/hw/display/Kconfig
index ac81eb4770..784d7a38ae 100644
--- a/hw/display/Kconfig
+++ b/hw/display/Kconfig
@@ -31,6 +31,7 @@ config PL110
config SII9022
bool
depends on I2C
+ select DDC
config SSD0303
bool
diff --git a/hw/i2c/Kconfig b/hw/i2c/Kconfig
index 78a2008e3a..2bbd395813 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