diff options
| author | Michael Brown | 2005-04-10 20:22:31 +0200 |
|---|---|---|
| committer | Michael Brown | 2005-04-10 20:22:31 +0200 |
| commit | 997b51c1e60b365522e9a1d1e7005665502af349 (patch) | |
| tree | 3f813e0405f023f7c58d6bca3c5eecb9c6e524d9 /src | |
| parent | Heading towards a sane set of control functions (diff) | |
| download | ipxe-997b51c1e60b365522e9a1d1e7005665502af349.tar.gz ipxe-997b51c1e60b365522e9a1d1e7005665502af349.tar.xz ipxe-997b51c1e60b365522e9a1d1e7005665502af349.zip | |
Use librm_arch_initialise for librm, arch_initialise for others.
Diffstat (limited to 'src')
| -rw-r--r-- | src/arch/i386/core/setup.S | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/arch/i386/core/setup.S b/src/arch/i386/core/setup.S index f0b09f608..26aa23200 100644 --- a/src/arch/i386/core/setup.S +++ b/src/arch/i386/core/setup.S @@ -39,6 +39,8 @@ #define ENTER_FROM_EXTERNAL call ext_to_kir #define RETURN_TO_EXTERNAL call kir_to_ext #define ENTRY_POINT kir_call +#define ENTRY_POINT_REGISTER di +#define INIT_FUNC arch_initialise #else /* KEEP_IT_REAL */ @@ -50,11 +52,11 @@ call prot_to_real ; \ .code16 #define ENTRY_POINT _prot_call /* _prot_call = OFFSET ( prot_call ) in librm */ +#define ENTRY_POINT_REGISTER di +#define INIT_FUNC librm_arch_initialise #endif /* KEEP_IT_REAL */ -#define ENTRY_POINT_REGISTER di - .section ".text16" .code16 .globl setup16 @@ -76,7 +78,8 @@ setup16: #define RETURN_TO_EXTERNAL call int_to_ext #define ENTRY_POINT int_call #define ENTRY_POINT_REGISTER edi - +#define INIT_FUNC arch_initialise + .section ".text" .code32 .globl setup @@ -145,7 +148,7 @@ setup: * subsequent calls. librm will use this facility, since * arch_initialise() causes librm to be relocated. */ - pushl $arch_initialise + pushl $INIT_FUNC push %cs /* lcall %es:[x]di == %cs:[x]di */ call *%ENTRY_POINT_REGISTER popl %ebp /* discard */ |
