From: Graeme Russ Date: Tue, 24 Nov 2009 09:04:20 +0000 (+1100) Subject: i386: Move references to link script exports X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=cabe5794803fbe18bedac2d9c7f2417a0fa95ec1;p=u-boot.git i386: Move references to link script exports Signed-off-by: Graeme Russ --- diff --git a/include/asm-i386/u-boot-i386.h b/include/asm-i386/u-boot-i386.h index dfec3074c6..1e8def77d5 100644 --- a/include/asm-i386/u-boot-i386.h +++ b/include/asm-i386/u-boot-i386.h @@ -35,12 +35,6 @@ extern ulong i386boot_bss_size; /* bss size */ extern ulong i386boot_stack_end; /* first usable RAM address after bss and stack */ extern ulong i386boot_ram_end; /* end of ram */ -extern ulong i386boot_realmode; /* start of realmode entry code */ -extern ulong i386boot_realmode_size;/* size of realmode entry code */ -extern ulong i386boot_bios; /* start of BIOS emulation code */ -extern ulong i386boot_bios_size; /* size of BIOS emulation code */ - - /* cpu/.../cpu.c */ int cpu_init(void); diff --git a/lib_i386/bios_setup.c b/lib_i386/bios_setup.c index 33c842c6a0..6491e522ec 100644 --- a/lib_i386/bios_setup.c +++ b/lib_i386/bios_setup.c @@ -45,6 +45,9 @@ DECLARE_GLOBAL_DATA_PTR; #define BIOS_BASE ((char*)0xf0000) #define BIOS_CS 0xf000 +extern ulong _i386boot_bios; +extern ulong _i386boot_bios_size; + /* these are defined in a 16bit segment and needs * to be accessed with the RELOC_16_xxxx() macros below */ @@ -138,6 +141,9 @@ static void setvector(int vector, u16 segment, void *handler) int bios_setup(void) { + ulong i386boot_bios = (ulong)&_i386boot_bios; + ulong i386boot_bios_size = (ulong)&_i386boot_bios_size; + static int done=0; int vector; #ifdef CONFIG_PCI diff --git a/lib_i386/board.c b/lib_i386/board.c index ebd70476c8..44fa0e31a4 100644 --- a/lib_i386/board.c +++ b/lib_i386/board.c @@ -53,11 +53,6 @@ extern long _i386boot_romdata_size; extern long _i386boot_bss_start; extern long _i386boot_bss_size; -extern long _i386boot_realmode; -extern long _i386boot_realmode_size; -extern long _i386boot_bios; -extern long _i386boot_bios_size; - /* The symbols defined by the linker script becomes pointers * which is somewhat inconveient ... */ ulong i386boot_start = (ulong)&_i386boot_start; /* code start (in flash) defined in start.S */ @@ -68,12 +63,6 @@ ulong i386boot_romdata_size = (ulong)&_i386boot_romdata_size; /* size of data ulong i386boot_bss_start = (ulong)&_i386boot_bss_start; /* bss start */ ulong i386boot_bss_size = (ulong)&_i386boot_bss_size; /* bss size */ -ulong i386boot_realmode = (ulong)&_i386boot_realmode; /* start of realmode entry code */ -ulong i386boot_realmode_size = (ulong)&_i386boot_realmode_size; /* size of realmode entry code */ -ulong i386boot_bios = (ulong)&_i386boot_bios; /* start of BIOS emulation code */ -ulong i386boot_bios_size = (ulong)&_i386boot_bios_size; /* size of BIOS emulation code */ - - const char version_string[] = U_BOOT_VERSION" (" U_BOOT_DATE " - " U_BOOT_TIME ")"; diff --git a/lib_i386/realmode.c b/lib_i386/realmode.c index 6cf273885b..3c3c1fc961 100644 --- a/lib_i386/realmode.c +++ b/lib_i386/realmode.c @@ -31,10 +31,15 @@ #define REALMODE_MAILBOX ((char*)0xe00) +extern ulong _i386boot_realmode; +extern ulong _i386boot_realmode_size; extern char realmode_enter; int realmode_setup(void) { + ulong i386boot_realmode = (ulong)&_i386boot_realmode; + ulong i386boot_realmode_size = (ulong)&_i386boot_realmode_size; + /* copy the realmode switch code */ if (i386boot_realmode_size > (REALMODE_MAILBOX-REALMODE_BASE)) { printf("realmode switch too large (%ld bytes, max is %d)\n",