qemu-arm.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH  v1 1/5] meson: Introduce target-specific Kconfig
       [not found] <20210621152120.4465-1-alex.bennee@linaro.org>
@ 2021-06-21 15:21 ` Alex Bennée
  2021-07-06 10:52   ` Thomas Huth
  2021-06-21 15:21 ` [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Alex Bennée
  2021-06-21 15:21 ` [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices Alex Bennée
  2 siblings, 1 reply; 13+ messages in thread
From: Alex Bennée @ 2021-06-21 15:21 UTC (permalink / raw)
  To: qemu-devel
  Cc: thuth, pbonzini, Philippe Mathieu-Daudé, Alex Bennée,
	Richard Henderson, Peter Maydell, Michael Rolnik,
	Edgar E. Iglesias, Laurent Vivier, Aurelien Jarno, Jiaxun Yang,
	Aleksandar Rikalo, Chris Wulff, Marek Vasut, Stafford Horne,
	David Gibson, Greg Kurz, Palmer Dabbelt, Alistair Francis,
	Bin Meng, Yoshinori Sato, Cornelia Huck, David Hildenbrand,
	Mark Cave-Ayland, Artyom Tarasenko, Bastian Koppelmann,
	Max Filippov, open list:ARM TCG CPUs, open list:PowerPC TCG CPUs,
	open list:RISC-V TCG CPUs, open list:S390 general arch...

From: Philippe Mathieu-Daudé <f4bug@amsat.org>

Add a target-specific Kconfig. We need the definitions in Kconfig so
the minikconf tool can verify they exit. However CONFIG_FOO is only
enabled for target foo via the meson.build rules.

Two architecture have a particularity, ARM and MIPS:
their 64-bit version include the 32-bit subset.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

---
vajb:
  - removed targets that no longer exist
  - reword commit message to show why we need the Kconfigs
---
 meson.build               |  3 ++-
 Kconfig                   |  1 +
 target/Kconfig            | 19 +++++++++++++++++++
 target/alpha/Kconfig      |  2 ++
 target/arm/Kconfig        |  6 ++++++
 target/avr/Kconfig        |  2 ++
 target/cris/Kconfig       |  2 ++
 target/hppa/Kconfig       |  2 ++
 target/i386/Kconfig       |  5 +++++
 target/m68k/Kconfig       |  2 ++
 target/microblaze/Kconfig |  2 ++
 target/mips/Kconfig       |  6 ++++++
 target/nios2/Kconfig      |  2 ++
 target/openrisc/Kconfig   |  2 ++
 target/ppc/Kconfig        |  5 +++++
 target/riscv/Kconfig      |  5 +++++
 target/rx/Kconfig         |  2 ++
 target/s390x/Kconfig      |  2 ++
 target/sh4/Kconfig        |  2 ++
 target/sparc/Kconfig      |  5 +++++
 target/tricore/Kconfig    |  2 ++
 target/xtensa/Kconfig     |  2 ++
 22 files changed, 80 insertions(+), 1 deletion(-)
 create mode 100644 target/Kconfig
 create mode 100644 target/alpha/Kconfig
 create mode 100644 target/arm/Kconfig
 create mode 100644 target/avr/Kconfig
 create mode 100644 target/cris/Kconfig
 create mode 100644 target/hppa/Kconfig
 create mode 100644 target/i386/Kconfig
 create mode 100644 target/m68k/Kconfig
 create mode 100644 target/microblaze/Kconfig
 create mode 100644 target/mips/Kconfig
 create mode 100644 target/nios2/Kconfig
 create mode 100644 target/openrisc/Kconfig
 create mode 100644 target/ppc/Kconfig
 create mode 100644 target/riscv/Kconfig
 create mode 100644 target/rx/Kconfig
 create mode 100644 target/s390x/Kconfig
 create mode 100644 target/sh4/Kconfig
 create mode 100644 target/sparc/Kconfig
 create mode 100644 target/tricore/Kconfig
 create mode 100644 target/xtensa/Kconfig

diff --git a/meson.build b/meson.build
index d8a92666fb..3ddd22ab7a 100644
--- a/meson.build
+++ b/meson.build
@@ -1377,7 +1377,8 @@ foreach target : target_dirs
       command: [minikconf,
                 get_option('default_devices') ? '--defconfig' : '--allnoconfig',
                 config_devices_mak, '@DEPFILE@', '@INPUT@',
-                host_kconfig, accel_kconfig])
+                host_kconfig, accel_kconfig,
+                'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'])
 
     config_devices_data = configuration_data()
     config_devices = keyval.load(config_devices_mak)
diff --git a/Kconfig b/Kconfig
index d52ebd839b..fb6a24a2de 100644
--- a/Kconfig
+++ b/Kconfig
@@ -1,5 +1,6 @@
 source Kconfig.host
 source backends/Kconfig
 source accel/Kconfig
+source target/Kconfig
 source hw/Kconfig
 source semihosting/Kconfig
