aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/Kconfig
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@tilera.com>2013-05-02 15:29:04 -0400
committerChris Metcalf <cmetcalf@tilera.com>2013-05-02 16:20:31 -0400
commitc539914dcd9a68c63305e055b14115a6a19578a8 (patch)
treeb422139d5d4628c8472fdf740dced263bc238c30 /arch/tile/Kconfig
parentc1be5a5b1b355d40e6cf79cc979eb66dafa24ad1 (diff)
tile: support new Tilera hypervisor
The Tilera hypervisor shipped in releases up through MDE 4.1 launches the client operating system (i.e. Linux) at privilege level 1 (PL1). Starting with MDE 4.2, as part of the work to enable KVM, the Tilera hypervisor launches Linux at PL2 instead. This commit makes the KERNEL_PL option default to 2 for tilegx, while still saying at 1 for tilepro, which doesn't have an updated hypervisor. It also explains how and when you might want to choose another value. In addition, we change a small buglet in the on-chip Ethernet driver, where we were failing to use the KERNEL_PL constant in an API call. To make the transition cleaner, this change also provides the updated hv_init() API for the new hypervisor that supports announcing Linux's compiled-in PL, so the hypervisor can generate a suitable error in the case of a mismatched hypervisor and Linux binary. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> Cc: stable@vger.linux.org
Diffstat (limited to 'arch/tile/Kconfig')
-rw-r--r--arch/tile/Kconfig14
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/tile/Kconfig b/arch/tile/Kconfig
index 25877aebc685..41a2a0becc18 100644
--- a/arch/tile/Kconfig
+++ b/arch/tile/Kconfig
@@ -368,11 +368,17 @@ config HARDWALL
368config KERNEL_PL 368config KERNEL_PL
369 int "Processor protection level for kernel" 369 int "Processor protection level for kernel"
370 range 1 2 370 range 1 2
371 default "1" 371 default 2 if TILEGX
372 default 1 if !TILEGX
372 ---help--- 373 ---help---
373 This setting determines the processor protection level the 374 Since MDE 4.2, the Tilera hypervisor runs the kernel
374 kernel will be built to run at. Generally you should use 375 at PL2 by default. If running under an older hypervisor,
375 the default value here. 376 or as a KVM guest, you must run at PL1. (The current
377 hypervisor may also be recompiled with "make HV_PL=2" to
378 allow it to run a kernel at PL1, but clients running at PL1
379 are not expected to be supported indefinitely.)
380
381 If you're not sure, don't change the default.
376 382
377source "arch/tile/gxio/Kconfig" 383source "arch/tile/gxio/Kconfig"
378 384