tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Forcing a serial console for the kernel




On Mar 28, 2010, at 6:11 AM, Matthias Drochner wrote:


smj%cirr.com@localhost said:
The issue I have is that if I use 'consdev com0' at the boot prompt,
should I not be able to redirect console output to the serial port on
a PC for any kernel regardless of whether as long as their is driver
support for   'com'?

Generally yes, but two cases come to mind where this doesn't work:
-If the kernel configuration defines CONS_OVERRIDE, the bootblock's
 information is ignored. (shouldn't be the case for an INSTALL kernel)

This helps and probably explains why the kernel on a 5.0.2 system I built
lost the console shortly after the first boot stage.

-If the BIOS does some weird console redirection, it might manipulate
 the IO address table in the BIOS data area, to hide the serial port
 from users. In this case, only a bootblock which has the console's
 "ioaddr" explicitely set (eg by installboot(8)) can take over
 the serial port. (I've recently seen such a case.)

This may be the case for the older system I'm attempting to update which I
last worked with in 2003 and it has continuously run.  BIOS wise it has
serial console on com0, 0x3f8, irq 4. From the boot setting 'consdev com0' loses the console, but 'consdev com1' returns a boot prompt. However, it loses the console once the kernel is loaded and dmesg shows 'com0' as the
console rather than 'com1'.

Unfortunately this older version of installboot does not support the "ioaddr" option. If I'm running into the weird problem you state, is there another
work around?


Home | Main Index | Thread Index | Old Index