diff options
author | Aaron Durbin <adurbin@chromium.org> | 2018-04-17 14:35:48 -0600 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2018-04-23 09:18:28 +0000 |
commit | d5e4746cf84a8da1b6465058ec7c7cc19c3c32c0 (patch) | |
tree | f5bf8a5cb74f8a757183c4fb2480b9c64a9a8edc /src/include/cpu | |
parent | ae18f80febc3ecaacc0314e942a4f8b248bfcc4c (diff) |
cpu/x86: expose and add paging helper functions
Add the following functions for use outside of the paging module:
void paging_enable_pae_cr3(uintptr_t cr3);
void paging_enable_pae(void);
void paging_disable_pae(void);
The functions just enable and/or disable paging along with PAE.
Disassembly shows equivalent output for both versions.
BUG=b:72728953
Change-Id: I9665e7ec4795a5f52889791f73cf98a8f4def827
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/25714
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Justin TerAvest <teravest@chromium.org>
Diffstat (limited to 'src/include/cpu')
-rw-r--r-- | src/include/cpu/x86/pae.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/include/cpu/x86/pae.h b/src/include/cpu/x86/pae.h index 9b9f27b688..5bbfdf3aca 100644 --- a/src/include/cpu/x86/pae.h +++ b/src/include/cpu/x86/pae.h @@ -3,6 +3,14 @@ #include <stdint.h> +/* Enable paging with cr3 value for page directory pointer table as well as PAE + option in cr4. */ +void paging_enable_pae_cr3(uintptr_t cr3); +/* Enable paging as well as PAE option in cr4. */ +void paging_enable_pae(void); +/* Disable paging as well as PAE option in cr4. */ +void paging_disable_pae(void); + /* Set/Clear NXE bit in IA32_EFER MSR */ void paging_set_nxe(int enable); |