[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v6 05/11] target/arm: Restrict ARMv6 cpus to TCG accel
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH v6 05/11] target/arm: Restrict ARMv6 cpus to TCG accel |
Date: |
Sun, 31 Jan 2021 12:50:16 +0100 |
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").
Only enable the following ARMv6 CPUs when TCG is available:
- ARM1136
- ARM1176
- ARM11MPCore
- Cortex-M0
The following machines are no more built when TCG is disabled:
- kzm ARM KZM Emulation Baseboard (ARM1136)
- microbit BBC micro:bit (Cortex-M0)
- n800 Nokia N800 tablet aka. RX-34 (OMAP2420)
- n810 Nokia N810 tablet aka. RX-44 (OMAP2420)
- realview-eb-mpcore ARM RealView Emulation Baseboard (ARM11MPCore)
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
default-configs/devices/arm-softmmu.mak | 2 --
hw/arm/realview.c | 2 +-
tests/qtest/cdrom-test.c | 2 +-
hw/arm/Kconfig | 6 ++++++
target/arm/Kconfig | 4 ++++
5 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/default-configs/devices/arm-softmmu.mak
b/default-configs/devices/arm-softmmu.mak
index 0aad35da0c4..175530595ce 100644
--- a/default-configs/devices/arm-softmmu.mak
+++ b/default-configs/devices/arm-softmmu.mak
@@ -10,9 +10,7 @@ CONFIG_ARM_VIRT=y
CONFIG_CUBIEBOARD=y
CONFIG_EXYNOS4=y
CONFIG_HIGHBANK=y
-CONFIG_FSL_IMX31=y
CONFIG_MUSCA=y
-CONFIG_NSERIES=y
CONFIG_STELLARIS=y
CONFIG_REALVIEW=y
CONFIG_VEXPRESS=y
diff --git a/hw/arm/realview.c b/hw/arm/realview.c
index 2dcf0a4c23e..0606d22da14 100644
--- a/hw/arm/realview.c
+++ b/hw/arm/realview.c
@@ -463,8 +463,8 @@ static void realview_machine_init(void)
{
if (tcg_builtin()) {
type_register_static(&realview_eb_type);
+ type_register_static(&realview_eb_mpcore_type);
}
- type_register_static(&realview_eb_mpcore_type);
type_register_static(&realview_pb_a8_type);
type_register_static(&realview_pbx_a9_type);
}
diff --git a/tests/qtest/cdrom-test.c b/tests/qtest/cdrom-test.c
index 1f1bc26fa7a..cb0409c5a11 100644
--- a/tests/qtest/cdrom-test.c
+++ b/tests/qtest/cdrom-test.c
@@ -224,8 +224,8 @@ int main(int argc, char **argv)
const char *armmachines[] = {
#ifdef CONFIG_TCG
"realview-eb",
-#endif /* CONFIG_TCG */
"realview-eb-mpcore",
+#endif /* CONFIG_TCG */
"realview-pb-a8",
"realview-pbx-a9", "versatileab", "versatilepb", "vexpress-a15",
"vexpress-a9", "virt", NULL
diff --git a/hw/arm/Kconfig b/hw/arm/Kconfig
index 560442bfc5c..6c4bce4d637 100644
--- a/hw/arm/Kconfig
+++ b/hw/arm/Kconfig
@@ -123,6 +123,8 @@ config NETDUINOPLUS2
config NSERIES
bool
+ default y if TCG && ARM
+ select ARM_V6
select OMAP
select TMP105 # tempature sensor
select BLIZZARD # LCD/TV controller
@@ -401,6 +403,8 @@ config FSL_IMX25
config FSL_IMX31
bool
+ default y if TCG && ARM
+ select ARM_V6
select SERIAL
select IMX
select IMX_I2C
@@ -478,11 +482,13 @@ config FSL_IMX6UL
config MICROBIT
bool
+ default y if TCG && ARM
select NRF51_SOC
config NRF51_SOC
bool
select I2C
+ select ARM_V6
select ARM_V7M
select UNIMP
diff --git a/target/arm/Kconfig b/target/arm/Kconfig
index 9b3635617dc..fbb7bba9018 100644
--- a/target/arm/Kconfig
+++ b/target/arm/Kconfig
@@ -14,6 +14,10 @@ config ARM_V5
bool
depends on TCG && ARM
+config ARM_V6
+ bool
+ depends on TCG && ARM
+
config ARM_V7M
bool
select PTIMER
--
2.26.2
- Re: [PATCH v6 03/11] target/arm: Restrict ARMv4 cpus to TCG accel, (continued)
- [PATCH v6 04/11] target/arm: Restrict ARMv5 cpus to TCG accel, Philippe Mathieu-Daudé, 2021/01/31
- [PATCH v6 07/11] target/arm: Restrict ARMv7 M-profile cpus to TCG accel, Philippe Mathieu-Daudé, 2021/01/31
- [PATCH v6 08/11] target/arm: Make m_helper.c optional via CONFIG_ARM_V7M, Philippe Mathieu-Daudé, 2021/01/31
- [PATCH v6 09/11] target/arm: Reorder meson.build rules, Philippe Mathieu-Daudé, 2021/01/31
- [PATCH v6 06/11] target/arm: Restrict ARMv7 R-profile cpus to TCG accel, Philippe Mathieu-Daudé, 2021/01/31
- [PATCH v6 05/11] target/arm: Restrict ARMv6 cpus to TCG accel,
Philippe Mathieu-Daudé <=
- [PATCH v6 10/11] target/arm: Do not build TCG objects when TCG is off, Philippe Mathieu-Daudé, 2021/01/31
- [PATCH v6 11/11] .travis.yml: Add a KVM-only Aarch64 job, Philippe Mathieu-Daudé, 2021/01/31
- Re: [PATCH v6 00/11] Support disabling TCG on ARM (part 2), Claudio Fontana, 2021/01/31