diff options
Diffstat (limited to 'sys/i386/i386/mpboot.s')
-rw-r--r-- | sys/i386/i386/mpboot.s | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sys/i386/i386/mpboot.s b/sys/i386/i386/mpboot.s index e245007..d77b877 100644 --- a/sys/i386/i386/mpboot.s +++ b/sys/i386/i386/mpboot.s @@ -86,6 +86,22 @@ NON_GPROF_ENTRY(MPentry) movl R(IdlePTD), %eax movl %eax,%cr3 #endif +#ifndef DISABLE_PSE + cmpl $0, R(pseflag) + je 1f + movl %cr4, %eax + orl $CR4_PSE, %eax + movl %eax, %cr4 +1: +#endif +#ifndef DISABLE_PG_G + cmpl $0, R(pgeflag) + je 2f + movl %cr4, %eax + orl $CR4_PGE, %eax + movl %eax, %cr4 +2: +#endif movl %cr0,%eax orl $CR0_PE|CR0_PG,%eax /* enable paging */ movl %eax,%cr0 /* let the games begin! */ |