summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorGraeme Russ <graeme.russ@gmail.com>2010-04-24 00:05:45 +1000
committerWolfgang Denk <wd@denx.de>2010-05-06 00:15:58 +0200
commit153c2d9f2397e8b6ca03cfebb4e9666ea0b0637c (patch)
treee0c5ac2c31ada55fb1c32c23fd7986a6943b71b4 /arch
parent2fb1bc4f53618743b92a48763d7aaa0ece9ad98f (diff)
downloadbootable_bootloader_goldelico_gta04-153c2d9f2397e8b6ca03cfebb4e9666ea0b0637c.zip
bootable_bootloader_goldelico_gta04-153c2d9f2397e8b6ca03cfebb4e9666ea0b0637c.tar.gz
bootable_bootloader_goldelico_gta04-153c2d9f2397e8b6ca03cfebb4e9666ea0b0637c.tar.bz2
x86: Fix copying of Real-Mode code into RAM
Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/i386/lib/bios_setup.c2
-rw-r--r--arch/i386/lib/realmode.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/arch/i386/lib/bios_setup.c b/arch/i386/lib/bios_setup.c
index 6491e52..a92b77e 100644
--- a/arch/i386/lib/bios_setup.c
+++ b/arch/i386/lib/bios_setup.c
@@ -141,7 +141,7 @@ static void setvector(int vector, u16 segment, void *handler)
int bios_setup(void)
{
- ulong i386boot_bios = (ulong)&_i386boot_bios;
+ ulong i386boot_bios = (ulong)&_i386boot_bios + gd->reloc_off;
ulong i386boot_bios_size = (ulong)&_i386boot_bios_size;
static int done=0;
diff --git a/arch/i386/lib/realmode.c b/arch/i386/lib/realmode.c
index 3c3c1fc..b3f5123 100644
--- a/arch/i386/lib/realmode.c
+++ b/arch/i386/lib/realmode.c
@@ -37,7 +37,7 @@ extern char realmode_enter;
int realmode_setup(void)
{
- ulong i386boot_realmode = (ulong)&_i386boot_realmode;
+ ulong i386boot_realmode = (ulong)&_i386boot_realmode + gd->reloc_off;
ulong i386boot_realmode_size = (ulong)&_i386boot_realmode_size;
/* copy the realmode switch code */