* [Qemu-devel] [PATCH v3 0/8] Kconfig switches
@ 2019-08-17 10:19 Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 1/8] hw/Kconfig: Move the generic XLNX_ZYNQMP to the root hw/Kconfig Thomas Huth
` (8 more replies)
0 siblings, 9 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
Here are some more Kconfig patches that clean up the switches of
existing devices and introduce proper config switches for some
other devices that were always enabled before.
v3:
- Added Philippe's Reviewed-bys
- The MUSCA and MPS2 switches now also select the "unimplemented" device
v2:
- Included Philippe's patches to avoid a conflict with XLNX_ZYNQMP
- Don't rely on indirect dependencies, always "select XYZ" if it is
adequate
- Added patch for the generic loader device
Philippe Mathieu-Daudé (3):
hw/Kconfig: Move the generic XLNX_ZYNQMP to the root hw/Kconfig
hw/intc: Only build the xlnx-iomod-intc device for the MicroBlaze PMU
hw/dma: Do not build the xlnx_dpdma device for the MicroBlaze machines
Thomas Huth (5):
hw/core: Add a config switch for the "register" device
hw/core: Add a config switch for the "or-irq" device
hw/core: Add a config switch for the "split-irq" device
hw/misc: Add a config switch for the "unimplemented" device
hw/core: Add a config switch for the generic loader device
hw/Kconfig | 4 ++++
hw/arm/Kconfig | 17 +++++++++++++++++
hw/core/Kconfig | 13 +++++++++++++
hw/core/Makefile.objs | 8 ++++----
hw/dma/Kconfig | 1 +
hw/dma/Makefile.objs | 1 -
hw/intc/Makefile.objs | 2 +-
hw/microblaze/Kconfig | 1 +
hw/misc/Kconfig | 3 +++
hw/misc/Makefile.objs | 2 +-
hw/pci-host/Kconfig | 3 ++-
hw/sparc64/Kconfig | 1 +
hw/timer/Kconfig | 3 ---
13 files changed, 48 insertions(+), 11 deletions(-)
--
2.18.1
^ permalink raw reply [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 1/8] hw/Kconfig: Move the generic XLNX_ZYNQMP to the root hw/Kconfig
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 2/8] hw/intc: Only build the xlnx-iomod-intc device for the MicroBlaze PMU Thomas Huth
` (7 subsequent siblings)
8 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
From: Philippe Mathieu-Daudé <philmd@redhat.com>
The XLNX_ZYNQMP config is used in multiple subdirectories
(timer, intc). Move it to the root hw/Kconfig.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190427141459.19728-2-philmd@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/Kconfig | 3 +++
hw/timer/Kconfig | 3 ---
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/hw/Kconfig b/hw/Kconfig
index 195f541e50..dbae1c0852 100644
--- a/hw/Kconfig
+++ b/hw/Kconfig
@@ -73,3 +73,6 @@ config XILINX
config XILINX_AXI
bool
select PTIMER # for hw/dma/xilinx_axidma.c
+
+config XLNX_ZYNQMP
+ bool
diff --git a/hw/timer/Kconfig b/hw/timer/Kconfig
index 51921eb63f..eefc95f35e 100644
--- a/hw/timer/Kconfig
+++ b/hw/timer/Kconfig
@@ -34,9 +34,6 @@ config TWL92230
bool
depends on I2C
-config XLNX_ZYNQMP
- bool
-
config ALTERA_TIMER
bool
select PTIMER
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 2/8] hw/intc: Only build the xlnx-iomod-intc device for the MicroBlaze PMU
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 1/8] hw/Kconfig: Move the generic XLNX_ZYNQMP to the root hw/Kconfig Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 3/8] hw/dma: Do not build the xlnx_dpdma device for the MicroBlaze machines Thomas Huth
` (6 subsequent siblings)
8 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
From: Philippe Mathieu-Daudé <philmd@redhat.com>
The Xilinx I/O Module Interrupt Controller is only used by the
MicroBlaze PMU, not by the AArch64 machine.
Move it from the generic ZynqMP object list to the PMU specific.
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190427141459.19728-3-philmd@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/intc/Makefile.objs | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hw/intc/Makefile.objs b/hw/intc/Makefile.objs
index 03019b9a03..f726d87532 100644
--- a/hw/intc/Makefile.objs
+++ b/hw/intc/Makefile.objs
@@ -3,7 +3,7 @@ common-obj-$(CONFIG_I8259) += i8259_common.o i8259.o
common-obj-$(CONFIG_PL190) += pl190.o
common-obj-$(CONFIG_PUV3) += puv3_intc.o
common-obj-$(CONFIG_XILINX) += xilinx_intc.o
-common-obj-$(CONFIG_XLNX_ZYNQMP) += xlnx-pmu-iomod-intc.o
+common-obj-$(CONFIG_XLNX_ZYNQMP_PMU) += xlnx-pmu-iomod-intc.o
common-obj-$(CONFIG_XLNX_ZYNQMP) += xlnx-zynqmp-ipi.o
common-obj-$(CONFIG_ETRAXFS) += etraxfs_pic.o
common-obj-$(CONFIG_IMX) += imx_avic.o imx_gpcv2.o
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 3/8] hw/dma: Do not build the xlnx_dpdma device for the MicroBlaze machines
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 1/8] hw/Kconfig: Move the generic XLNX_ZYNQMP to the root hw/Kconfig Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 2/8] hw/intc: Only build the xlnx-iomod-intc device for the MicroBlaze PMU Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device Thomas Huth
` (5 subsequent siblings)
8 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
From: Philippe Mathieu-Daudé <philmd@redhat.com>
The xlnx_dpdma device is only used by the ZynqMP AArch64 machine
(not the MicroBlaze PMU). Remove it from the ZynqMP generic objects.
(Note, this entry was duplicated for the AArch64).
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Message-Id: <20190427141459.19728-4-philmd@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/dma/Makefile.objs | 1 -
1 file changed, 1 deletion(-)
diff --git a/hw/dma/Makefile.objs b/hw/dma/Makefile.objs
index 8b39f9c600..b672e7a522 100644
--- a/hw/dma/Makefile.objs
+++ b/hw/dma/Makefile.objs
@@ -8,7 +8,6 @@ common-obj-$(CONFIG_XILINX_AXI) += xilinx_axidma.o
common-obj-$(CONFIG_ZYNQ_DEVCFG) += xlnx-zynq-devcfg.o
common-obj-$(CONFIG_ETRAXFS) += etraxfs_dma.o
common-obj-$(CONFIG_STP2000) += sparc32_dma.o
-obj-$(CONFIG_XLNX_ZYNQMP) += xlnx_dpdma.o
obj-$(CONFIG_XLNX_ZYNQMP_ARM) += xlnx_dpdma.o
common-obj-$(CONFIG_XLNX_ZYNQMP_ARM) += xlnx-zdma.o
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
` (2 preceding siblings ...)
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 3/8] hw/dma: Do not build the xlnx_dpdma device for the MicroBlaze machines Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-19 11:54 ` Philippe Mathieu-Daudé
2019-08-19 20:07 ` Alistair Francis
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 5/8] hw/core: Add a config switch for the "or-irq" device Thomas Huth
` (4 subsequent siblings)
8 siblings, 2 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
The "register" device is only used by certain machines. Let's add
a proper config switch for it so that it only gets compiled when we
really need it.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/Kconfig | 1 +
hw/core/Kconfig | 3 +++
hw/core/Makefile.objs | 2 +-
hw/dma/Kconfig | 1 +
4 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/hw/Kconfig b/hw/Kconfig
index dbae1c0852..b45db3c813 100644
--- a/hw/Kconfig
+++ b/hw/Kconfig
@@ -76,3 +76,4 @@ config XILINX_AXI
config XLNX_ZYNQMP
bool
+ select REGISTER
diff --git a/hw/core/Kconfig b/hw/core/Kconfig
index c2a1ae8122..d11920fcb3 100644
--- a/hw/core/Kconfig
+++ b/hw/core/Kconfig
@@ -9,3 +9,6 @@ config FITLOADER
config PLATFORM_BUS
bool
+
+config REGISTER
+ bool
diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index f8481d959f..d6cfb2a81b 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -17,7 +17,7 @@ common-obj-$(CONFIG_SOFTMMU) += machine.o
common-obj-$(CONFIG_SOFTMMU) += loader.o
common-obj-$(CONFIG_FITLOADER) += loader-fit.o
common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
-common-obj-$(CONFIG_SOFTMMU) += register.o
+common-obj-$(CONFIG_REGISTER) += register.o
common-obj-$(CONFIG_SOFTMMU) += or-irq.o
common-obj-$(CONFIG_SOFTMMU) += split-irq.o
common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
diff --git a/hw/dma/Kconfig b/hw/dma/Kconfig
index 751dec5426..5c61b67bc0 100644
--- a/hw/dma/Kconfig
+++ b/hw/dma/Kconfig
@@ -16,6 +16,7 @@ config I8257
config ZYNQ_DEVCFG
bool
+ select REGISTER
config STP2000
bool
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 5/8] hw/core: Add a config switch for the "or-irq" device
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
` (3 preceding siblings ...)
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 6/8] hw/core: Add a config switch for the "split-irq" device Thomas Huth
` (3 subsequent siblings)
8 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
The "or-irq" device is only used by certain machines. Let's add
a proper config switch for it so that it only gets compiled when we
really need it.
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/arm/Kconfig | 3 +++
hw/core/Kconfig | 3 +++
hw/core/Makefile.objs | 2 +-
hw/pci-host/Kconfig | 3 ++-
4 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index ab65ecd216..849195c3f6 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -292,6 +292,7 @@ config RASPI
config STM32F205_SOC
bool
select ARM_V7M
+ select OR_IRQ
select STM32F2XX_TIMER
select STM32F2XX_USART
select STM32F2XX_SYSCFG
@@ -360,6 +361,7 @@ config MPS2
select LAN9118
select MPS2_FPGAIO
select MPS2_SCC
+ select OR_IRQ
select PL022 # Serial port
select PL080 # DMA controller
@@ -439,6 +441,7 @@ config ARMSSE
select IOTKIT_SECCTL
select IOTKIT_SYSCTL
select IOTKIT_SYSINFO
+ select OR_IRQ
select TZ_MPC
select TZ_MSC
select TZ_PPC
diff --git a/hw/core/Kconfig b/hw/core/Kconfig
index d11920fcb3..984143456a 100644
--- a/hw/core/Kconfig
+++ b/hw/core/Kconfig
@@ -7,6 +7,9 @@ config PTIMER
config FITLOADER
bool
+config OR_IRQ
+ bool
+
config PLATFORM_BUS
bool
diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index d6cfb2a81b..ce337bd7c9 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -18,7 +18,7 @@ common-obj-$(CONFIG_SOFTMMU) += loader.o
common-obj-$(CONFIG_FITLOADER) += loader-fit.o
common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
common-obj-$(CONFIG_REGISTER) += register.o
-common-obj-$(CONFIG_SOFTMMU) += or-irq.o
+common-obj-$(CONFIG_OR_IRQ) += or-irq.o
common-obj-$(CONFIG_SOFTMMU) += split-irq.o
common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
common-obj-$(CONFIG_SOFTMMU) += generic-loader.o
diff --git a/hw/pci-host/Kconfig b/hw/pci-host/Kconfig
index 8c16d96b3f..1edc1a31d4 100644
--- a/hw/pci-host/Kconfig
+++ b/hw/pci-host/Kconfig
@@ -2,8 +2,9 @@ config PAM
bool
config PREP_PCI
- select PCI
bool
+ select PCI
+ select OR_IRQ
config GRACKLE_PCI
select PCI
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 6/8] hw/core: Add a config switch for the "split-irq" device
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
` (4 preceding siblings ...)
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 5/8] hw/core: Add a config switch for the "or-irq" device Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 7/8] hw/misc: Add a config switch for the "unimplemented" device Thomas Huth
` (2 subsequent siblings)
8 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
The "split-irq" device is currently only used by machines that use
CONFIG_ARMSSE. Let's add a proper CONFIG_SPLIT_IRQ switch for this
so that it only gets compiled when we really need it.
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/arm/Kconfig | 3 +++
hw/core/Kconfig | 3 +++
hw/core/Makefile.objs | 2 +-
3 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 849195c3f6..6e24c73b54 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -81,6 +81,7 @@ config MUSCA
select ARMSSE
select PL011
select PL031
+ select SPLIT_IRQ
config MUSICPAL
bool
@@ -364,6 +365,7 @@ config MPS2
select OR_IRQ
select PL022 # Serial port
select PL080 # DMA controller
+ select SPLIT_IRQ
config FSL_IMX7
bool
@@ -442,6 +444,7 @@ config ARMSSE
select IOTKIT_SYSCTL
select IOTKIT_SYSINFO
select OR_IRQ
+ select SPLIT_IRQ
select TZ_MPC
select TZ_MSC
select TZ_PPC
diff --git a/hw/core/Kconfig b/hw/core/Kconfig
index 984143456a..fffb3d62b2 100644
--- a/hw/core/Kconfig
+++ b/hw/core/Kconfig
@@ -15,3 +15,6 @@ config PLATFORM_BUS
config REGISTER
bool
+
+config SPLIT_IRQ
+ bool
diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index ce337bd7c9..bb1afe422a 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -19,7 +19,7 @@ common-obj-$(CONFIG_FITLOADER) += loader-fit.o
common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
common-obj-$(CONFIG_REGISTER) += register.o
common-obj-$(CONFIG_OR_IRQ) += or-irq.o
-common-obj-$(CONFIG_SOFTMMU) += split-irq.o
+common-obj-$(CONFIG_SPLIT_IRQ) += split-irq.o
common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
common-obj-$(CONFIG_SOFTMMU) += generic-loader.o
common-obj-$(CONFIG_SOFTMMU) += null-machine.o
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 7/8] hw/misc: Add a config switch for the "unimplemented" device
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
` (5 preceding siblings ...)
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 6/8] hw/core: Add a config switch for the "split-irq" device Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-19 12:47 ` Philippe Mathieu-Daudé
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 8/8] hw/core: Add a config switch for the generic loader device Thomas Huth
2019-08-19 17:47 ` [Qemu-devel] [PATCH v3 0/8] Kconfig switches Paolo Bonzini
8 siblings, 1 reply; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
The device is only used by some few boards. Let's use a proper Kconfig
switch so that we only compile this code if we really need it.
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/arm/Kconfig | 11 +++++++++++
hw/microblaze/Kconfig | 1 +
hw/misc/Kconfig | 3 +++
hw/misc/Makefile.objs | 2 +-
hw/sparc64/Kconfig | 1 +
5 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 6e24c73b54..76a2a6bcbf 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -82,6 +82,7 @@ config MUSCA
select PL011
select PL031
select SPLIT_IRQ
+ select UNIMP
config MUSICPAL
bool
@@ -217,6 +218,7 @@ config STELLARIS
select SSI_SD
select STELLARIS_INPUT
select STELLARIS_ENET # ethernet
+ select UNIMP
config STRONGARM
bool
@@ -283,6 +285,7 @@ config ALLWINNER_A10
select ALLWINNER_A10_PIC
select ALLWINNER_EMAC
select SERIAL
+ select UNIMP
config RASPI
bool
@@ -320,6 +323,7 @@ config XLNX_VERSAL
select PL011
select CADENCE
select VIRTIO_MMIO
+ select UNIMP
config FSL_IMX25
bool
@@ -355,6 +359,7 @@ config ASPEED_SOC
select SSI_M25P80
select TMP105
select TMP421
+ select UNIMP
config MPS2
bool
@@ -366,6 +371,7 @@ config MPS2
select PL022 # Serial port
select PL080 # DMA controller
select SPLIT_IRQ
+ select UNIMP
config FSL_IMX7
bool
@@ -378,6 +384,7 @@ config FSL_IMX7
select IMX_I2C
select PCI_EXPRESS_DESIGNWARE
select SDHCI
+ select UNIMP
config ARM_SMMUV3
bool
@@ -389,6 +396,7 @@ config FSL_IMX6UL
select IMX_FEC
select IMX_I2C
select SDHCI
+ select UNIMP
config MICROBIT
bool
@@ -398,6 +406,7 @@ config NRF51_SOC
bool
select I2C
select ARM_V7M
+ select UNIMP
config EMCRAFT_SF2
bool
@@ -410,6 +419,7 @@ config MSF2
select PTIMER
select SERIAL
select SSI
+ select UNIMP
config ZAURUS
bool
@@ -448,6 +458,7 @@ config ARMSSE
select TZ_MPC
select TZ_MSC
select TZ_PPC
+ select UNIMP
config ARMSSE_CPUID
bool
diff --git a/hw/microblaze/Kconfig b/hw/microblaze/Kconfig
index c4dc120973..e2697ced9c 100644
--- a/hw/microblaze/Kconfig
+++ b/hw/microblaze/Kconfig
@@ -4,6 +4,7 @@ config PETALOGIX_S3ADSP1800
select XILINX
select XILINX_AXI
select XILINX_ETHLITE
+ select UNIMP
config PETALOGIX_ML605
bool
diff --git a/hw/misc/Kconfig b/hw/misc/Kconfig
index 385e1b0cec..51754bb47c 100644
--- a/hw/misc/Kconfig
+++ b/hw/misc/Kconfig
@@ -117,4 +117,7 @@ config AUX
bool
select I2C
+config UNIMP
+ bool
+
source macio/Kconfig
diff --git a/hw/misc/Makefile.objs b/hw/misc/Makefile.objs
index e9aab519a1..e4aad707fb 100644
--- a/hw/misc/Makefile.objs
+++ b/hw/misc/Makefile.objs
@@ -9,7 +9,7 @@ common-obj-$(CONFIG_PCI_TESTDEV) += pci-testdev.o
common-obj-$(CONFIG_EDU) += edu.o
common-obj-$(CONFIG_PCA9552) += pca9552.o
-common-obj-y += unimp.o
+common-obj-$(CONFIG_UNIMP) += unimp.o
common-obj-$(CONFIG_FW_CFG_DMA) += vmcoreinfo.o
# ARM devices
diff --git a/hw/sparc64/Kconfig b/hw/sparc64/Kconfig
index d4d76a89be..f9f8b0f73a 100644
--- a/hw/sparc64/Kconfig
+++ b/hw/sparc64/Kconfig
@@ -17,3 +17,4 @@ config NIAGARA
bool
select EMPTY_SLOT
select SUN4V_RTC
+ select UNIMP
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [Qemu-devel] [PATCH v3 8/8] hw/core: Add a config switch for the generic loader device
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
` (6 preceding siblings ...)
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 7/8] hw/misc: Add a config switch for the "unimplemented" device Thomas Huth
@ 2019-08-17 10:19 ` Thomas Huth
2019-08-19 17:47 ` [Qemu-devel] [PATCH v3 0/8] Kconfig switches Paolo Bonzini
8 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-17 10:19 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
The generic loader device is completely optional. Let's add a proper
config switch for it so that people can disable it if they don't need
it and want to create a minimalistic QEMU binary.
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
hw/core/Kconfig | 4 ++++
hw/core/Makefile.objs | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/hw/core/Kconfig b/hw/core/Kconfig
index fffb3d62b2..fdf03514d7 100644
--- a/hw/core/Kconfig
+++ b/hw/core/Kconfig
@@ -7,6 +7,10 @@ config PTIMER
config FITLOADER
bool
+config GENERIC_LOADER
+ bool
+ default y
+
config OR_IRQ
bool
diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index bb1afe422a..b49f880a0c 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -21,7 +21,7 @@ common-obj-$(CONFIG_REGISTER) += register.o
common-obj-$(CONFIG_OR_IRQ) += or-irq.o
common-obj-$(CONFIG_SPLIT_IRQ) += split-irq.o
common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
-common-obj-$(CONFIG_SOFTMMU) += generic-loader.o
+common-obj-$(CONFIG_GENERIC_LOADER) += generic-loader.o
common-obj-$(CONFIG_SOFTMMU) += null-machine.o
obj-$(CONFIG_SOFTMMU) += machine-qmp-cmds.o
--
2.18.1
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device Thomas Huth
@ 2019-08-19 11:54 ` Philippe Mathieu-Daudé
2019-08-19 20:07 ` Alistair Francis
1 sibling, 0 replies; 14+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-08-19 11:54 UTC (permalink / raw)
To: Thomas Huth, Paolo Bonzini, Yang Zhong, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
On 8/17/19 12:19 PM, Thomas Huth wrote:
> The "register" device is only used by certain machines. Let's add
> a proper config switch for it so that it only gets compiled when we
> really need it.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/Kconfig | 1 +
> hw/core/Kconfig | 3 +++
> hw/core/Makefile.objs | 2 +-
> hw/dma/Kconfig | 1 +
> 4 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/hw/Kconfig b/hw/Kconfig
> index dbae1c0852..b45db3c813 100644
> --- a/hw/Kconfig
> +++ b/hw/Kconfig
> @@ -76,3 +76,4 @@ config XILINX_AXI
>
> config XLNX_ZYNQMP
> bool
> + select REGISTER
I still find REGISTER confusing, and prefer Alistair's suggestion:
REGISTER_API.
Since this patch is valid:
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> diff --git a/hw/core/Kconfig b/hw/core/Kconfig
> index c2a1ae8122..d11920fcb3 100644
> --- a/hw/core/Kconfig
> +++ b/hw/core/Kconfig
> @@ -9,3 +9,6 @@ config FITLOADER
>
> config PLATFORM_BUS
> bool
> +
> +config REGISTER
> + bool
> diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
> index f8481d959f..d6cfb2a81b 100644
> --- a/hw/core/Makefile.objs
> +++ b/hw/core/Makefile.objs
> @@ -17,7 +17,7 @@ common-obj-$(CONFIG_SOFTMMU) += machine.o
> common-obj-$(CONFIG_SOFTMMU) += loader.o
> common-obj-$(CONFIG_FITLOADER) += loader-fit.o
> common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
> -common-obj-$(CONFIG_SOFTMMU) += register.o
> +common-obj-$(CONFIG_REGISTER) += register.o
> common-obj-$(CONFIG_SOFTMMU) += or-irq.o
> common-obj-$(CONFIG_SOFTMMU) += split-irq.o
> common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
> diff --git a/hw/dma/Kconfig b/hw/dma/Kconfig
> index 751dec5426..5c61b67bc0 100644
> --- a/hw/dma/Kconfig
> +++ b/hw/dma/Kconfig
> @@ -16,6 +16,7 @@ config I8257
>
> config ZYNQ_DEVCFG
> bool
> + select REGISTER
>
> config STP2000
> bool
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] [PATCH v3 7/8] hw/misc: Add a config switch for the "unimplemented" device
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 7/8] hw/misc: Add a config switch for the "unimplemented" device Thomas Huth
@ 2019-08-19 12:47 ` Philippe Mathieu-Daudé
0 siblings, 0 replies; 14+ messages in thread
From: Philippe Mathieu-Daudé @ 2019-08-19 12:47 UTC (permalink / raw)
To: Thomas Huth, Paolo Bonzini, Yang Zhong, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
On 8/17/19 12:19 PM, Thomas Huth wrote:
> The device is only used by some few boards. Let's use a proper Kconfig
> switch so that we only compile this code if we really need it.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> hw/arm/Kconfig | 11 +++++++++++
> hw/microblaze/Kconfig | 1 +
> hw/misc/Kconfig | 3 +++
> hw/misc/Makefile.objs | 2 +-
> hw/sparc64/Kconfig | 1 +
> 5 files changed, 17 insertions(+), 1 deletion(-)
>
> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
> index 6e24c73b54..76a2a6bcbf 100644
> --- a/hw/arm/Kconfig
> +++ b/hw/arm/Kconfig
> @@ -82,6 +82,7 @@ config MUSCA
> select PL011
> select PL031
> select SPLIT_IRQ
> + select UNIMP
>
> config MUSICPAL
> bool
> @@ -217,6 +218,7 @@ config STELLARIS
> select SSI_SD
> select STELLARIS_INPUT
> select STELLARIS_ENET # ethernet
> + select UNIMP
>
> config STRONGARM
> bool
> @@ -283,6 +285,7 @@ config ALLWINNER_A10
> select ALLWINNER_A10_PIC
> select ALLWINNER_EMAC
> select SERIAL
> + select UNIMP
>
> config RASPI
> bool
> @@ -320,6 +323,7 @@ config XLNX_VERSAL
> select PL011
> select CADENCE
> select VIRTIO_MMIO
> + select UNIMP
>
> config FSL_IMX25
> bool
> @@ -355,6 +359,7 @@ config ASPEED_SOC
> select SSI_M25P80
> select TMP105
> select TMP421
> + select UNIMP
>
> config MPS2
> bool
> @@ -366,6 +371,7 @@ config MPS2
> select PL022 # Serial port
> select PL080 # DMA controller
> select SPLIT_IRQ
> + select UNIMP
>
> config FSL_IMX7
> bool
> @@ -378,6 +384,7 @@ config FSL_IMX7
> select IMX_I2C
> select PCI_EXPRESS_DESIGNWARE
> select SDHCI
> + select UNIMP
>
> config ARM_SMMUV3
> bool
> @@ -389,6 +396,7 @@ config FSL_IMX6UL
> select IMX_FEC
> select IMX_I2C
> select SDHCI
> + select UNIMP
>
> config MICROBIT
> bool
> @@ -398,6 +406,7 @@ config NRF51_SOC
> bool
> select I2C
> select ARM_V7M
> + select UNIMP
>
> config EMCRAFT_SF2
> bool
> @@ -410,6 +419,7 @@ config MSF2
> select PTIMER
> select SERIAL
> select SSI
> + select UNIMP
>
> config ZAURUS
> bool
> @@ -448,6 +458,7 @@ config ARMSSE
> select TZ_MPC
> select TZ_MSC
> select TZ_PPC
> + select UNIMP
>
> config ARMSSE_CPUID
> bool
> diff --git a/hw/microblaze/Kconfig b/hw/microblaze/Kconfig
> index c4dc120973..e2697ced9c 100644
> --- a/hw/microblaze/Kconfig
> +++ b/hw/microblaze/Kconfig
> @@ -4,6 +4,7 @@ config PETALOGIX_S3ADSP1800
> select XILINX
> select XILINX_AXI
> select XILINX_ETHLITE
> + select UNIMP
>
> config PETALOGIX_ML605
> bool
> diff --git a/hw/misc/Kconfig b/hw/misc/Kconfig
> index 385e1b0cec..51754bb47c 100644
> --- a/hw/misc/Kconfig
> +++ b/hw/misc/Kconfig
> @@ -117,4 +117,7 @@ config AUX
> bool
> select I2C
>
> +config UNIMP
> + bool
> +
> source macio/Kconfig
> diff --git a/hw/misc/Makefile.objs b/hw/misc/Makefile.objs
> index e9aab519a1..e4aad707fb 100644
> --- a/hw/misc/Makefile.objs
> +++ b/hw/misc/Makefile.objs
> @@ -9,7 +9,7 @@ common-obj-$(CONFIG_PCI_TESTDEV) += pci-testdev.o
> common-obj-$(CONFIG_EDU) += edu.o
> common-obj-$(CONFIG_PCA9552) += pca9552.o
>
> -common-obj-y += unimp.o
> +common-obj-$(CONFIG_UNIMP) += unimp.o
> common-obj-$(CONFIG_FW_CFG_DMA) += vmcoreinfo.o
>
> # ARM devices
> diff --git a/hw/sparc64/Kconfig b/hw/sparc64/Kconfig
> index d4d76a89be..f9f8b0f73a 100644
> --- a/hw/sparc64/Kconfig
> +++ b/hw/sparc64/Kconfig
> @@ -17,3 +17,4 @@ config NIAGARA
> bool
> select EMPTY_SLOT
> select SUN4V_RTC
> + select UNIMP
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] [PATCH v3 0/8] Kconfig switches
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
` (7 preceding siblings ...)
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 8/8] hw/core: Add a config switch for the generic loader device Thomas Huth
@ 2019-08-19 17:47 ` Paolo Bonzini
2019-08-19 19:29 ` Thomas Huth
8 siblings, 1 reply; 14+ messages in thread
From: Paolo Bonzini @ 2019-08-19 17:47 UTC (permalink / raw)
To: Thomas Huth, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
On 17/08/19 12:19, Thomas Huth wrote:
> Here are some more Kconfig patches that clean up the switches of
> existing devices and introduce proper config switches for some
> other devices that were always enabled before.
Thomas, you can go ahead and send a pull request as I will be on
vacation soon.
Paolo
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] [PATCH v3 0/8] Kconfig switches
2019-08-19 17:47 ` [Qemu-devel] [PATCH v3 0/8] Kconfig switches Paolo Bonzini
@ 2019-08-19 19:29 ` Thomas Huth
0 siblings, 0 replies; 14+ messages in thread
From: Thomas Huth @ 2019-08-19 19:29 UTC (permalink / raw)
To: Paolo Bonzini, Yang Zhong, Philippe Mathieu-Daudé, qemu-devel
Cc: Edgar E. Iglesias, qemu-arm, Mark Cave-Ayland, Artyom Tarasenko,
Peter Maydell
On 8/19/19 7:47 PM, Paolo Bonzini wrote:
> On 17/08/19 12:19, Thomas Huth wrote:
>> Here are some more Kconfig patches that clean up the switches of
>> existing devices and introduce proper config switches for some
>> other devices that were always enabled before.
>
> Thomas, you can go ahead and send a pull request as I will be on
> vacation soon.
Ok, I'm going to prepare one.
Thomas
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device Thomas Huth
2019-08-19 11:54 ` Philippe Mathieu-Daudé
@ 2019-08-19 20:07 ` Alistair Francis
1 sibling, 0 replies; 14+ messages in thread
From: Alistair Francis @ 2019-08-19 20:07 UTC (permalink / raw)
To: Thomas Huth
Cc: Yang Zhong, Peter Maydell, Mark Cave-Ayland,
qemu-devel@nongnu.org Developers, qemu-arm, Edgar E. Iglesias,
Paolo Bonzini, Philippe Mathieu-Daudé,
Artyom Tarasenko
On Sat, Aug 17, 2019 at 3:24 AM Thomas Huth <thuth@redhat.com> wrote:
>
> The "register" device is only used by certain machines. Let's add
> a proper config switch for it so that it only gets compiled when we
> really need it.
>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Alistair
> ---
> hw/Kconfig | 1 +
> hw/core/Kconfig | 3 +++
> hw/core/Makefile.objs | 2 +-
> hw/dma/Kconfig | 1 +
> 4 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/hw/Kconfig b/hw/Kconfig
> index dbae1c0852..b45db3c813 100644
> --- a/hw/Kconfig
> +++ b/hw/Kconfig
> @@ -76,3 +76,4 @@ config XILINX_AXI
>
> config XLNX_ZYNQMP
> bool
> + select REGISTER
> diff --git a/hw/core/Kconfig b/hw/core/Kconfig
> index c2a1ae8122..d11920fcb3 100644
> --- a/hw/core/Kconfig
> +++ b/hw/core/Kconfig
> @@ -9,3 +9,6 @@ config FITLOADER
>
> config PLATFORM_BUS
> bool
> +
> +config REGISTER
> + bool
> diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
> index f8481d959f..d6cfb2a81b 100644
> --- a/hw/core/Makefile.objs
> +++ b/hw/core/Makefile.objs
> @@ -17,7 +17,7 @@ common-obj-$(CONFIG_SOFTMMU) += machine.o
> common-obj-$(CONFIG_SOFTMMU) += loader.o
> common-obj-$(CONFIG_FITLOADER) += loader-fit.o
> common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
> -common-obj-$(CONFIG_SOFTMMU) += register.o
> +common-obj-$(CONFIG_REGISTER) += register.o
> common-obj-$(CONFIG_SOFTMMU) += or-irq.o
> common-obj-$(CONFIG_SOFTMMU) += split-irq.o
> common-obj-$(CONFIG_PLATFORM_BUS) += platform-bus.o
> diff --git a/hw/dma/Kconfig b/hw/dma/Kconfig
> index 751dec5426..5c61b67bc0 100644
> --- a/hw/dma/Kconfig
> +++ b/hw/dma/Kconfig
> @@ -16,6 +16,7 @@ config I8257
>
> config ZYNQ_DEVCFG
> bool
> + select REGISTER
>
> config STP2000
> bool
> --
> 2.18.1
>
>
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2019-08-19 20:12 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-17 10:19 [Qemu-devel] [PATCH v3 0/8] Kconfig switches Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 1/8] hw/Kconfig: Move the generic XLNX_ZYNQMP to the root hw/Kconfig Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 2/8] hw/intc: Only build the xlnx-iomod-intc device for the MicroBlaze PMU Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 3/8] hw/dma: Do not build the xlnx_dpdma device for the MicroBlaze machines Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 4/8] hw/core: Add a config switch for the "register" device Thomas Huth
2019-08-19 11:54 ` Philippe Mathieu-Daudé
2019-08-19 20:07 ` Alistair Francis
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 5/8] hw/core: Add a config switch for the "or-irq" device Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 6/8] hw/core: Add a config switch for the "split-irq" device Thomas Huth
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 7/8] hw/misc: Add a config switch for the "unimplemented" device Thomas Huth
2019-08-19 12:47 ` Philippe Mathieu-Daudé
2019-08-17 10:19 ` [Qemu-devel] [PATCH v3 8/8] hw/core: Add a config switch for the generic loader device Thomas Huth
2019-08-19 17:47 ` [Qemu-devel] [PATCH v3 0/8] Kconfig switches Paolo Bonzini
2019-08-19 19:29 ` Thomas Huth
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).