diff options
Diffstat (limited to 'sys/amd64/amd64/mpboot.S')
-rw-r--r-- | sys/amd64/amd64/mpboot.S | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sys/amd64/amd64/mpboot.S b/sys/amd64/amd64/mpboot.S index e245007..d77b877 100644 --- a/sys/amd64/amd64/mpboot.S +++ b/sys/amd64/amd64/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! */ |