Changeset 19077a5 in mainline for kernel/arch/amd64/src/smp/ap.S
- Timestamp:
- 2008-01-25T16:45:42Z (17 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 9415601
- Parents:
- a7df23c
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/amd64/src/smp/ap.S
ra7df23c r19077a5 1 1 # 2 # Copyright (c) 200 1-2004Jakub Jermar2 # Copyright (c) 2008 Jakub Jermar 3 3 # Copyright (c) 2005-2006 Martin Decky 4 4 # All rights reserved. … … 46 46 47 47 # This piece of code is real-mode and is meant to be alligned at 4K boundary. 48 # The requirement for such an alignment comes from MP Specification's STARTUP IPI49 # requirements.48 # The requirement for such an alignment comes from MP Specification's STARTUP 49 # IPI requirements. 50 50 51 51 .align 4096 … … 60 60 movl %cr0, %eax 61 61 orl $1, %eax 62 movl %eax, %cr0 62 movl %eax, %cr0 # switch to protected mode 63 63 jmpl $gdtselector(KTEXT32_DES), $jump_to_kernel - BOOT_OFFSET + AP_BOOT_OFFSET 64 64 … … 83 83 84 84 # Enable long mode 85 movl $EFER_MSR_NUM, %ecx 86 rdmsr 87 btsl $AMD_LME_FLAG, %eax 88 wrmsr 85 movl $EFER_MSR_NUM, %ecx # EFER MSR number 86 rdmsr # Read EFER 87 btsl $AMD_LME_FLAG, %eax # Set LME=1 88 wrmsr # Write EFER 89 89 90 90 # Enable paging to activate long mode (set CR0.PG=1) … … 108 108 109 109 .global unmapped_ap_gdtr 110 111 110 unmapped_ap_gdtr: 112 111 .word 0
Note:
See TracChangeset
for help on using the changeset viewer.