| From b6350c21cfe8aa9d65e189509a23c0ea4b8362c2 Mon Sep 17 00:00:00 2001 |
| From: Toshi Kani <toshi.kani@hpe.com> |
| Date: Wed, 23 Mar 2016 15:42:03 -0600 |
| Subject: x86/pat: Document the PAT initialization sequence |
| |
| From: Toshi Kani <toshi.kani@hpe.com> |
| |
| commit b6350c21cfe8aa9d65e189509a23c0ea4b8362c2 upstream. |
| |
| 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> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| Documentation/x86/pat.txt | 32 ++++++++++++++++++++++++++++++++ |
| 1 file changed, 32 insertions(+) |
| |
| --- a/Documentation/x86/pat.txt |
| +++ b/Documentation/x86/pat.txt |
| @@ -196,3 +196,35 @@ Another, more verbose way of getting PAT |
| "debugpat" boot parameter. With this parameter, various debug messages are |
| 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 |
| + |