diff --git a/target/Kconfig b/target/Kconfig
new file mode 100644
index 0000000000..ae7f24fc66
--- /dev/null
+++ b/target/Kconfig
@@ -0,0 +1,19 @@
+source alpha/Kconfig
+source arm/Kconfig
+source avr/Kconfig
+source cris/Kconfig
+source hppa/Kconfig
+source i386/Kconfig
+source m68k/Kconfig
+source microblaze/Kconfig
+source mips/Kconfig
+source nios2/Kconfig
+source openrisc/Kconfig
+source ppc/Kconfig
+source riscv/Kconfig
+source rx/Kconfig
+source s390x/Kconfig
+source sh4/Kconfig
+source sparc/Kconfig
+source tricore/Kconfig
+source xtensa/Kconfig
diff --git a/target/alpha/Kconfig b/target/alpha/Kconfig
new file mode 100644
index 0000000000..267222c05b
--- /dev/null
+++ b/target/alpha/Kconfig
@@ -0,0 +1,2 @@
+config ALPHA
+    bool
diff --git a/target/arm/Kconfig b/target/arm/Kconfig
new file mode 100644
index 0000000000..3f3394a22b
--- /dev/null
+++ b/target/arm/Kconfig
@@ -0,0 +1,6 @@
+config ARM
+    bool
+
+config AARCH64
+    bool
+    select ARM
diff --git a/target/avr/Kconfig b/target/avr/Kconfig
new file mode 100644
index 0000000000..155592d353
--- /dev/null
+++ b/target/avr/Kconfig
@@ -0,0 +1,2 @@
+config AVR
+    bool
diff --git a/target/cris/Kconfig b/target/cris/Kconfig
new file mode 100644
index 0000000000..3fdc309fbb
--- /dev/null
+++ b/target/cris/Kconfig
@@ -0,0 +1,2 @@
+config CRIS
+    bool
diff --git a/target/hppa/Kconfig b/target/hppa/Kconfig
new file mode 100644
index 0000000000..395a35d799
--- /dev/null
+++ b/target/hppa/Kconfig
@@ -0,0 +1,2 @@
+config HPPA
+    bool
diff --git a/target/i386/Kconfig b/target/i386/Kconfig
new file mode 100644
index 0000000000..ce6968906e
--- /dev/null
+++ b/target/i386/Kconfig
@@ -0,0 +1,5 @@
+config I386
+    bool
+
+config X86_64
+    bool
diff --git a/target/m68k/Kconfig b/target/m68k/Kconfig
new file mode 100644
index 0000000000..23debad519
--- /dev/null
+++ b/target/m68k/Kconfig
@@ -0,0 +1,2 @@
+config M68K
+    bool
diff --git a/target/microblaze/Kconfig b/target/microblaze/Kconfig
new file mode 100644
index 0000000000..a5410d9218
--- /dev/null
+++ b/target/microblaze/Kconfig
@@ -0,0 +1,2 @@
+config MICROBLAZE
+    bool
diff --git a/target/mips/Kconfig b/target/mips/Kconfig
new file mode 100644
index 0000000000..6adf145354
--- /dev/null
+++ b/target/mips/Kconfig
@@ -0,0 +1,6 @@
+config MIPS
+    bool
+
+config MIPS64
+    bool
+    select MIPS
diff --git a/target/nios2/Kconfig b/target/nios2/Kconfig
new file mode 100644
index 0000000000..1529ab8950
--- /dev/null
+++ b/target/nios2/Kconfig
@@ -0,0 +1,2 @@
+config NIOS2
+    bool
diff --git a/target/openrisc/Kconfig b/target/openrisc/Kconfig
new file mode 100644
index 0000000000..e0da4ac1df
--- /dev/null
+++ b/target/openrisc/Kconfig
@@ -0,0 +1,2 @@
+config OPENRISC
+    bool
diff --git a/target/ppc/Kconfig b/target/ppc/Kconfig
new file mode 100644
index 0000000000..3ff152051a
--- /dev/null
+++ b/target/ppc/Kconfig
@@ -0,0 +1,5 @@
+config PPC
+    bool
+
+config PPC64
+    bool
diff --git a/target/riscv/Kconfig b/target/riscv/Kconfig
new file mode 100644
index 0000000000..b9e5932f13
--- /dev/null
+++ b/target/riscv/Kconfig
@@ -0,0 +1,5 @@
+config RISCV32
+    bool
+
+config RISCV64
+    bool
diff --git a/target/rx/Kconfig b/target/rx/Kconfig
new file mode 100644
index 0000000000..aceb5ed28f
--- /dev/null
+++ b/target/rx/Kconfig
@@ -0,0 +1,2 @@
+config RX
+    bool
diff --git a/target/s390x/Kconfig b/target/s390x/Kconfig
new file mode 100644
index 0000000000..72da48136c
--- /dev/null
+++ b/target/s390x/Kconfig
@@ -0,0 +1,2 @@
+config S390X
+    bool
diff --git a/target/sh4/Kconfig b/target/sh4/Kconfig
new file mode 100644
index 0000000000..2397c86028
--- /dev/null
+++ b/target/sh4/Kconfig
@@ -0,0 +1,2 @@
+config SH4
+    bool
diff --git a/target/sparc/Kconfig b/target/sparc/Kconfig
new file mode 100644
index 0000000000..70cc0f3a21
--- /dev/null
+++ b/target/sparc/Kconfig
@@ -0,0 +1,5 @@
+config SPARC
+    bool
+
+config SPARC64
+    bool
diff --git a/target/tricore/Kconfig b/target/tricore/Kconfig
new file mode 100644
index 0000000000..9313409309
--- /dev/null
+++ b/target/tricore/Kconfig
@@ -0,0 +1,2 @@
+config TRICORE
+    bool
diff --git a/target/xtensa/Kconfig b/target/xtensa/Kconfig
new file mode 100644
index 0000000000..a3c8dc7f6d
--- /dev/null
+++ b/target/xtensa/Kconfig
@@ -0,0 +1,2 @@
+config XTENSA
+    bool
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH  v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL
       [not found] <20210621152120.4465-1-alex.bennee@linaro.org>
  2021-06-21 15:21 ` [PATCH v1 1/5] meson: Introduce target-specific Kconfig Alex Bennée
@ 2021-06-21 15:21 ` Alex Bennée
  2021-06-21 19:00   ` Philippe Mathieu-Daudé
  2021-07-06 10:53   ` Thomas Huth
  2021-06-21 15:21 ` [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices Alex Bennée
  2 siblings, 2 replies; 13+ messages in thread
From: Alex Bennée @ 2021-06-21 15:21 UTC (permalink / raw)
  To: qemu-devel
  Cc: thuth, pbonzini, Alex Bennée, Richard Henderson,
	Peter Maydell, open list:ARM TCG CPUs

We need this functionality due to:

    /* XRAM IRQs get ORed into a single line.  */
    object_initialize_child(OBJECT(s), "xram-irq-orgate",
                            &s->lpd.xram.irq_orgate, TYPE_OR_IRQ);

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 hw/arm/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 647b5c8b43..528f71bb9d 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -368,6 +368,7 @@ config XLNX_VERSAL
     select UNIMP
     select XLNX_ZDMA
     select XLNX_ZYNQMP
+    select OR_IRQ
 
 config NPCM7XX
     bool
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH  v1 3/5] hw/arm: move CONFIG_V7M out of default-devices
       [not found] <20210621152120.4465-1-alex.bennee@linaro.org>
  2021-06-21 15:21 ` [PATCH v1 1/5] meson: Introduce target-specific Kconfig Alex Bennée
  2021-06-21 15:21 ` [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Alex Bennée
@ 2021-06-21 15:21 ` Alex Bennée
  2021-07-06 11:04   ` Thomas Huth
  2021-07-06 12:14   ` Philippe Mathieu-Daudé
  2 siblings, 2 replies; 13+ messages in thread
