diff options
author | Chris Metcalf <cmetcalf@tilera.com> | 2013-05-02 15:29:04 -0400 |
---|---|---|
committer | Chris Metcalf <cmetcalf@tilera.com> | 2013-05-02 16:20:31 -0400 |
commit | c539914dcd9a68c63305e055b14115a6a19578a8 (patch) | |
tree | b422139d5d4628c8472fdf740dced263bc238c30 /arch/tile/Kconfig | |
parent | c1be5a5b1b355d40e6cf79cc979eb66dafa24ad1 (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/Kconfig | 14 |
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 | |||
368 | config KERNEL_PL | 368 | config 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 | ||
377 | source "arch/tile/gxio/Kconfig" | 383 | source "arch/tile/gxio/Kconfig" |
378 | 384 | ||