Skip to content

Commit a6d5433

Browse files
committed
MIPS: introduce Kconfig for MIPS VZ
Since MIPS/KVM only supports hardware virtualization using MIPS VZ, do not enable KVM blindly. Use a new Kconfig symbol CPU_SUPPORTS_VZ and do not enable it for R2 processors. Cc: Thomas Bogendoerfer <[email protected]> Signed-off-by: Paolo Bonzini <[email protected]>
1 parent 61df71e commit a6d5433

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

arch/mips/Kconfig

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1250,6 +1250,7 @@ config CPU_LOONGSON64
12501250
select CPU_SUPPORTS_HIGHMEM
12511251
select CPU_SUPPORTS_HUGEPAGES
12521252
select CPU_SUPPORTS_MSA
1253+
select CPU_SUPPORTS_VZ
12531254
select CPU_DIEI_BROKEN if !LOONGSON3_ENHANCEMENT
12541255
select CPU_MIPSR2_IRQ_VI
12551256
select DMA_NONCOHERENT
@@ -1389,6 +1390,7 @@ config CPU_MIPS32_R5
13891390
select CPU_SUPPORTS_32BIT_KERNEL
13901391
select CPU_SUPPORTS_HIGHMEM
13911392
select CPU_SUPPORTS_MSA
1393+
select CPU_SUPPORTS_VZ
13921394
select HAVE_KVM
13931395
select MIPS_O32_FP64_SUPPORT
13941396
help
@@ -1405,6 +1407,7 @@ config CPU_MIPS32_R6
14051407
select CPU_SUPPORTS_32BIT_KERNEL
14061408
select CPU_SUPPORTS_HIGHMEM
14071409
select CPU_SUPPORTS_MSA
1410+
select CPU_SUPPORTS_VZ
14081411
select HAVE_KVM
14091412
select MIPS_O32_FP64_SUPPORT
14101413
help
@@ -1459,6 +1462,7 @@ config CPU_MIPS64_R5
14591462
select CPU_SUPPORTS_HUGEPAGES
14601463
select CPU_SUPPORTS_MSA
14611464
select MIPS_O32_FP64_SUPPORT if 32BIT || MIPS32_O32
1465+
select CPU_SUPPORTS_VZ
14621466
select HAVE_KVM
14631467
help
14641468
Choose this option to build a kernel for release 5 or later of the
@@ -1477,6 +1481,7 @@ config CPU_MIPS64_R6
14771481
select CPU_SUPPORTS_HUGEPAGES
14781482
select CPU_SUPPORTS_MSA
14791483
select MIPS_O32_FP64_SUPPORT if 32BIT || MIPS32_O32
1484+
select CPU_SUPPORTS_VZ
14801485
select HAVE_KVM
14811486
help
14821487
Choose this option to build a kernel for release 6 or later of the
@@ -1492,6 +1497,7 @@ config CPU_P5600
14921497
select CPU_SUPPORTS_HIGHMEM
14931498
select CPU_SUPPORTS_MSA
14941499
select CPU_SUPPORTS_CPUFREQ
1500+
select CPU_SUPPORTS_VZ
14951501
select CPU_MIPSR2_IRQ_VI
14961502
select CPU_MIPSR2_IRQ_EI
14971503
select HAVE_KVM
@@ -1614,6 +1620,7 @@ config CPU_CAVIUM_OCTEON
16141620
select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
16151621
select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
16161622
select MIPS_L1_CACHE_SHIFT_7
1623+
select CPU_SUPPORTS_VZ
16171624
select HAVE_KVM
16181625
help
16191626
The Cavium Octeon processor is a highly integrated chip containing
@@ -1969,6 +1976,8 @@ config CPU_SUPPORTS_ADDRWINCFG
19691976
config CPU_SUPPORTS_HUGEPAGES
19701977
bool
19711978
depends on !(32BIT && (PHYS_ADDR_T_64BIT || EVA))
1979+
config CPU_SUPPORTS_VZ
1980+
bool
19721981
config MIPS_PGD_C0_CONTEXT
19731982
bool
19741983
depends on 64BIT

arch/mips/kvm/Kconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ if VIRTUALIZATION
1717

1818
config KVM
1919
tristate "Kernel-based Virtual Machine (KVM) support"
20-
depends on HAVE_KVM
20+
depends on CPU_SUPPORTS_VZ
2121
depends on MIPS_FP_SUPPORT
2222
select EXPORT_UASM
2323
select KVM_COMMON

0 commit comments

Comments
 (0)