From: Alex Bennée @ 2021-06-21 15:21 UTC (permalink / raw)
  To: qemu-devel
  Cc: thuth, pbonzini, Alex Bennée, Richard Henderson,
	Peter Maydell, open list:ARM TCG CPUs

We currently select CONFIG_V7M for a bunch of our m-profile devices.
The last sticking point is translate.c which cannot be compiled
without expecting v7m support. Express this dependency in Kconfig
rather than in default devices as a stepping stone to a fully
configurable translate.c.

While we are at it we also need to select ARM_COMPATIBLE_SEMIHOSTING
as that is implied for M profile machines.

Acked-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>

---
vconfigs
  - cherry pick from re-factor
  - minor tweak to subject line
---
 default-configs/devices/arm-softmmu.mak | 3 ---
 hw/arm/Kconfig                          | 3 +++
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/default-configs/devices/arm-softmmu.mak b/default-configs/devices/arm-softmmu.mak
index 0500156a0c..4114aa9e35 100644
--- a/default-configs/devices/arm-softmmu.mak
+++ b/default-configs/devices/arm-softmmu.mak
@@ -1,8 +1,5 @@
 # Default configuration for arm-softmmu
 
-# TODO: ARM_V7M is currently always required - make this more flexible!
-CONFIG_ARM_V7M=y
-
 # CONFIG_PCI_DEVICES=n
 # CONFIG_TEST_DEVICES=n
 
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 528f71bb9d..062fe94b64 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -296,7 +296,10 @@ config ZYNQ
 
 config ARM_V7M
     bool
+    # currently v7M must be included in a TCG build due to translate.c
+    default y if TCG && (ARM || AARCH64)
     select PTIMER
+    select ARM_COMPATIBLE_SEMIHOSTING
 
 config ALLWINNER_A10
     bool
-- 
2.20.1

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL
  2021-06-21 15:21 ` [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Alex Bennée
@ 2021-06-21 19:00   ` Philippe Mathieu-Daudé
  2021-06-21 20:00     ` Edgar E. Iglesias
  2021-07-06 10:53   ` Thomas Huth
  1 sibling, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-06-21 19:00 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: Peter Maydell, thuth, Richard Henderson, open list:ARM TCG CPUs,
	pbonzini

On 6/21/21 5:21 PM, Alex Bennée wrote:
> We need this functionality due to:
> 
>     /* XRAM IRQs get ORed into a single line.  */
>     object_initialize_child(OBJECT(s), "xram-irq-orgate",
>                             &s->lpd.xram.irq_orgate, TYPE_OR_IRQ);
> 

Fixes: a55b441b2ca ("hw/arm: versal: Add support for the XRAMs")

> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>  hw/arm/Kconfig | 1 +
>  1 file changed, 1 insertion(+)

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL
  2021-06-21 19:00   ` Philippe Mathieu-Daudé
@ 2021-06-21 20:00     ` Edgar E. Iglesias
  0 siblings, 0 replies; 13+ messages in thread
From: Edgar E. Iglesias @ 2021-06-21 20:00 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: Alex Bennée, qemu-devel, Peter Maydell, thuth,
	open list:ARM TCG CPUs, Richard Henderson, pbonzini

