mirror of
https://github.com/torvalds/linux.git
synced 2024-12-28 13:51:44 +00:00
x86/pat: Document the PAT initialization sequence
Update PAT documentation to describe how PAT is initialized under various configurations. Signed-off-by: Toshi Kani <toshi.kani@hpe.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Borislav Petkov <bp@alien8.de> Cc: Borislav Petkov <bp@suse.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Juergen Gross <jgross@suse.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Luis R. Rodriguez <mcgrof@suse.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Toshi Kani <toshi.kani@hp.com> Cc: elliott@hpe.com Cc: konrad.wilk@oracle.com Cc: paul.gortmaker@windriver.com Cc: xen-devel@lists.xenproject.org Link: http://lkml.kernel.org/r/1458769323-24491-8-git-send-email-toshi.kani@hpe.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
parent
88ba281108
commit
b6350c21cf
@ -196,3 +196,35 @@ Another, more verbose way of getting PAT related debug messages is with
|
|||||||
"debugpat" boot parameter. With this parameter, various debug messages are
|
"debugpat" boot parameter. With this parameter, various debug messages are
|
||||||
printed to dmesg log.
|
printed to dmesg log.
|
||||||
|
|
||||||
|
PAT Initialization
|
||||||
|
------------------
|
||||||
|
|
||||||
|
The following table describes how PAT is initialized under various
|
||||||
|
configurations. The PAT MSR must be updated by Linux in order to support WC
|
||||||
|
and WT attributes. Otherwise, the PAT MSR has the value programmed in it
|
||||||
|
by the firmware. Note, Xen enables WC attribute in the PAT MSR for guests.
|
||||||
|
|
||||||
|
MTRR PAT Call Sequence PAT State PAT MSR
|
||||||
|
=========================================================
|
||||||
|
E E MTRR -> PAT init Enabled OS
|
||||||
|
E D MTRR -> PAT init Disabled -
|
||||||
|
D E MTRR -> PAT disable Disabled BIOS
|
||||||
|
D D MTRR -> PAT disable Disabled -
|
||||||
|
- np/E PAT -> PAT disable Disabled BIOS
|
||||||
|
- np/D PAT -> PAT disable Disabled -
|
||||||
|
E !P/E MTRR -> PAT init Disabled BIOS
|
||||||
|
D !P/E MTRR -> PAT disable Disabled BIOS
|
||||||
|
!M !P/E MTRR stub -> PAT disable Disabled BIOS
|
||||||
|
|
||||||
|
Legend
|
||||||
|
------------------------------------------------
|
||||||
|
E Feature enabled in CPU
|
||||||
|
D Feature disabled/unsupported in CPU
|
||||||
|
np "nopat" boot option specified
|
||||||
|
!P CONFIG_X86_PAT option unset
|
||||||
|
!M CONFIG_MTRR option unset
|
||||||
|
Enabled PAT state set to enabled
|
||||||
|
Disabled PAT state set to disabled
|
||||||
|
OS PAT initializes PAT MSR with OS setting
|
||||||
|
BIOS PAT keeps PAT MSR with BIOS setting
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user