[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PULL 11/35] arm/Kconfig: Do not build TCG-only boards on a KVM-only
|
From: |
Fabiano Rosas |
|
Subject: |
Re: [PULL 11/35] arm/Kconfig: Do not build TCG-only boards on a KVM-only build |
|
Date: |
Thu, 04 May 2023 09:27:50 -0300 |
Thomas Huth <thuth@redhat.com> writes:
> On 02/05/2023 14.14, Peter Maydell wrote:
>> From: Fabiano Rosas <farosas@suse.de>
>>
>> Move all the CONFIG_FOO=y from default.mak into "default y if TCG"
>> statements in Kconfig. That way they won't be selected when
>> CONFIG_TCG=n.
>>
>> I'm leaving CONFIG_ARM_VIRT in default.mak because it allows us to
>> keep the two default.mak files not empty and keep aarch64-default.mak
>> including arm-default.mak. That way we don't surprise anyone that's
>> used to altering these files.
>>
>> With this change we can start building with --disable-tcg.
>>
>> Signed-off-by: Fabiano Rosas <farosas@suse.de>
>> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
>> Message-id: 20230426180013.14814-12-farosas@suse.de
>> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
>> ---
>> configs/devices/aarch64-softmmu/default.mak | 4 --
>> configs/devices/arm-softmmu/default.mak | 37 ------------------
>> hw/arm/Kconfig | 42 ++++++++++++++++++++-
>> 3 files changed, 41 insertions(+), 42 deletions(-)
>>
>> diff --git a/configs/devices/aarch64-softmmu/default.mak
>> b/configs/devices/aarch64-softmmu/default.mak
>> index cf43ac8da11..70e05a197dc 100644
>> --- a/configs/devices/aarch64-softmmu/default.mak
>> +++ b/configs/devices/aarch64-softmmu/default.mak
>> @@ -2,7 +2,3 @@
>>
>> # We support all the 32 bit boards so need all their config
>> include ../arm-softmmu/default.mak
>> -
>> -CONFIG_XLNX_ZYNQMP_ARM=y
>> -CONFIG_XLNX_VERSAL=y
>> -CONFIG_SBSA_REF=y
>> diff --git a/configs/devices/arm-softmmu/default.mak
>> b/configs/devices/arm-softmmu/default.mak
>> index cb3e5aea657..647fbce88d3 100644
>> --- a/configs/devices/arm-softmmu/default.mak
>> +++ b/configs/devices/arm-softmmu/default.mak
>> @@ -4,40 +4,3 @@
>> # CONFIG_TEST_DEVICES=n
>>
>> CONFIG_ARM_VIRT=y
>> -CONFIG_CUBIEBOARD=y
>> -CONFIG_EXYNOS4=y
>> -CONFIG_HIGHBANK=y
>> -CONFIG_INTEGRATOR=y
>> -CONFIG_FSL_IMX31=y
>> -CONFIG_MUSICPAL=y
>> -CONFIG_MUSCA=y
>> -CONFIG_CHEETAH=y
>> -CONFIG_SX1=y
>> -CONFIG_NSERIES=y
>> -CONFIG_STELLARIS=y
>> -CONFIG_STM32VLDISCOVERY=y
>> -CONFIG_REALVIEW=y
>> -CONFIG_VERSATILE=y
>> -CONFIG_VEXPRESS=y
>> -CONFIG_ZYNQ=y
>> -CONFIG_MAINSTONE=y
>> -CONFIG_GUMSTIX=y
>> -CONFIG_SPITZ=y
>> -CONFIG_TOSA=y
>> -CONFIG_Z2=y
>> -CONFIG_NPCM7XX=y
>> -CONFIG_COLLIE=y
>> -CONFIG_ASPEED_SOC=y
>> -CONFIG_NETDUINO2=y
>> -CONFIG_NETDUINOPLUS2=y
>> -CONFIG_OLIMEX_STM32_H405=y
>> -CONFIG_MPS2=y
>> -CONFIG_RASPI=y
>> -CONFIG_DIGIC=y
>> -CONFIG_SABRELITE=y
>> -CONFIG_EMCRAFT_SF2=y
>> -CONFIG_MICROBIT=y
>> -CONFIG_FSL_IMX25=y
>> -CONFIG_FSL_IMX7=y
>> -CONFIG_FSL_IMX6UL=y
>> -CONFIG_ALLWINNER_H3=y
>> diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
>> index 87c1a29c912..2d7c4579559 100644
>> --- a/hw/arm/Kconfig
>> +++ b/hw/arm/Kconfig
>> @@ -35,20 +35,24 @@ config ARM_VIRT
>>
>> config CHEETAH
>> bool
>> + default y if TCG && ARM
>> select OMAP
>> select TSC210X
>>
>> config CUBIEBOARD
>> bool
>> + default y if TCG && ARM
>> select ALLWINNER_A10
> ...
>
> Hi!
>
> Sorry for not noticing this earlier, but I have to say that I really dislike
> this change, since it very much changes the way we did our machine
> configuration so far.
> Until now, you could simply go to configs/devices/*-softmmu/*.mak and only
> select the machines you wanted to have with "...=y" and delete everything
> else. Now you have to know *all* the machines that you do *not* want to have
> in your build and disable them with "...=n" in that file. That's quite ugly,
> especially for the arm target that has so many machines. (ok, you could also
> do a "--without-default-devices" configuration to get rid of the machines,
> but that also disables all other kind of devices that you then have to
> specify manually).
>
Would leaving the CONFIGs as 'n', but commented out in the .mak files be
of any help? If I understand your use case, you were probably just
deleting the CONFIG=y for the boards you don't want. So now you'd be
uncommenting the CONFIG=n instead.
Alternatively, we could revert the .mak part of this change, convert
default.mak into tcg.mak and kvm.mak, and use those transparently
depending on whether --disable-tcg is present in the configure line.
But there's probably a better way still that I'm not seeing here, let's
see what others think.
- [PULL 10/35] arm/Kconfig: Always select SEMIHOSTING when TCG is present, (continued)
- [PULL 10/35] arm/Kconfig: Always select SEMIHOSTING when TCG is present, Peter Maydell, 2023/05/02
- [PULL 06/35] tests/qtest: Adjust and document query-cpu-model-expansion test for arm, Peter Maydell, 2023/05/02
- [PULL 08/35] tests/qtest: Fix tests when no KVM or TCG are present, Peter Maydell, 2023/05/02
- [PULL 12/35] tests/qtest: Restrict tpm-tis-i2c-test to CONFIG_TCG, Peter Maydell, 2023/05/02
- [PULL 13/35] gitlab-ci: Check building KVM-only aarch64 target, Peter Maydell, 2023/05/02
- [PULL 17/35] softmmu: Don't use 'singlestep' global in QMP and HMP commands, Peter Maydell, 2023/05/02
- [PULL 21/35] Document that -singlestep command line option is deprecated, Peter Maydell, 2023/05/02
- [PULL 18/35] accel/tcg: Use one_insn_per_tb global instead of old singlestep global, Peter Maydell, 2023/05/02
- [PULL 11/35] arm/Kconfig: Do not build TCG-only boards on a KVM-only build, Peter Maydell, 2023/05/02
- [PULL 29/35] hw/arm/aspeed: Use arm_write_bootloader() to write the bootloader, Peter Maydell, 2023/05/02
- [PULL 20/35] bsd-user: Add '-one-insn-per-tb' option equivalent to '-singlestep', Peter Maydell, 2023/05/02
- [PULL 19/35] linux-user: Add '-one-insn-per-tb' option equivalent to '-singlestep', Peter Maydell, 2023/05/02
- [PULL 07/35] target/arm: move cpu_tcg to tcg/cpu32.c, Peter Maydell, 2023/05/02
- [PULL 30/35] hw/arm/raspi: Use arm_write_bootloader() to write boot code, Peter Maydell, 2023/05/02
- [PULL 34/35] hw/sd/allwinner-sdhost: Correctly byteswap descriptor fields, Peter Maydell, 2023/05/02
- [PULL 35/35] hw/net/allwinner-sun8i-emac: Correctly byteswap descriptor fields, Peter Maydell, 2023/05/02
- Re: [PULL 00/35] target-arm queue, Richard Henderson, 2023/05/02