On Mon, Jun 21, 2021 at 09:00:22PM +0200, Philippe Mathieu-Daudé wrote:
> On 6/21/21 5:21 PM, Alex Bennée wrote:
> > We need this functionality due to:
> > 
> >     /* XRAM IRQs get ORed into a single line.  */
> >     object_initialize_child(OBJECT(s), "xram-irq-orgate",
> >                             &s->lpd.xram.irq_orgate, TYPE_OR_IRQ);
> > 
> 
> Fixes: a55b441b2ca ("hw/arm: versal: Add support for the XRAMs")
> 
> > Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> 
> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 1/5] meson: Introduce target-specific Kconfig
  2021-06-21 15:21 ` [PATCH v1 1/5] meson: Introduce target-specific Kconfig Alex Bennée
@ 2021-07-06 10:52   ` Thomas Huth
  2021-07-06 12:47     ` Philippe Mathieu-Daudé
  0 siblings, 1 reply; 13+ messages in thread
From: Thomas Huth @ 2021-07-06 10:52 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: pbonzini, Philippe Mathieu-Daudé, Richard Henderson,
	Peter Maydell, Michael Rolnik, Edgar E. Iglesias, Laurent Vivier,
	Aurelien Jarno, Jiaxun Yang, Aleksandar Rikalo, Chris Wulff,
	Marek Vasut, Stafford Horne, David Gibson, Greg Kurz,
	Palmer Dabbelt, Alistair Francis, Bin Meng, Yoshinori Sato,
	Cornelia Huck, David Hildenbrand, Mark Cave-Ayland,
	Artyom Tarasenko, Bastian Koppelmann, Max Filippov,
	open list:ARM TCG CPUs, open list:PowerPC TCG CPUs,
	open list:RISC-V TCG CPUs, open list:S390 general arch...

On 21/06/2021 17.21, Alex Bennée wrote:
> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
> 
> Add a target-specific Kconfig. We need the definitions in Kconfig so
> the minikconf tool can verify they exit. However CONFIG_FOO is only

s/exit/exist/ ?

> enabled for target foo via the meson.build rules.
> 
> Two architecture have a particularity, ARM and MIPS:
> their 64-bit version include the 32-bit subset.

Why do you mention these here, but not x86, Sparc, PPC and RISC-V which also 
have 32-bit and 64-bit variants?

The patch itself looks fine to me, so once you've clarified the commit message:

Reviewed-by: Thomas Huth <thuth@redhat.com>


> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> 
> ---
> vajb:
>    - removed targets that no longer exist
>    - reword commit message to show why we need the Kconfigs
> ---
>   meson.build               |  3 ++-
>   Kconfig                   |  1 +
>   target/Kconfig            | 19 +++++++++++++++++++
>   target/alpha/Kconfig      |  2 ++
>   target/arm/Kconfig        |  6 ++++++
>   target/avr/Kconfig        |  2 ++
>   target/cris/Kconfig       |  2 ++
>   target/hppa/Kconfig       |  2 ++
>   target/i386/Kconfig       |  5 +++++
>   target/m68k/Kconfig       |  2 ++
>   target/microblaze/Kconfig |  2 ++
>   target/mips/Kconfig       |  6 ++++++
>   target/nios2/Kconfig      |  2 ++
>   target/openrisc/Kconfig   |  2 ++
>   target/ppc/Kconfig        |  5 +++++
>   target/riscv/Kconfig      |  5 +++++
>   target/rx/Kconfig         |  2 ++
>   target/s390x/Kconfig      |  2 ++
>   target/sh4/Kconfig        |  2 ++
>   target/sparc/Kconfig      |  5 +++++
>   target/tricore/Kconfig    |  2 ++
>   target/xtensa/Kconfig     |  2 ++
>   22 files changed, 80 insertions(+), 1 deletion(-)
>   create mode 100644 target/Kconfig
>   create mode 100644 target/alpha/Kconfig
>   create mode 100644 target/arm/Kconfig
>   create mode 100644 target/avr/Kconfig
>   create mode 100644 target/cris/Kconfig
>   create mode 100644 target/hppa/Kconfig
>   create mode 100644 target/i386/Kconfig
>   create mode 100644 target/m68k/Kconfig
>   create mode 100644 target/microblaze/Kconfig
>   create mode 100644 target/mips/Kconfig
>   create mode 100644 target/nios2/Kconfig
>   create mode 100644 target/openrisc/Kconfig
>   create mode 100644 target/ppc/Kconfig
>   create mode 100644 target/riscv/Kconfig
>   create mode 100644 target/rx/Kconfig
>   create mode 100644 target/s390x/Kconfig
>   create mode 100644 target/sh4/Kconfig
>   create mode 100644 target/sparc/Kconfig
>   create mode 100644 target/tricore/Kconfig
>   create mode 100644 target/xtensa/Kconfig
> 
> diff --git a/meson.build b/meson.build
> index d8a92666fb..3ddd22ab7a 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1377,7 +1377,8 @@ foreach target : target_dirs
>         command: [minikconf,
>                   get_option('default_devices') ? '--defconfig' : '--allnoconfig',
>                   config_devices_mak, '@DEPFILE@', '@INPUT@',
> -                host_kconfig, accel_kconfig])
> +                host_kconfig, accel_kconfig,
> +                'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'])
>   
>       config_devices_data = configuration_data()
>       config_devices = keyval.load(config_devices_mak)
> diff --git a/Kconfig b/Kconfig
> index d52ebd839b..fb6a24a2de 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -1,5 +1,6 @@
>   source Kconfig.host
>   source backends/Kconfig
>   source accel/Kconfig
> +source target/Kconfig
>   source hw/Kconfig
>   source semihosting/Kconfig
> diff --git a/target/Kconfig b/target/Kconfig
> new file mode 100644
> index 0000000000..ae7f24fc66
> --- /dev/null
> +++ b/target/Kconfig
> @@ -0,0 +1,19 @@
> +source alpha/Kconfig
> +source arm/Kconfig
> +source avr/Kconfig
> +source cris/Kconfig
> +source hppa/Kconfig
> +source i386/Kconfig
> +source m68k/Kconfig
> +source microblaze/Kconfig
> +source mips/Kconfig
> +source nios2/Kconfig
> +source openrisc/Kconfig
> +source ppc/Kconfig
> +source riscv/Kconfig
> +source rx/Kconfig
> +source s390x/Kconfig
> +source sh4/Kconfig
> +source sparc/Kconfig
> +source tricore/Kconfig
> +source xtensa/Kconfig
> diff --git a/target/alpha/Kconfig b/target/alpha/Kconfig
> new file mode 100644
> index 0000000000..267222c05b
> --- /dev/null
> +++ b/target/alpha/Kconfig
> @@ -0,0 +1,2 @@
> +config ALPHA
> +    bool
> diff --git a/target/arm/Kconfig b/target/arm/Kconfig
> new file mode 100644
> index 0000000000..3f3394a22b
> --- /dev/null
> +++ b/target/arm/Kconfig
> @@ -0,0 +1,6 @@
> +config ARM
> +    bool
> +
> +config AARCH64
> +    bool
> +    select ARM
> diff --git a/target/avr/Kconfig b/target/avr/Kconfig
> new file mode 100644
> index 0000000000..155592d353
> --- /dev/null
> +++ b/target/avr/Kconfig
> @@ -0,0 +1,2 @@
> +config AVR
> +    bool
> diff --git a/target/cris/Kconfig b/target/cris/Kconfig
> new file mode 100644
> index 0000000000..3fdc309fbb
> --- /dev/null
> +++ b/target/cris/Kconfig
> @@ -0,0 +1,2 @@
> +config CRIS
> +    bool
> diff --git a/target/hppa/Kconfig b/target/hppa/Kconfig
> new file mode 100644
> index 0000000000..395a35d799
> --- /dev/null
> +++ b/target/hppa/Kconfig
> @@ -0,0 +1,2 @@
> +config HPPA
> +    bool
> diff --git a/target/i386/Kconfig b/target/i386/Kconfig
> new file mode 100644
> index 0000000000..ce6968906e
> --- /dev/null
> +++ b/target/i386/Kconfig
> @@ -0,0 +1,5 @@
> +config I386
> +    bool
> +
> +config X86_64
> +    bool
> diff --git a/target/m68k/Kconfig b/target/m68k/Kconfig
> new file mode 100644
> index 0000000000..23debad519
> --- /dev/null
> +++ b/target/m68k/Kconfig
> @@ -0,0 +1,2 @@
> +config M68K
> +    bool
> diff --git a/target/microblaze/Kconfig b/target/microblaze/Kconfig
> new file mode 100644
> index 0000000000..a5410d9218
> --- /dev/null
> +++ b/target/microblaze/Kconfig
> @@ -0,0 +1,2 @@
> +config MICROBLAZE
> +    bool
> diff --git a/target/mips/Kconfig b/target/mips/Kconfig
> new file mode 100644
> index 0000000000..6adf145354
> --- /dev/null
> +++ b/target/mips/Kconfig
> @@ -0,0 +1,6 @@
> +config MIPS
> +    bool
> +
> +config MIPS64
> +    bool
> +    select MIPS
> diff --git a/target/nios2/Kconfig b/target/nios2/Kconfig
> new file mode 100644
> index 0000000000..1529ab8950
> --- /dev/null
> +++ b/target/nios2/Kconfig
> @@ -0,0 +1,2 @@
> +config NIOS2
> +    bool
> diff --git a/target/openrisc/Kconfig b/target/openrisc/Kconfig
> new file mode 100644
> index 0000000000..e0da4ac1df
> --- /dev/null
> +++ b/target/openrisc/Kconfig
> @@ -0,0 +1,2 @@
> +config OPENRISC
> +    bool
> diff --git a/target/ppc/Kconfig b/target/ppc/Kconfig
> new file mode 100644
> index 0000000000..3ff152051a
> --- /dev/null
> +++ b/target/ppc/Kconfig
> @@ -0,0 +1,5 @@
> +config PPC
> +    bool
> +
> +config PPC64
> +    bool
> diff --git a/target/riscv/Kconfig b/target/riscv/Kconfig
> new file mode 100644
> index 0000000000..b9e5932f13
> --- /dev/null
> +++ b/target/riscv/Kconfig
> @@ -0,0 +1,5 @@
> +config RISCV32
> +    bool
> +
> +config RISCV64
> +    bool
> diff --git a/target/rx/Kconfig b/target/rx/Kconfig
> new file mode 100644
> index 0000000000..aceb5ed28f
> --- /dev/null
> +++ b/target/rx/Kconfig
> @@ -0,0 +1,2 @@
> +config RX
> +    bool
> diff --git a/target/s390x/Kconfig b/target/s390x/Kconfig
> new file mode 100644
> index 0000000000..72da48136c
> --- /dev/null
> +++ b/target/s390x/Kconfig
> @@ -0,0 +1,2 @@
> +config S390X
> +    bool
> diff --git a/target/sh4/Kconfig b/target/sh4/Kconfig
> new file mode 100644
> index 0000000000..2397c86028
> --- /dev/null
> +++ b/target/sh4/Kconfig
> @@ -0,0 +1,2 @@
> +config SH4
> +    bool
> diff --git a/target/sparc/Kconfig b/target/sparc/Kconfig
> new file mode 100644
> index 0000000000..70cc0f3a21
> --- /dev/null
> +++ b/target/sparc/Kconfig
> @@ -0,0 +1,5 @@
> +config SPARC
> +    bool
> +
> +config SPARC64
> +    bool
> diff --git a/target/tricore/Kconfig b/target/tricore/Kconfig
> new file mode 100644
> index 0000000000..9313409309
> --- /dev/null
> +++ b/target/tricore/Kconfig
> @@ -0,0 +1,2 @@
> +config TRICORE
> +    bool
> diff --git a/target/xtensa/Kconfig b/target/xtensa/Kconfig
> new file mode 100644
> index 0000000000..a3c8dc7f6d
> --- /dev/null
> +++ b/target/xtensa/Kconfig
> @@ -0,0 +1,2 @@
> +config XTENSA
> +    bool
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL
  2021-06-21 15:21 ` [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Alex Bennée
  2021-06-21 19:00   ` Philippe Mathieu-Daudé
@ 2021-07-06 10:53   ` Thomas Huth
  1 sibling, 0 replies; 13+ messages in thread
From: Thomas Huth @ 2021-07-06 10:53 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: pbonzini, Richard Henderson, Peter Maydell,
	open list:ARM TCG CPUs

On 21/06/2021 17.21, Alex Bennée wrote:
> We need this functionality due to:
> 
>      /* XRAM IRQs get ORed into a single line.  */
>      object_initialize_child(OBJECT(s), "xram-irq-orgate",
>                              &s->lpd.xram.irq_orgate, TYPE_OR_IRQ);
> 
> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>   hw/arm/Kconfig | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
> index 647b5c8b43..528f71bb9d 100644
> --- a/hw/arm/Kconfig
> +++ b/hw/arm/Kconfig
> @@ -368,6 +368,7 @@ config XLNX_VERSAL
>       select UNIMP
>       select XLNX_ZDMA
>       select XLNX_ZYNQMP
> +    select OR_IRQ
>   
>   config NPCM7XX
>       bool
> 

Reviewed-by: Thomas Huth <thuth@redhat.com>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices
  2021-06-21 15:21 ` [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices Alex Bennée
@ 2021-07-06 11:04   ` Thomas Huth
  2021-07-06 12:14   ` Philippe Mathieu-Daudé
  1 sibling, 0 replies; 13+ messages in thread
From: Thomas Huth @ 2021-07-06 11:04 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: pbonzini, Richard Henderson, Peter Maydell,
	open list:ARM TCG CPUs

On 21/06/2021 17.21, Alex Bennée wrote:
> We currently select CONFIG_V7M for a bunch of our m-profile devices.
> The last sticking point is translate.c which cannot be compiled
> without expecting v7m support. Express this dependency in Kconfig
> rather than in default devices as a stepping stone to a fully
> configurable translate.c.
> 
> While we are at it we also need to select ARM_COMPATIBLE_SEMIHOSTING
> as that is implied for M profile machines.
> 
> Acked-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> 
> ---
> vconfigs
>    - cherry pick from re-factor
>    - minor tweak to subject line
> ---
>   default-configs/devices/arm-softmmu.mak | 3 ---
>   hw/arm/Kconfig                          | 3 +++
>   2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/default-configs/devices/arm-softmmu.mak b/default-configs/devices/arm-softmmu.mak
> index 0500156a0c..4114aa9e35 100644
> --- a/default-configs/devices/arm-softmmu.mak
> +++ b/default-configs/devices/arm-softmmu.mak
> @@ -1,8 +1,5 @@
>   # Default configuration for arm-softmmu
>   
> -# TODO: ARM_V7M is currently always required - make this more flexible!
> -CONFIG_ARM_V7M=y
> -
>   # CONFIG_PCI_DEVICES=n
>   # CONFIG_TEST_DEVICES=n
>   
> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
> index 528f71bb9d..062fe94b64 100644
> --- a/hw/arm/Kconfig
> +++ b/hw/arm/Kconfig
> @@ -296,7 +296,10 @@ config ZYNQ
>   
>   config ARM_V7M
>       bool
> +    # currently v7M must be included in a TCG build due to translate.c
> +    default y if TCG && (ARM || AARCH64)
>       select PTIMER
> +    select ARM_COMPATIBLE_SEMIHOSTING

Reviewed-by: Thomas Huth <thuth@redhat.com>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices
  2021-06-21 15:21 ` [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices Alex Bennée
  2021-07-06 11:04   ` Thomas Huth
@ 2021-07-06 12:14   ` Philippe Mathieu-Daudé
  1 sibling, 0 replies; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-06 12:14 UTC (permalink / raw)
  To: Alex Bennée, qemu-devel
  Cc: Peter Maydell, thuth, Richard Henderson, open list:ARM TCG CPUs,
	pbonzini

On 6/21/21 5:21 PM, Alex Bennée wrote:
> We currently select CONFIG_V7M for a bunch of our m-profile devices.
> The last sticking point is translate.c which cannot be compiled
> without expecting v7m support. Express this dependency in Kconfig
> rather than in default devices as a stepping stone to a fully
> configurable translate.c.
> 
> While we are at it we also need to select ARM_COMPATIBLE_SEMIHOSTING
> as that is implied for M profile machines.
> 
> Acked-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> 
> ---
> vconfigs
>   - cherry pick from re-factor
>   - minor tweak to subject line
> ---
>  default-configs/devices/arm-softmmu.mak | 3 ---
>  hw/arm/Kconfig                          | 3 +++
>  2 files changed, 3 insertions(+), 3 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 1/5] meson: Introduce target-specific Kconfig
  2021-07-06 10:52   ` Thomas Huth
@ 2021-07-06 12:47     ` Philippe Mathieu-Daudé
  2021-07-06 13:10       ` Thomas Huth
  0 siblings, 1 reply; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-06 12:47 UTC (permalink / raw)
  To: Thomas Huth, Alex Bennée, qemu-devel
  Cc: Peter Maydell, Cornelia Huck, David Hildenbrand, Bin Meng,
	Mark Cave-Ayland, Jiaxun Yang, Laurent Vivier, Max Filippov,
	Alistair Francis, Marek Vasut, Yoshinori Sato,
	open list:PowerPC TCG CPUs, Artyom Tarasenko, Aleksandar Rikalo,
	Richard Henderson, Greg Kurz, open list:S390 general arch...,
	open list:ARM TCG CPUs, Michael Rolnik, Stafford Horne,
	David Gibson, open list:RISC-V TCG CPUs, Bastian Koppelmann,
	Chris Wulff, Palmer Dabbelt, pbonzini, Aurelien Jarno

On 7/6/21 12:52 PM, Thomas Huth wrote:
> On 21/06/2021 17.21, Alex Bennée wrote:
>> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>
>> Add a target-specific Kconfig. We need the definitions in Kconfig so
>> the minikconf tool can verify they exit. However CONFIG_FOO is only
> 
> s/exit/exist/ ?
> 
>> enabled for target foo via the meson.build rules.
>>
>> Two architecture have a particularity, ARM and MIPS:
>> their 64-bit version include the 32-bit subset.
> 
> Why do you mention these here, but not x86, Sparc, PPC and RISC-V which
> also have 32-bit and 64-bit variants?

Because we consider them as different targets, they don't include
(kselect) the subset.

> 
> The patch itself looks fine to me, so once you've clarified the commit
> message:
> 
> Reviewed-by: Thomas Huth <thuth@redhat.com>
> 
> 
>>
>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>
>> ---
>> vajb:
>>    - removed targets that no longer exist
>>    - reword commit message to show why we need the Kconfigs
>> ---

>> diff --git a/target/arm/Kconfig b/target/arm/Kconfig
>> new file mode 100644
>> index 0000000000..3f3394a22b
>> --- /dev/null
>> +++ b/target/arm/Kconfig
>> @@ -0,0 +1,6 @@
>> +config ARM
>> +    bool
>> +
>> +config AARCH64
>> +    bool
>> +    select ARM

>> diff --git a/target/mips/Kconfig b/target/mips/Kconfig
>> new file mode 100644
>> index 0000000000..6adf145354
>> --- /dev/null
>> +++ b/target/mips/Kconfig
>> @@ -0,0 +1,6 @@
>> +config MIPS
>> +    bool
>> +
>> +config MIPS64
>> +    bool
>> +    select MIPS

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 1/5] meson: Introduce target-specific Kconfig
  2021-07-06 12:47     ` Philippe Mathieu-Daudé
@ 2021-07-06 13:10       ` Thomas Huth
  2021-07-06 13:40         ` Philippe Mathieu-Daudé
  2021-07-06 13:52         ` Alex Bennée
  0 siblings, 2 replies; 13+ messages in thread
From: Thomas Huth @ 2021-07-06 13:10 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, Alex Bennée, qemu-devel
  Cc: Peter Maydell, Cornelia Huck, David Hildenbrand, Bin Meng,
	Mark Cave-Ayland, Jiaxun Yang, Laurent Vivier, Max Filippov,
	Alistair Francis, Marek Vasut, Yoshinori Sato,
	open list:PowerPC TCG CPUs, Artyom Tarasenko, Aleksandar Rikalo,
	Richard Henderson, Greg Kurz, open list:S390 general arch...,
	open list:ARM TCG CPUs, Michael Rolnik, Stafford Horne,
	David Gibson, open list:RISC-V TCG CPUs, Bastian Koppelmann,
	Chris Wulff, Palmer Dabbelt, pbonzini, Aurelien Jarno

On 06/07/2021 14.47, Philippe Mathieu-Daudé wrote:
> On 7/6/21 12:52 PM, Thomas Huth wrote:
>> On 21/06/2021 17.21, Alex Bennée wrote:
>>> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>>
>>> Add a target-specific Kconfig. We need the definitions in Kconfig so
>>> the minikconf tool can verify they exit. However CONFIG_FOO is only
>>
>> s/exit/exist/ ?
>>
>>> enabled for target foo via the meson.build rules.
>>>
>>> Two architecture have a particularity, ARM and MIPS:
>>> their 64-bit version include the 32-bit subset.
>>
>> Why do you mention these here, but not x86, Sparc, PPC and RISC-V which
>> also have 32-bit and 64-bit variants?
> 
> Because we consider them as different targets, they don't include
> (kselect) the subset.

And why is that done this way? There is certainly a big difference between 
Sparc and Sparc64, but for x86 and PPC, the 64-bit variant is a superset of 
the 32-bit variant, so why is it done different here compared to ARM and MIPS?

  Thomas


>>
>> The patch itself looks fine to me, so once you've clarified the commit
>> message:
>>
>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>>
>>
>>>
>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>> Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
>>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>>
>>> ---
>>> vajb:
>>>     - removed targets that no longer exist
>>>     - reword commit message to show why we need the Kconfigs
>>> ---
> 
>>> diff --git a/target/arm/Kconfig b/target/arm/Kconfig
>>> new file mode 100644
>>> index 0000000000..3f3394a22b
>>> --- /dev/null
>>> +++ b/target/arm/Kconfig
>>> @@ -0,0 +1,6 @@
>>> +config ARM
>>> +    bool
>>> +
>>> +config AARCH64
>>> +    bool
>>> +    select ARM
> 
>>> diff --git a/target/mips/Kconfig b/target/mips/Kconfig
>>> new file mode 100644
>>> index 0000000000..6adf145354
>>> --- /dev/null
>>> +++ b/target/mips/Kconfig
>>> @@ -0,0 +1,6 @@
>>> +config MIPS
>>> +    bool
>>> +
>>> +config MIPS64
>>> +    bool
>>> +    select MIPS
> 

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 1/5] meson: Introduce target-specific Kconfig
  2021-07-06 13:10       ` Thomas Huth
@ 2021-07-06 13:40         ` Philippe Mathieu-Daudé
  2021-07-06 13:52         ` Alex Bennée
  1 sibling, 0 replies; 13+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-06 13:40 UTC (permalink / raw)
  To: Thomas Huth, Alex Bennée, qemu-devel
  Cc: Peter Maydell, Chris Wulff, David Hildenbrand, Bin Meng,
	Mark Cave-Ayland, Jiaxun Yang, Max Filippov, Alistair Francis,
	Marek Vasut, Yoshinori Sato, Palmer Dabbelt, Artyom Tarasenko,
	Aleksandar Rikalo, Richard Henderson, Greg Kurz,
	open list:S390 general arch..., open list:ARM TCG CPUs,
	Michael Rolnik, Stafford Horne, David Gibson,
	open list:RISC-V TCG CPUs, Bastian Koppelmann, Cornelia Huck,
	Laurent Vivier, open list:PowerPC TCG CPUs, pbonzini,
	Aurelien Jarno

On 7/6/21 3:10 PM, Thomas Huth wrote:
> On 06/07/2021 14.47, Philippe Mathieu-Daudé wrote:
>> On 7/6/21 12:52 PM, Thomas Huth wrote:
>>> On 21/06/2021 17.21, Alex Bennée wrote:
>>>> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>>>
>>>> Add a target-specific Kconfig. We need the definitions in Kconfig so
>>>> the minikconf tool can verify they exit. However CONFIG_FOO is only
>>>
>>> s/exit/exist/ ?
>>>
>>>> enabled for target foo via the meson.build rules.
>>>>
>>>> Two architecture have a particularity, ARM and MIPS:
>>>> their 64-bit version include the 32-bit subset.
>>>
>>> Why do you mention these here, but not x86, Sparc, PPC and RISC-V which
>>> also have 32-bit and 64-bit variants?
>>
>> Because we consider them as different targets, they don't include
>> (kselect) the subset.
> 
> And why is that done this way? There is certainly a big difference
> between Sparc and Sparc64, but for x86 and PPC, the 64-bit variant is a
> superset of the 32-bit variant, so why is it done different here
> compared to ARM and MIPS?

I don't know these targets well. Maybe the 64-bit variants do include
their 32-bit subset. If you know, I can easily send a new patch.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH v1 1/5] meson: Introduce target-specific Kconfig
  2021-07-06 13:10       ` Thomas Huth
  2021-07-06 13:40         ` Philippe Mathieu-Daudé
