On 1/31/21 12:50 PM, Philippe Mathieu-Daudé wrote: > KVM requires the target cpu to be at least ARMv8 architecture > (support on ARMv7 has been dropped in commit 82bf7ae84ce: > "target/arm: Remove KVM support for 32-bit Arm hosts"). > > Beside, KVM only supports A-profile, thus won't be able to run > M-profile cpus. > > Only enable the following ARMv7 M-Profile CPUs when TCG is available: > > - Cortex-M0 > - Cortex-M3 > - Cortex-M4 > - Cortex-M33 > > The following machines are no more built when TCG is disabled: > > - emcraft-sf2 SmartFusion2 SOM kit from Emcraft (M2S010) > - highbank Calxeda Highbank (ECX-1000) > - lm3s6965evb Stellaris LM3S6965EVB (Cortex-M3) > - lm3s811evb Stellaris LM3S811EVB (Cortex-M3) > - midway Calxeda Midway (ECX-2000) > - mps2-an385 ARM MPS2 with AN385 FPGA image for Cortex-M3 > - mps2-an386 ARM MPS2 with AN386 FPGA image for Cortex-M4 > - mps2-an500 ARM MPS2 with AN500 FPGA image for Cortex-M7 > - mps2-an505 ARM MPS2 with AN505 FPGA image for Cortex-M33 > - mps2-an511 ARM MPS2 with AN511 DesignStart FPGA image for Cortex-M3 > - mps2-an521 ARM MPS2 with AN521 FPGA image for dual Cortex-M33 > - musca-a ARM Musca-A board (dual Cortex-M33) > - musca-b1 ARM Musca-B1 board (dual Cortex-M33) > - netduino2 Netduino 2 Machine (Cortex-M3) > - netduinoplus2 Netduino Plus 2 Machine(Cortex-M4) > > We don't need to enforce CONFIG_ARM_V7M in default-configs anymore. > > Signed-off-by: Philippe Mathieu-Daudé <f4bug@xxxxxxxxx> > --- > default-configs/devices/arm-softmmu.mak | 11 ----------- > hw/arm/Kconfig | 7 +++++++ > target/arm/Kconfig | 1 + > 3 files changed, 8 insertions(+), 11 deletions(-) > > diff --git a/default-configs/devices/arm-softmmu.mak b/default-configs/devices/arm-softmmu.mak > index 175530595ce..0fc80d7d6df 100644 > --- a/default-configs/devices/arm-softmmu.mak > +++ b/default-configs/devices/arm-softmmu.mak > @@ -1,28 +1,17 @@ > # 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 > > CONFIG_ARM_VIRT=y > CONFIG_CUBIEBOARD=y > CONFIG_EXYNOS4=y > -CONFIG_HIGHBANK=y > -CONFIG_MUSCA=y > -CONFIG_STELLARIS=y > CONFIG_REALVIEW=y > CONFIG_VEXPRESS=y > CONFIG_ZYNQ=y > CONFIG_NPCM7XX=y > -CONFIG_NETDUINO2=y > -CONFIG_NETDUINOPLUS2=y > -CONFIG_MPS2=y > CONFIG_RASPI=y > CONFIG_SABRELITE=y > -CONFIG_EMCRAFT_SF2=y > -CONFIG_MICROBIT=y > CONFIG_FSL_IMX7=y > CONFIG_FSL_IMX6UL=y > CONFIG_ALLWINNER_H3=y > diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig > index 4baf1f97694..62f8b0d24e7 100644 > --- a/hw/arm/Kconfig > +++ b/hw/arm/Kconfig > @@ -60,6 +60,7 @@ config EXYNOS4 > > config HIGHBANK > bool > + default y if TCG && ARM > select A9MPCORE > select A15MPCORE > select AHCI > @@ -95,6 +96,7 @@ config MAINSTONE > > config MUSCA > bool > + default y if TCG && ARM > select ARMSSE > select PL011 > select PL031 > @@ -115,10 +117,12 @@ config MUSICPAL > > config NETDUINO2 > bool > + default y if TCG && ARM > select STM32F205_SOC > > config NETDUINOPLUS2 > bool > + default y if TCG && ARM > select STM32F405_SOC > > config NSERIES > @@ -240,6 +244,7 @@ config SABRELITE > > config STELLARIS > bool > + default y if TCG && ARM > select ARM_V7M > select CMSDK_APB_WATCHDOG > select I2C > @@ -443,6 +448,7 @@ config ASPEED_SOC > > config MPS2 > bool > + default y if TCG && ARM > select ARMSSE > select LAN9118 > select MPS2_FPGAIO > @@ -496,6 +502,7 @@ config NRF51_SOC > > config EMCRAFT_SF2 > bool > + default y if TCG && ARM > select MSF2 > select SSI_M25P80 > > diff --git a/target/arm/Kconfig b/target/arm/Kconfig > index 4dc96c46520..07a2fad7a2b 100644 > --- a/target/arm/Kconfig > +++ b/target/arm/Kconfig > @@ -24,4 +24,5 @@ config ARM_V7R > > config ARM_V7M > bool > + depends on TCG && ARM > select PTIMER > Acked-by: Claudio Fontana <cfontana@xxxxxxx>