diff mbox series

[v5,07/11] target/arm: Restrict ARMv7 M-profile cpus to TCG accel

Message ID 20210130015227.4071332-8-f4bug@amsat.org (mailing list archive)
State New, archived
Headers show
Series Support disabling TCG on ARM (part 2) | expand

Commit Message

Philippe Mathieu-Daudé Jan. 30, 2021, 1:52 a.m. UTC
A KVM-only build 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
  - lm3s811evb           Stellaris LM3S811EVB
  - 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
  - netduinoplus2        Netduino Plus 2 Machine

We don't need to enforce CONFIG_ARM_V7M in default-configs anymore.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 default-configs/devices/arm-softmmu.mak | 11 -----------
 hw/arm/Kconfig                          | 17 +++++++++++++----
 2 files changed, 13 insertions(+), 15 deletions(-)
diff mbox series

Patch

diff --git a/default-configs/devices/arm-softmmu.mak b/default-configs/devices/arm-softmmu.mak
index ee80bf15150..b72926b8fce 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_ARM_COMPATIBLE_SEMIHOSTING=y
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 320428bf97e..f56c05c00a8 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -16,6 +16,12 @@  config ARM_V7R
     depends on TCG
     select ARM_COMPATIBLE_SEMIHOSTING
 
+config ARM_V7M
+    bool
+    depends on TCG
+    select ARM_COMPATIBLE_SEMIHOSTING
+    select PTIMER
+
 config ARM_VIRT
     bool
     imply PCI_DEVICES
@@ -78,6 +84,7 @@  config EXYNOS4
 
 config HIGHBANK
     bool
+    default y if TCG
     select A9MPCORE
     select A15MPCORE
     select AHCI
@@ -113,6 +120,7 @@  config MAINSTONE
 
 config MUSCA
     bool
+    default y if TCG
     select ARMSSE
     select PL011
     select PL031
@@ -133,10 +141,12 @@  config MUSICPAL
 
 config NETDUINO2
     bool
+    default y if TCG
     select STM32F205_SOC
 
 config NETDUINOPLUS2
     bool
+    default y if TCG
     select STM32F405_SOC
 
 config NSERIES
@@ -258,6 +268,7 @@  config SABRELITE
 
 config STELLARIS
     bool
+    default y if TCG
     select ARM_V7M
     select CMSDK_APB_WATCHDOG
     select I2C
@@ -331,10 +342,6 @@  config ZYNQ
     select XILINX_SPIPS
     select ZYNQ_DEVCFG
 
-config ARM_V7M
-    bool
-    select PTIMER
-
 config ALLWINNER_A10
     bool
     select AHCI
@@ -463,6 +470,7 @@  config ASPEED_SOC
 
 config MPS2
     bool
+    default y if TCG
     select ARMSSE
     select LAN9118
     select MPS2_FPGAIO
@@ -516,6 +524,7 @@  config NRF51_SOC
 
 config EMCRAFT_SF2
     bool
+    default y if TCG
     select MSF2
     select SSI_M25P80