@ 2021-07-06 13:52         ` Alex Bennée
  1 sibling, 0 replies; 13+ messages in thread
From: Alex Bennée @ 2021-07-06 13:52 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Philippe Mathieu-Daudé, qemu-devel, Peter Maydell,
	Cornelia Huck, David Hildenbrand, Bin Meng, Mark Cave-Ayland,
	Jiaxun Yang, Laurent Vivier, Max Filippov, Alistair Francis,
	Marek Vasut, Yoshinori Sato, open list:PowerPC TCG CPUs,
	Artyom Tarasenko, Aleksandar Rikalo, Richard Henderson, Greg Kurz,
	open list:S390 general arch..., open list:ARM TCG CPUs,
	Michael Rolnik, Stafford Horne, David Gibson,
	open list:RISC-V TCG CPUs, Bastian Koppelmann, Chris Wulff,
	Palmer Dabbelt, pbonzini, Aurelien Jarno


Thomas Huth <thuth@redhat.com> writes:

> On 06/07/2021 14.47, Philippe Mathieu-Daudé wrote:
>> On 7/6/21 12:52 PM, Thomas Huth wrote:
>>> On 21/06/2021 17.21, Alex Bennée wrote:
>>>> From: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>>>
>>>> Add a target-specific Kconfig. We need the definitions in Kconfig so
>>>> the minikconf tool can verify they exit. However CONFIG_FOO is only
>>>
>>> s/exit/exist/ ?
>>>
>>>> enabled for target foo via the meson.build rules.
>>>>
>>>> Two architecture have a particularity, ARM and MIPS:
>>>> their 64-bit version include the 32-bit subset.
>>>
>>> Why do you mention these here, but not x86, Sparc, PPC and RISC-V which
>>> also have 32-bit and 64-bit variants?
>> Because we consider them as different targets, they don't include
>> (kselect) the subset.
>
> And why is that done this way? There is certainly a big difference
> between Sparc and Sparc64, but for x86 and PPC, the 64-bit variant is
> a superset of the 32-bit variant, so why is it done different here
> compared to ARM and MIPS?

Both ARM and MIPS have a somewhat separated set of translate.c functions
which means they can be built as individual units. AFAICT all the others
have a unified translate.c that handles all ISA variants so they
couldn't be built as standalone units if they wanted to.

You are right for AArch64 at least we have to include translate.c to
support AArch32 encoding. But for qemu-arm we skip all the 64 bit stuff
by compilation units:

arm_ss.add(when: 'TARGET_AARCH64', if_true: files(
  'cpu64.c',
  'gdbstub64.c',
  'helper-a64.c',
  'mte_helper.c',
  'pauth_helper.c',
  'sve_helper.c',
  'translate-a64.c',
  'translate-sve.c',
))


>
>  Thomas
>
>
>>>
>>> The patch itself looks fine to me, so once you've clarified the commit
>>> message:
>>>
>>> Reviewed-by: Thomas Huth <thuth@redhat.com>
>>>
>>>
>>>>
>>>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
>>>> Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
>>>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>>>
>>>> ---
>>>> vajb:
>>>>     - removed targets that no longer exist
>>>>     - reword commit message to show why we need the Kconfigs
>>>> ---
>> 
>>>> diff --git a/target/arm/Kconfig b/target/arm/Kconfig
>>>> new file mode 100644
>>>> index 0000000000..3f3394a22b
>>>> --- /dev/null
>>>> +++ b/target/arm/Kconfig
>>>> @@ -0,0 +1,6 @@
>>>> +config ARM
>>>> +    bool
>>>> +
>>>> +config AARCH64
>>>> +    bool
>>>> +    select ARM
>> 
>>>> diff --git a/target/mips/Kconfig b/target/mips/Kconfig
>>>> new file mode 100644
>>>> index 0000000000..6adf145354
>>>> --- /dev/null
>>>> +++ b/target/mips/Kconfig
>>>> @@ -0,0 +1,6 @@
>>>> +config MIPS
>>>> +    bool
>>>> +
>>>> +config MIPS64
>>>> +    bool
>>>> +    select MIPS
>> 


-- 
Alex Bennée

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2021-07-06 13:55 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20210621152120.4465-1-alex.bennee@linaro.org>
2021-06-21 15:21 ` [PATCH v1 1/5] meson: Introduce target-specific Kconfig Alex Bennée
2021-07-06 10:52   ` Thomas Huth
2021-07-06 12:47     ` Philippe Mathieu-Daudé
2021-07-06 13:10       ` Thomas Huth
2021-07-06 13:40         ` Philippe Mathieu-Daudé
2021-07-06 13:52         ` Alex Bennée
2021-06-21 15:21 ` [PATCH v1 2/5] hw/arm: add dependency on OR_IRQ for XLNX_VERSAL Alex Bennée
2021-06-21 19:00   ` Philippe Mathieu-Daudé
2021-06-21 20:00     ` Edgar E. Iglesias
2021-07-06 10:53   ` Thomas Huth
2021-06-21 15:21 ` [PATCH v1 3/5] hw/arm: move CONFIG_V7M out of default-devices Alex Bennée
2021-07-06 11:04   ` Thomas Huth
2021-07-06 12:14   ` Philippe Mathieu-Daudé

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).