PE 2550, RH 7.1 & Serial Console

Marc Mondragon Marcmo at RitchieCapital.com
Mon Mar 11 09:38:01 CST 2002


Thanks,

That's crystal clear enough for me.

I take it then that other than lilo there's no problem 
running with console redirection enabled?

I'm also guessing that if lilo gets updated at some point
in the future I might to need to add the serial line to
lilo.conf?

Marc Mondragon

-----Original Message-----
From: Michael E Brown [mailto:michael_e_brown at dell.com]
Sent: Sunday, March 10, 2002 8:53 PM
To: Glen Turner
Cc: Marc Mondragon; 'linux-poweredge at dell.com'
Subject: Re: PE 2550, RH 7.1 & Serial Console



The reason that BIOS console redirection does not work is due to a bug in
LILO, combined with some 'unexpected interaction' with the BIOS.

Basically what happens is that when BIOS console redirection is turned
off, the BIOS puts the io-port address (0x3f8, 0x2f8, etc.) of the serial
line in the EBDA. LILO uses this info to program the serial port. But when
BIOS console redirection is turned on, the BIOS puts 0 in that same
location. LILO doesn't notice this and proceeds to use 0, thinking that is
the serial port. This causes the hang.

On Mon, 11 Mar 2002, Glen Turner wrote:

> Now why would the Dell BIOS conflict with LILO and not with Linux?  After
> all, once the BIOS has booted LILO the BIOS assumes that the operating
> system is running (if you look at GRUB you'll see a boot loader that is
> almost an oprating system)? Odd.
>
> One possibility is that the redirection never goes away.  Perhaps the BIOS
> redirects some INT10 BIOS calls to the serial port.  LILO uses the BIOS
> routines, so if LILO additionally used the serial port then LILO and the
> BIOS would get in each other's way.

This is approximately correct. BIOS console redirection is designed so
that you can remote-boot MS-DOS and get full console redirection of an
MS-DOS session.  The reason that the BIOS puts 0 for the IO-address in the
EBDA is that MS-DOS won't initialize the serial port in this instance
(which would mess up the redirection).

>
> But Linux doesn't use the INT 10 routines for I/O, so once Linux has reset
> the UART there would be no conflicts as the BIOS waits forever for a
> INT10.

Linux reinitializes the system into 32-bit protected mode. After this
happens the BIOS is out of the loop.

>
> Not sure that this explains how serial input would be redirected.  Hmmm.
>
> A technical description from Dell of the serial console redirection
> implementation would be very nice.

Hope this helps.
--
Michael Brown
Linux Solutions
Dell Computer Corp




More information about the Linux-PowerEdge mailing list