diff options
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/x86/64bit/entry64.inc | 10 | ||||
-rw-r--r-- | src/cpu/x86/Makefile.inc | 1 | ||||
-rw-r--r-- | src/cpu/x86/sipi_vector.S | 13 |
3 files changed, 0 insertions, 24 deletions
diff --git a/src/cpu/x86/64bit/entry64.inc b/src/cpu/x86/64bit/entry64.inc index 70255173f1..65c0fdc929 100644 --- a/src/cpu/x86/64bit/entry64.inc +++ b/src/cpu/x86/64bit/entry64.inc @@ -16,12 +16,7 @@ #endif #include <cpu/x86/msr.h> -#if defined(__RAMSTAGE__) -#include <arch/ram_segs.h> -#else #include <arch/rom_segs.h> -#endif - setup_longmode: /* Get page table address */ @@ -47,12 +42,7 @@ setup_longmode: movl %eax, %cr0 /* use long jump to switch to 64-bit code segment */ -#if defined(__RAMSTAGE__) - ljmp $RAM_CODE_SEG64, $__longmode_start -#else ljmp $ROM_CODE_SEG64, $__longmode_start - -#endif .code64 __longmode_start: diff --git a/src/cpu/x86/Makefile.inc b/src/cpu/x86/Makefile.inc index 0502c723ca..2f789f7581 100644 --- a/src/cpu/x86/Makefile.inc +++ b/src/cpu/x86/Makefile.inc @@ -24,7 +24,6 @@ ifeq ($(CONFIG_PARALLEL_MP),y) $(TARGET_STAGE)-srcs += $(SIPI_BIN).manual endif rmodules_$(ARCH-$(TARGET_STAGE)-y)-$(CONFIG_PARALLEL_MP) += sipi_vector.S -rmodules_$(ARCH-$(TARGET_STAGE)-y)-generic-ccopts += $($(TARGET_STAGE)-generic-ccopts) $(SIPI_DOTO): $(call src-to-obj,rmodules_$(ARCH-$(TARGET_STAGE)-y),src/cpu/x86/sipi_vector.S) $(LD_rmodules_$(ARCH-$(TARGET_STAGE)-y)) -nostdlib -r -o $@ $^ diff --git a/src/cpu/x86/sipi_vector.S b/src/cpu/x86/sipi_vector.S index bda49cc029..ba1ecb7de6 100644 --- a/src/cpu/x86/sipi_vector.S +++ b/src/cpu/x86/sipi_vector.S @@ -192,24 +192,11 @@ load_msr: mov %eax, %cr4 #endif -#ifdef __x86_64__ - /* entry64.inc preserves ebx. */ -#include <cpu/x86/64bit/entry64.inc> - - mov %rsi, %rdi /* cpu_num */ - - movl c_handler, %eax - call *%rax -#else /* c_handler(cpu_num), preserve proper stack alignment */ sub $12, %esp push %esi /* cpu_num */ - mov c_handler, %eax call *%eax -#endif - - halt_jump: hlt jmp halt_jump |