Bug in drivers/serial/of_serial.c?

Alon Ziv alonz at discretix.com
Thu Nov 19 23:47:10 EST 2009


Hi,

On Monday, November 16, 2009, Arnd wrote:
> > -       { .type = "serial", .compatible = "ns16550",  .data = (void
*)PORT_16550, },
> > +       { .type = "serial", .compatible = "ns16550",  .data = (void
*)PORT_16550A, },
> 
> Does not seem logical. If the device claims compatibility with
ns16550, we should
> not automatically assume it's an ns16550a. Why not add another line
for 
> 

Unfortunately, there is no way to change what the device claims--it's
encoded into the OpenFirmware tree by the EDK tools.
And, in any case, the device is actually not lying: it _is_ compatible
with NS16550--just with a non-buggy one.  Unfortunately the kernel
driver for 8250-class UARTs makes the conservative choice to assume any
16550 is one of the (early, buggy) revisions where the FIFO was
non-functional; any 16550 with working UART is classed as a 16550A.

-az
**********************************************************************************************
IMPORTANT: The contents of this email and any attachments are confidential. They are intended for the 
named recipient(s) only.
If you have received this email in error, please notify the system manager or the sender immediately and do 
not disclose the contents to anyone or make copies thereof.




More information about the Linuxppc-dev mailing list