Am Donnerstag, den 17.01.2008, 12:55 +0100 schrieb Torsten Duwe:
On Wednesday 16 January 2008, Stefan Reinauer wrote:
- Uwe Hermann uwe@hermann-uwe.de [080116 16:03]:
This doesn't look generic enough(?) Where does TTYS0_BASE come from?
Agreed.
TTYS0_BASE seems to be the standard name used across the code base. The attached patch provides a no-op in case the configuration doesn't provide a serial port.
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).
This goes off into the wrong direction, IMO.
The codebase doesn't seem to be prepared for multiple serial ports in the first place (I only find TTYS0_*). I'd say, we add a port number to the record once we actually support >1 ports.
Both not appropriate, strictly. There is only one serial port, for the console at best that everyone needs to care about until an OS is loaded.
As my initial query (http://www.coreboot.org/pipermail/coreboot/2008-January/029192.html) got no response, I decided to just work on the problem at hand, which is - in my case - a hand over of information about the serial port (which we don't do at all currently).
As you can see, my patch doesn't pretend that the serial port is the console, so a "you can find the console $here" record can be added without conflicts. That new record could then refer to the serial port as specified here, in case the console is on serial.
The questions are:
- of what type is the active console?
a) VGA-compatible b) 8250-compatible c) ...
Different issue (see above)
- Is there additional information? A smarter payload might want to use e.g.
the interrupt that we assigned to the port ;-)
Once we do that, the serial record could be extended by that information. Given that we have a size field in the record, that can even be done in a compatible way, or not?
I'll do patches for lxbios and v3 once this patch (and more importantly, the record format) is accepted. This patch is updated against latest svn, and provides an alternative in case TTYS0_BASE isn't defined (see the #ifdef).
Regards, Patrick Georgi