On Tue, Jun 17, 2003 at 01:31:02AM +0200, Juan Quintela wrote:
> >>>>> "maciej" == Maciej W Rozycki <email@example.com> writes:
> maciej> Hmm, strange idea -- I guess that originates from systems that have no
> maciej> suitable firmware to perform such an operation at the console.
> maciej> only x86_64 implements early_printk() -- if we have an implementation
> maciej> MIPS, we may consider removing the alternative. Also prom_printf()
> maciej> almost for free and works very early and as I see in the x86_64
> maciej> early_printk() requires initialization of a console driver, which may
> maciej> unfortunate if debugging a problem within the driver.
> There is at least one implementation for x86 that uses the VGA
> directly (as the BIOS left it), getting it very soon.
> But you are right, PC's speciality is not to have a nice console.
> Anyways, you can use early_printk() in MIPS. You only need to put the
> setup of the early console sooner, as for you the setup is basically a NOP.
(I'm only implementing it and I don't care how good idea it is :-) Anyway
I still think that firmware should be used directly to print message before
kernel halts in situations like arch/mips/arc/init.c at line 30)
Maciej, i'll try to make some conclusion from what I was told (and Juan is
welcome to correct me if I missunderstood something)
Idea is to have only one way for printing kernel messages. In case of Indy,
O2 and SNI RM200 "arc" console will do it. Here you can find where should
be early console initialized:
As Juan pointed out setup for such console is actually a nop and one is
supposed to enable this feature only when debugging kernel. DEC prom console
however needs some setup to determine REX entry points. early console is
currently used on sh, alpha, x86_64 and ia64 architectures. Btw, see comment
at the top of arch/sparc/prom/printf.c