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 | 9 +++++++++
hw/microblaze/Kconfig | 1 +
hw/misc/Kconfig | 3 +++
hw/misc/Makefile.objs | 2 +-
hw/sparc64/Kconfig | 1 +
5 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 6e24c73b54..ab9e592d74 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -217,6 +217,7 @@ config STELLARIS
select SSI_SD
select STELLARIS_INPUT
select STELLARIS_ENET # ethernet
+ select UNIMP
config STRONGARM
bool
@@ -283,6 +284,7 @@ config ALLWINNER_A10
select ALLWINNER_A10_PIC
select ALLWINNER_EMAC
select SERIAL
+ select UNIMP
config RASPI
bool
@@ -320,6 +322,7 @@ config XLNX_VERSAL
select PL011
select CADENCE
select VIRTIO_MMIO
+ select UNIMP
config FSL_IMX25
bool
@@ -355,6 +358,7 @@ config ASPEED_SOC
select SSI_M25P80
select TMP105
select TMP421
+ select UNIMP
config MPS2
bool
@@ -378,6 +382,7 @@ config FSL_IMX7
select IMX_I2C
select PCI_EXPRESS_DESIGNWARE
select SDHCI
+ select UNIMP
config ARM_SMMUV3
bool
@@ -389,6 +394,7 @@ config FSL_IMX6UL
select IMX_FEC
select IMX_I2C
select SDHCI
+ select UNIMP
config MICROBIT
bool
@@ -398,6 +404,7 @@ config NRF51_SOC
bool
select I2C
select ARM_V7M
+ select UNIMP
config EMCRAFT_SF2
bool
@@ -410,6 +417,7 @@ config MSF2
select PTIMER
select SERIAL
select SSI
+ select UNIMP
config ZAURUS
bool
@@ -448,6 +456,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.21.0
On 7/31/19 9:56 AM, 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.
I'd prefer having the UnimpDevice user-creatable and always present as a
core device...
Maybe this can be solved by using 'default y':
config UNIMP
bool
default y
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
> hw/arm/Kconfig | 9 +++++++++
> hw/microblaze/Kconfig | 1 +
> hw/misc/Kconfig | 3 +++
> hw/misc/Makefile.objs | 2 +-
> hw/sparc64/Kconfig | 1 +
> 5 files changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
> index 6e24c73b54..ab9e592d74 100644
> --- a/hw/arm/Kconfig
> +++ b/hw/arm/Kconfig
> @@ -217,6 +217,7 @@ config STELLARIS
> select SSI_SD
> select STELLARIS_INPUT
> select STELLARIS_ENET # ethernet
> + select UNIMP
>
> config STRONGARM
> bool
> @@ -283,6 +284,7 @@ config ALLWINNER_A10
> select ALLWINNER_A10_PIC
> select ALLWINNER_EMAC
> select SERIAL
> + select UNIMP
>
> config RASPI
> bool
> @@ -320,6 +322,7 @@ config XLNX_VERSAL
> select PL011
> select CADENCE
> select VIRTIO_MMIO
> + select UNIMP
>
> config FSL_IMX25
> bool
> @@ -355,6 +358,7 @@ config ASPEED_SOC
> select SSI_M25P80
> select TMP105
> select TMP421
> + select UNIMP
>
> config MPS2
> bool
> @@ -378,6 +382,7 @@ config FSL_IMX7
> select IMX_I2C
> select PCI_EXPRESS_DESIGNWARE
> select SDHCI
> + select UNIMP
>
> config ARM_SMMUV3
> bool
> @@ -389,6 +394,7 @@ config FSL_IMX6UL
> select IMX_FEC
> select IMX_I2C
> select SDHCI
> + select UNIMP
>
> config MICROBIT
> bool
> @@ -398,6 +404,7 @@ config NRF51_SOC
> bool
> select I2C
> select ARM_V7M
> + select UNIMP
>
> config EMCRAFT_SF2
> bool
> @@ -410,6 +417,7 @@ config MSF2
> select PTIMER
> select SERIAL
> select SSI
> + select UNIMP
>
> config ZAURUS
> bool
> @@ -448,6 +456,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
>
On 31/07/2019 13.47, Philippe Mathieu-Daudé wrote: > On 7/31/19 9:56 AM, 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. > > I'd prefer having the UnimpDevice user-creatable and always present as a > core device... Why? This is a sysbus device that needs to be wired up in code, so I don't see a reason for making this user-creatable right now. Anyway, that's a different subject, so this should not be part of this patch. Thomas
On 7/31/19 1:50 PM, Thomas Huth wrote: > On 31/07/2019 13.47, Philippe Mathieu-Daudé wrote: >> On 7/31/19 9:56 AM, 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. >> >> I'd prefer having the UnimpDevice user-creatable and always present as a >> core device... > > Why? This is a sysbus device that needs to be wired up in code, so I > don't see a reason for making this user-creatable right now. Right now no. > Anyway, that's a different subject, so this should not be part of this > patch. Fair enough. Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
On Wed, Jul 31, 2019 at 5:55 PM Philippe Mathieu-Daudé <philmd@redhat.com> wrote: > On 7/31/19 1:50 PM, Thomas Huth wrote: > > On 31/07/2019 13.47, Philippe Mathieu-Daudé wrote: > >> On 7/31/19 9:56 AM, 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. > >> > >> I'd prefer having the UnimpDevice user-creatable and always present as a > >> core device... > > > > Why? This is a sysbus device that needs to be wired up in code, so I > > don't see a reason for making this user-creatable right now. > > Right now no. > > > Anyway, that's a different subject, so this should not be part of this > > patch. > > Fair enough. > > Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Err, you missed MUSCA and MPS2.
On 31/07/2019 17.59, Philippe Mathieu-Daudé wrote: > On Wed, Jul 31, 2019 at 5:55 PM Philippe Mathieu-Daudé > <philmd@redhat.com> wrote: >> On 7/31/19 1:50 PM, Thomas Huth wrote: >>> On 31/07/2019 13.47, Philippe Mathieu-Daudé wrote: >>>> On 7/31/19 9:56 AM, 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. >>>> >>>> I'd prefer having the UnimpDevice user-creatable and always present as a >>>> core device... >>> >>> Why? This is a sysbus device that needs to be wired up in code, so I >>> don't see a reason for making this user-creatable right now. >> >> Right now no. >> >>> Anyway, that's a different subject, so this should not be part of this >>> patch. >> >> Fair enough. >> >> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> > > Err, you missed MUSCA and MPS2. Ah, well, that's another one of those indirections that we discussed in v1 and which I apparently forgot to add now in v2 ... both select ARMSSE which in turn select UNIMP, so it's not completely missing. I'll send a v3 with a fix. Thanks for noticing! Thomas
© 2016 - 2026 Red Hat, Inc.