Re: 8250 regression: infinite interrupts

From: Linus Walleij
Date: Sat Jan 28 2012 - 05:51:15 EST


2012/1/27 Jiri Slaby <jslaby@xxxxxxx>:

> The culprit is the added size_fifo call proper in autoconfig_16550a. It
> returns 16, but the chip is confused by what the function does at that
> point. It is yet to be investigated why. Any ideas at this stage why
> this could be a problem?

The header says the function sometimes fail :-/

What it does is set the UART in loopback mode and saturate it with
256 bytes to overflow the FIFO, then check how many chars
were in the FIFO to determine FIFO size.

Could it be that your variant does not clear the FIFO overflow
correctly and get stuck in some error state? Maybe try clearing
some error flags at the end of this function?

Yours,
Linus Walleij
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/