Hi,
dream21 wrote:Thanks a lot Brendan. I think this should be on OsDev wiki. Do mind adding it?
That wiki page needs to be split into one page for "serial communications" (the physical connectors, wires, pins, etc), one page for each category of "serial controller chip/UART" (e.g. one page for the 8250/16550 family, another page for USB to serial converters, another page for PL11 on ARM, etc), then a page for each common "end point type" (serial mouse, TTY/terminal, various UPS protocols, ...).
For the page for the 8250/16550 family, the wiki is missing lots of information; including warnings/advice on ISA IRQ sharing, the differences between different chips within the family (with/without FIFO, various bugs), how to detect and test the chips (including its features and bugs), how to use it properly (including "IRQ and not polling", and possibly some information on how to use "DMA mode" in more recent Intel Quark SoCs), etc.
I'm more of a "either do it right, or don't do it" kind of guy; and I'd rather wait until I'm re-acquainting myself with things I've forgotten for other reasons (e.g. until I'm writing serial port drivers anyway).
Fortunately; it's a wiki - you (or anyone else) can make a few changes/additions at any time.
Cheers,
Brendan