Hi,
Earlier this year I noticed the CBUS UART, a discrete TI16C550C part
wired directly to the system controller's device bus and supposed to come
up as ttyS2 in addition to ttyS0 and ttyS1 ports from a Super I/O device
behind the PCI southbridge, is not recognised with my MIPS Malta board
booting big-endian.
I used to use it just fine, many many years ago, although in the board's
little-endian configuration only, and then with a local patch to get it
supported with Linux 2.4.x, which I didn't get to submitting however due
to the turn of events back then. Support was then added by someone else
with 2.6.23.
I got to the bottom of the problem now and as it turns out we have two
long-standing bugs causing it, one in generic 8250 code and another in
Malta platform code, and this has never worked in the big-endian mode.
Evidently, this has never been verified, and I guess this is because back
in the MIPS UK days we usually ran the boards in the little-endian mode.
This pair of patches addresses these bugs individually. See the
respective change descriptions for details.
Please apply.
Maciej