[coreboot] [PATCH][cbv2]Add serial port information to lbtable

Uwe Hermann uwe at hermann-uwe.de
Wed Jan 16 16:03:15 CET 2008


Looks good, but a few comments:

On Wed, Jan 16, 2008 at 12:34:14PM +0100, Patrick Georgi wrote:
> the attached patch makes cbv2 add information about the serial port to
> lbtable. For this, a new record type is created. Payloads can then parse
> lbtable to figure out where to find the serial port (which is usually
> used by lb as console already).
> 
> A patch for grub2 exists, too, and I'll implement a compatible change
> for cbv3 once the record format (and overall design etc) is stable.

Have you checked lxbios continues to work after the changes?


> Index: src/arch/i386/boot/linuxbios_table.c
> ===================================================================
> --- src/arch/i386/boot/linuxbios_table.c	(Revision 3049)
> +++ src/arch/i386/boot/linuxbios_table.c	(Arbeitskopie)
> @@ -74,6 +74,18 @@
>  	return mem;
>  }
>  
> +struct lb_serial *lb_serial(struct lb_header *header)
> +{
> +	struct lb_record *rec;
> +	struct lb_serial *serial;
> +	rec = lb_new_record(header);
> +	serial = (struct lb_serial *)rec;
> +	serial->tag = LB_TAG_SERIAL;
> +	serial->size = sizeof(*serial);

> +	serial->ioport = TTYS0_BASE;

This doesn't look generic enough(?) Where does TTYS0_BASE come from?
Does the code expect it to be defined in auto.c or cache_as_ram_auto.c?

I think not all of the boards define it, and even if they did,
TTYS0_BASE implies COM1, which is not always what you want.
We need a mechanism to allow other ports here (COM2, COM3, COM4).

Yes, I think it's just a name, in theory you could assign any value
to TTYS0_BASE, but you get the point.


Uwe.
-- 
http://www.hermann-uwe.de  | http://www.holsham-traders.de
http://www.crazy-hacks.org | http://www.unmaintained-free-software.org




More information about the coreboot mailing list