diff options
author | Stefan Reinauer <stepan@openbios.org> | 2005-12-02 21:52:30 +0000 |
---|---|---|
committer | Stefan Reinauer <stepan@openbios.org> | 2005-12-02 21:52:30 +0000 |
commit | 7ce8c54e2ba89059d28790550a8f74907b54b916 (patch) | |
tree | e89df947fbe9e3f85d6082af6926038e9fe8e61a /src/arch/i386/lib | |
parent | c2455dc0ce210b3da2b14be8885803ff47a781eb (diff) |
1201_ht_bus0_dev0_fidvid_core.diff
https://openbios.org/roundup/linuxbios/issue41
Lord have mercy upon us.
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2118 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/arch/i386/lib')
-rw-r--r-- | src/arch/i386/lib/c_start.S | 6 | ||||
-rw-r--r-- | src/arch/i386/lib/console.c | 57 |
2 files changed, 8 insertions, 55 deletions
diff --git a/src/arch/i386/lib/c_start.S b/src/arch/i386/lib/c_start.S index ce13d150d7..04b5a68676 100644 --- a/src/arch/i386/lib/c_start.S +++ b/src/arch/i386/lib/c_start.S @@ -22,18 +22,20 @@ _start: leal _stack, %edi movl $_estack, %ecx subl %edi, %ecx + shrl $2, %ecx /* it is 32 bit align, right? */ xorl %eax, %eax rep - stosb + stosl /** clear bss */ leal _bss, %edi movl $_ebss, %ecx subl %edi, %ecx jz .Lnobss + shrl $2, %ecx /* it is 32 bit align, right? */ xorl %eax, %eax rep - stosb + stosl .Lnobss: /* set new stack */ diff --git a/src/arch/i386/lib/console.c b/src/arch/i386/lib/console.c index fd1b5d759e..a1f5d6f2a4 100644 --- a/src/arch/i386/lib/console.c +++ b/src/arch/i386/lib/console.c @@ -120,58 +120,8 @@ static void print_spew_hex16(unsigned short value){ __console_tx_hex16(BIOS_SPEW static void print_spew_hex32(unsigned int value) { __console_tx_hex32(BIOS_SPEW, value); } static void print_spew(const char *str) { __console_tx_string(BIOS_SPEW, str); } -/* Non inline versions.... */ -#if 0 -static void print_alert_char_(unsigned char value) NOINLINE { print_alert_char(value); } -static void print_alert_hex8_(unsigned char value) NOINLINE { print_alert_hex8(value); } -static void print_alert_hex16_(unsigned short value) NOINLINE { print_alert_hex16(value); } -static void print_alert_hex32_(unsigned int value) NOINLINE { print_alert_hex32(value); } -static void print_alert_(const char *str) NOINLINE { print_alert(str); } - -static void print_crit_char_(unsigned char value) NOINLINE { print_crit_char(value); } -static void print_crit_hex8_(unsigned char value) NOINLINE { print_crit_hex8(value); } -static void print_crit_hex16_(unsigned short value) NOINLINE { print_crit_hex16(value); } -static void print_crit_hex32_(unsigned int value) NOINLINE { print_crit_hex32(value); } -static void print_crit_(const char *str) NOINLINE { print_crit(str); } - -static void print_err_char_(unsigned char value) NOINLINE { print_err_char(value); } -static void print_err_hex8_(unsigned char value) NOINLINE { print_err_hex8(value); } -static void print_err_hex16_(unsigned short value) NOINLINE { print_err_hex16(value); } -static void print_err_hex32_(unsigned int value) NOINLINE { print_err_hex32(value); } -static void print_err_(const char *str) NOINLINE { print_err(str); } - -static void print_warning_char_(unsigned char value) NOINLINE { print_warning_char(value); } -static void print_warning_hex8_(unsigned char value) NOINLINE { print_warning_hex8(value); } -static void print_warning_hex16_(unsigned short value) NOINLINE { print_warning_hex16(value); } -static void print_warning_hex32_(unsigned int value) NOINLINE { print_warning_hex32(value); } -static void print_warning_(const char *str) NOINLINE { print_warning(str); } - -static void print_notice_char_(unsigned char value) NOINLINE { print_notice_char(value); } -static void print_notice_hex8_(unsigned char value) NOINLINE { print_notice_hex8(value); } -static void print_notice_hex16_(unsigned short value) NOINLINE { print_notice_hex16(value); } -static void print_notice_hex32_(unsigned int value) NOINLINE { print_notice_hex32(value); } -static void print_notice_(const char *str) NOINLINE { print_notice(str); } - -static void print_info_char_(unsigned char value) NOINLINE { print_info_char(value); } -static void print_info_hex8_(unsigned char value) NOINLINE { print_info_hex8(value); } -static void print_info_hex16_(unsigned short value) NOINLINE { print_info_hex16(value); } -static void print_info_hex32_(unsigned int value) NOINLINE { print_info_hex32(value); } -static void print_info_(const char *str) NOINLINE { print_info(str); } - -static void print_debug_char_(unsigned char value) NOINLINE { print_debug_char(value); } -static void print_debug_hex8_(unsigned char value) NOINLINE { print_debug_hex8(value); } -static void print_debug_hex16_(unsigned short value) NOINLINE { print_debug_hex16(value); } -static void print_debug_hex32_(unsigned int value) NOINLINE { print_debug_hex32(value); } -static void print_debug_(const char *str) NOINLINE { print_debug(str); } - -static void print_spew_char_(unsigned char value) NOINLINE { print_spew_char(value); } -static void print_spew_hex8_(unsigned char value) NOINLINE { print_spew_hex8(value); } -static void print_spew_hex16_(unsigned short value) NOINLINE { print_spew_hex16(value); } -static void print_spew_hex32_(unsigned int value) NOINLINE { print_spew_hex32(value); } -static void print_spew_(const char *str) NOINLINE { print_spew(str); } -#endif - -#else +#else +/* CONFIG_USE_INIT == 1 */ extern int do_printk(int msg_level, const char *fmt, ...); @@ -273,12 +223,13 @@ extern int do_printk(int msg_level, const char *fmt, ...); #define print_spew_hex32(HEX) printk_spew ("%08x", (HEX)) -#endif /* CONFIG_USE_INIT == 0 */ +#endif /* CONFIG_USE_INIT */ #ifndef LINUXBIOS_EXTRA_VERSION #define LINUXBIOS_EXTRA_VERSION "" #endif + static void console_init(void) { static const char console_test[] = |