Thread (23 messages) 23 messages, 7 authors, 2015-09-09

earlycon issues in -next with amba-pl011 updates

From: Greg Kroah-Hartman <hidden>
Date: 2015-09-03 15:52:55
Also in: linux-serial

On Thu, Sep 03, 2015 at 11:23:15AM +0100, Marc Zyngier wrote:
On 11/08/15 02:48, Jun Nie wrote:
quoted
2015-08-11 7:23 GMT+08:00 Leif Lindholm [off-list ref]:
quoted
Hi all,

The kernelci.org bot picked up a complete boot failure (no output past
UEFI stub) with next-20150806 and Tyler bisected it down to somewhere
in
8cd90e5 uart: pl011: Add support to ZTE ZX296702 uart
09dcc7d uart: pl011: Improve LCRH register access decision
2c096a9 uart: pl011: Introduce register look up table
7b753f3 uart: pl011: Introduce register accessor

The issue only appears with earlycon on command line, for pl011
consoles.

Some investigation shows that the cause lies with
commit 7b753f318d14 ("uart: pl011: Introduce register accessor")
and
commit 2c096a9eedc6 ("uart: pl011: Introduce register look up table")

Specifically, the changes to pl011_putc() are incorrect:
The new pl011_ accessors take a (struct uart_amba_port *) input, but
pl011_putc() directly uses the incoming (struct uart_port *) for this.

Apart from ending up with an unintended/incorrect UART base address,
the introduction of the lookup table for register offsets also means
the accessors try to dereference (struct uart_amba_port *)->reg_lut.

The below is a hack that shows/resolves the issue, but some
refactoring of the original patches might be in order.

/
    Leif
Leif,

Sorry for the inconvenience. I do not have idea of early console till
now and I always have debug console for early panic debug. Learned
more from this issue.

Suppose Peter's patch will resolve your issue.
[+ Greg KH]

So -next has now been broken for a while on a number of ARM platforms
because of this (they simply cannot boot), and no progress has been made
towards resolving this problem.

Can we please drop this series (at least commits 7b753f3 and following)
from -next until is has been reworked and reviewed?
I don't have any patches in my -next tree, everything is in Linus's tree
now.  So if I've missed something, or need to revert something, please
let me know specifcally what to do.

thanks,

greg k-h
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help