* Peter Stuge peter@stuge.se [070821 02:44]:
On Mon, Aug 20, 2007 at 08:29:16PM +0200, Patrick Georgi wrote:
- *(u32*)(0x400)=TTYSx_BASE;
It's actually an u16 per port.
Hah. you gotta love little endian :-)
I don't like where this is going.
I agree that this needs to be done a little more generic, and we want to capsulate it in a seperate function.
I don't want LB to be BIOS-compatible, I think that would be a regression.
This is not BIOS compatibility. It is broken OS compatibility.
In the specific grub2 case we could possibly fix this in the grub code though,
term/i386/pc/serial.c: serial_hw_get_port (const unsigned short unit) might indeed read the lbtable rather than 0x400 in case it is running on LinuxBIOS.
Stefan