i386: Move references to link script exports

Signed-off-by: Graeme Russ <graeme.russ@gmail.com>
This commit is contained in:
Graeme Russ 2009-11-24 20:04:20 +11:00 committed by Wolfgang Denk
parent 0fc1b49ecb
commit cabe579480
4 changed files with 11 additions and 17 deletions

View file

@ -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);

View file

@ -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

View file

@ -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 ")";

View file

@ -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",