Am Montag, den 21.01.2008, 22:39 +0100 schrieb Torsten Duwe:
On Monday 21 January 2008, you wrote:
The codebase doesn't seem to be prepared for multiple serial ports in the first place (I only find TTYS0_*).
OK.
Actually, in v3 it's called TTYSx_* (with a literal 'x'), probably to avoid this issue in case a different serial device is used.
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?
Absolutely. This is what I propose. Rename the record LB_TAG_CONSOLE, add a type field that is currently always 1, meaning 8250-compatible, I/O-mapped serial. Also an interrupt field would be nice, with a default "none" value.
This record is intended to tell the payload about the existence and where-abouts of a serial port. A console would be a separate record with that number you propose (or something like that)
If and where a serial port is to be found is an information that should be provided even if (say) vga is being used for the console, in my opinion.
As for the layout of the LB_TAG_CONSOLE (which has to come, eventually), there was some discussion on IRC already, but I think it quickly became over-engineered.
No more mocking about TTYS0 from my side. Do you want to make the other changes or shall I?
The tag number is already taken in v3, so 0xe must be changed (just for reference).
I'll post another patch, with a new ID (a v3 patch exists and works already, that'll come, too) and work on a proposal for LB_TAG_CONSOLE - tomorrow.
Regards, Patrick Georgi