From 09f99f998ddbd0a0b270fc651da54ce610e1fc42 Mon Sep 17 00:00:00 2001 From: Carl-Daniel Hailfinger Date: Fri, 16 Nov 2007 11:17:57 +0000 Subject: [PATCH] Improve printk documentation to match code realities. Signed-off-by: Carl-Daniel Hailfinger Acked-by: Corey Osgood git-svn-id: svn://coreboot.org/repository/LinuxBIOSv3@510 f3766cd6-281f-0410-b1cd-43a5c92072e9 --- arch/x86/stage1.c | 7 +++++-- lib/stage2.c | 11 +++++++++-- mainboard/adl/msm800sev/stage1.c | 3 ++- mainboard/emulation/qemu-x86/stage1.c | 2 +- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/arch/x86/stage1.c b/arch/x86/stage1.c index f5e7f56ab8..12943db774 100644 --- a/arch/x86/stage1.c +++ b/arch/x86/stage1.c @@ -102,13 +102,16 @@ void __attribute__((stdcall)) stage1_main(u32 bist) } // We have cache as ram running and can start executing code in C. - // hardware_stage1(); // uart_init(); // initialize serial port - console_init(); // print banner + + /* Exactly from now on we can use printk to the serial port. + * Celebrate this by printing a LB banner. + */ + console_init(); if (bist!=0) { printk(BIOS_INFO, "BIST FAILED: %08x", bist); diff --git a/lib/stage2.c b/lib/stage2.c index 54dcdf4178..eb644a6825 100644 --- a/lib/stage2.c +++ b/lib/stage2.c @@ -37,7 +37,8 @@ * * Device Enumeration: in the dev_enumerate() phase. * - * TODO: Check whether this documentation is still correct. Improve it. + * TODO: + * - Check whether this documentation is still correct. Improve it. */ int stage2(void) { @@ -54,7 +55,13 @@ int stage2(void) post_code(0x20); - /* TODO: Explain why we use printk here although it is impossible */ + /* TODO: Explain why we use printk here although it is claimed to be + * impossible according to the documentation. The "has to be done + * before printk can be used" comment below seems to suggest the same. + * However, we already enable serial in arch/x86/stage1.c:stage1_main() + * when we call hardware_stage1(); uart_init(); console_init(); + * Why test the console again if it already is tested in stage 1? + */ printk(BIOS_NOTICE, console_test); dev_init(); diff --git a/mainboard/adl/msm800sev/stage1.c b/mainboard/adl/msm800sev/stage1.c index fafd6eba2e..630f46e0f0 100644 --- a/mainboard/adl/msm800sev/stage1.c +++ b/mainboard/adl/msm800sev/stage1.c @@ -36,6 +36,8 @@ #define SERIAL_DEV W83627HF_SP1 #define SERIAL_IOBASE 0x3f8 +/* printk will not yet output anything */ + void hardware_stage1(void) { void w83627hf_enable_serial(u8 dev, u8 serial, u16 iobase); @@ -51,5 +53,4 @@ void hardware_stage1(void) */ cs5536_disable_internal_uart(); w83627hf_enable_serial(0x2e, SERIAL_DEV, SERIAL_IOBASE); - printk(BIOS_DEBUG, "Done %s\n", __FUNCTION__); } diff --git a/mainboard/emulation/qemu-x86/stage1.c b/mainboard/emulation/qemu-x86/stage1.c index 036a800c61..18de2de65a 100644 --- a/mainboard/emulation/qemu-x86/stage1.c +++ b/mainboard/emulation/qemu-x86/stage1.c @@ -17,7 +17,7 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -/* no printk allowed until hardware is ready; hardware is ready */ +/* printk will not yet output anything */ /** * start up hardware needed for stage1