aboutsummaryrefslogtreecommitdiffstats
path: root/arch/i386/boot/compressed/head.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/i386/boot/compressed/head.S')
-rw-r--r--arch/i386/boot/compressed/head.S7
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/i386/boot/compressed/head.S b/arch/i386/boot/compressed/head.S
index c5e80b69e7d4..b5893e4ecd37 100644
--- a/arch/i386/boot/compressed/head.S
+++ b/arch/i386/boot/compressed/head.S
@@ -25,6 +25,7 @@
25 25
26#include <linux/linkage.h> 26#include <linux/linkage.h>
27#include <asm/segment.h> 27#include <asm/segment.h>
28#include <asm/page.h>
28 29
29 .globl startup_32 30 .globl startup_32
30 31
@@ -74,7 +75,7 @@ startup_32:
74 popl %esi # discard address 75 popl %esi # discard address
75 popl %esi # real mode pointer 76 popl %esi # real mode pointer
76 xorl %ebx,%ebx 77 xorl %ebx,%ebx
77 ljmp $(__BOOT_CS), $0x100000 78 ljmp $(__BOOT_CS), $__PHYSICAL_START
78 79
79/* 80/*
80 * We come here, if we were loaded high. 81 * We come here, if we were loaded high.
@@ -99,7 +100,7 @@ startup_32:
99 popl %ecx # lcount 100 popl %ecx # lcount
100 popl %edx # high_buffer_start 101 popl %edx # high_buffer_start
101 popl %eax # hcount 102 popl %eax # hcount
102 movl $0x100000,%edi 103 movl $__PHYSICAL_START,%edi
103 cli # make sure we don't get interrupted 104 cli # make sure we don't get interrupted
104 ljmp $(__BOOT_CS), $0x1000 # and jump to the move routine 105 ljmp $(__BOOT_CS), $0x1000 # and jump to the move routine
105 106
@@ -124,5 +125,5 @@ move_routine_start:
124 movsl 125 movsl
125 movl %ebx,%esi # Restore setup pointer 126 movl %ebx,%esi # Restore setup pointer
126 xorl %ebx,%ebx 127 xorl %ebx,%ebx
127 ljmp $(__BOOT_CS), $0x100000 128 ljmp $(__BOOT_CS), $__PHYSICAL_START
128move_routine_end: 129move_routine_end: