From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Hurley Subject: Re: earlycon issues in -next with amba-pl011 updates Date: Thu, 3 Sep 2015 14:21:32 -0400 Message-ID: <55E88FAC.5060703@hurleysoftware.com> References: <20150810232312.GB10728@bivouac.eciton.net> <55E81F93.1020104@arm.com> <20150903155255.GA28336@kroah.com> <55E87095.4030600@arm.com> <55E8880E.5080707@hurleysoftware.com> <20150903175327.GA29340@kroah.com> <55E88B79.5090804@hurleysoftware.com> <55E88E7C.9040609@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <55E88E7C.9040609@arm.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Marc Zyngier , Greg Kroah-Hartman Cc: Jun Nie , Tyler Baker , linux-arm-kernel@lists.infradead.org, Leif Lindholm , linux-serial@vger.kernel.org List-Id: linux-serial@vger.kernel.org T24gMDkvMDMvMjAxNSAwMjoxNiBQTSwgTWFyYyBaeW5naWVyIHdyb3RlOgo+IE9uIDAzLzA5LzE1 IDE5OjAzLCBQZXRlciBIdXJsZXkgd3JvdGU6Cj4+IE9uIDA5LzAzLzIwMTUgMDE6NTMgUE0sIEdy ZWcgS3JvYWgtSGFydG1hbiB3cm90ZToKPj4+IE9uIFRodSwgU2VwIDAzLCAyMDE1IGF0IDAxOjQ5 OjAyUE0gLTA0MDAsIFBldGVyIEh1cmxleSB3cm90ZToKPj4+PiBPbiAwOS8wMy8yMDE1IDEyOjA4 IFBNLCBNYXJjIFp5bmdpZXIgd3JvdGU6Cj4+Pj4+IE9uIDAzLzA5LzE1IDE2OjUyLCBHcmVnIEty b2FoLUhhcnRtYW4gd3JvdGU6Cj4+Pj4+PiBPbiBUaHUsIFNlcCAwMywgMjAxNSBhdCAxMToyMzox NUFNICswMTAwLCBNYXJjIFp5bmdpZXIgd3JvdGU6Cj4+Pj4+Pj4gT24gMTEvMDgvMTUgMDI6NDgs IEp1biBOaWUgd3JvdGU6Cj4+Pj4+Pj4+IDIwMTUtMDgtMTEgNzoyMyBHTVQrMDg6MDAgTGVpZiBM aW5kaG9sbSA8bGVpZi5saW5kaG9sbUBsaW5hcm8ub3JnPjoKPj4+Pj4+Pj4+IEhpIGFsbCwKPj4+ Pj4+Pj4+Cj4+Pj4+Pj4+PiBUaGUga2VybmVsY2kub3JnIGJvdCBwaWNrZWQgdXAgYSBjb21wbGV0 ZSBib290IGZhaWx1cmUgKG5vIG91dHB1dCBwYXN0Cj4+Pj4+Pj4+PiBVRUZJIHN0dWIpIHdpdGgg bmV4dC0yMDE1MDgwNiBhbmQgVHlsZXIgYmlzZWN0ZWQgaXQgZG93biB0byBzb21ld2hlcmUKPj4+ Pj4+Pj4+IGluCj4+Pj4+Pj4+PiA4Y2Q5MGU1IHVhcnQ6IHBsMDExOiBBZGQgc3VwcG9ydCB0byBa VEUgWlgyOTY3MDIgdWFydAo+Pj4+Pj4+Pj4gMDlkY2M3ZCB1YXJ0OiBwbDAxMTogSW1wcm92ZSBM Q1JIIHJlZ2lzdGVyIGFjY2VzcyBkZWNpc2lvbgo+Pj4+Pj4+Pj4gMmMwOTZhOSB1YXJ0OiBwbDAx MTogSW50cm9kdWNlIHJlZ2lzdGVyIGxvb2sgdXAgdGFibGUKPj4+Pj4+Pj4+IDdiNzUzZjMgdWFy dDogcGwwMTE6IEludHJvZHVjZSByZWdpc3RlciBhY2Nlc3Nvcgo+Pj4+Pj4+Pj4KPj4+Pj4+Pj4+ IFRoZSBpc3N1ZSBvbmx5IGFwcGVhcnMgd2l0aCBlYXJseWNvbiBvbiBjb21tYW5kIGxpbmUsIGZv ciBwbDAxMQo+Pj4+Pj4+Pj4gY29uc29sZXMuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gU29tZSBpbnZl c3RpZ2F0aW9uIHNob3dzIHRoYXQgdGhlIGNhdXNlIGxpZXMgd2l0aAo+Pj4+Pj4+Pj4gY29tbWl0 IDdiNzUzZjMxOGQxNCAoInVhcnQ6IHBsMDExOiBJbnRyb2R1Y2UgcmVnaXN0ZXIgYWNjZXNzb3Ii KQo+Pj4+Pj4+Pj4gYW5kCj4+Pj4+Pj4+PiBjb21taXQgMmMwOTZhOWVlZGM2ICgidWFydDogcGww MTE6IEludHJvZHVjZSByZWdpc3RlciBsb29rIHVwIHRhYmxlIikKPj4+Pj4+Pj4+Cj4+Pj4+Pj4+ PiBTcGVjaWZpY2FsbHksIHRoZSBjaGFuZ2VzIHRvIHBsMDExX3B1dGMoKSBhcmUgaW5jb3JyZWN0 Ogo+Pj4+Pj4+Pj4gVGhlIG5ldyBwbDAxMV8gYWNjZXNzb3JzIHRha2UgYSAoc3RydWN0IHVhcnRf YW1iYV9wb3J0ICopIGlucHV0LCBidXQKPj4+Pj4+Pj4+IHBsMDExX3B1dGMoKSBkaXJlY3RseSB1 c2VzIHRoZSBpbmNvbWluZyAoc3RydWN0IHVhcnRfcG9ydCAqKSBmb3IgdGhpcy4KPj4+Pj4+Pj4+ Cj4+Pj4+Pj4+PiBBcGFydCBmcm9tIGVuZGluZyB1cCB3aXRoIGFuIHVuaW50ZW5kZWQvaW5jb3Jy ZWN0IFVBUlQgYmFzZSBhZGRyZXNzLAo+Pj4+Pj4+Pj4gdGhlIGludHJvZHVjdGlvbiBvZiB0aGUg bG9va3VwIHRhYmxlIGZvciByZWdpc3RlciBvZmZzZXRzIGFsc28gbWVhbnMKPj4+Pj4+Pj4+IHRo ZSBhY2Nlc3NvcnMgdHJ5IHRvIGRlcmVmZXJlbmNlIChzdHJ1Y3QgdWFydF9hbWJhX3BvcnQgKikt PnJlZ19sdXQuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4gVGhlIGJlbG93IGlzIGEgaGFjayB0aGF0IHNo b3dzL3Jlc29sdmVzIHRoZSBpc3N1ZSwgYnV0IHNvbWUKPj4+Pj4+Pj4+IHJlZmFjdG9yaW5nIG9m IHRoZSBvcmlnaW5hbCBwYXRjaGVzIG1pZ2h0IGJlIGluIG9yZGVyLgo+Pj4+Pj4+Pj4KPj4+Pj4+ Pj4+IC8KPj4+Pj4+Pj4+ICAgICBMZWlmCj4+Pj4+Pj4+Cj4+Pj4+Pj4+IExlaWYsCj4+Pj4+Pj4+ Cj4+Pj4+Pj4+IFNvcnJ5IGZvciB0aGUgaW5jb252ZW5pZW5jZS4gSSBkbyBub3QgaGF2ZSBpZGVh IG9mIGVhcmx5IGNvbnNvbGUgdGlsbAo+Pj4+Pj4+PiBub3cgYW5kIEkgYWx3YXlzIGhhdmUgZGVi dWcgY29uc29sZSBmb3IgZWFybHkgcGFuaWMgZGVidWcuIExlYXJuZWQKPj4+Pj4+Pj4gbW9yZSBm cm9tIHRoaXMgaXNzdWUuCj4+Pj4+Pj4+Cj4+Pj4+Pj4+IFN1cHBvc2UgUGV0ZXIncyBwYXRjaCB3 aWxsIHJlc29sdmUgeW91ciBpc3N1ZS4KPj4+Pj4+Pgo+Pj4+Pj4+IFsrIEdyZWcgS0hdCj4+Pj4+ Pj4KPj4+Pj4+PiBTbyAtbmV4dCBoYXMgbm93IGJlZW4gYnJva2VuIGZvciBhIHdoaWxlIG9uIGEg bnVtYmVyIG9mIEFSTSBwbGF0Zm9ybXMKPj4+Pj4+PiBiZWNhdXNlIG9mIHRoaXMgKHRoZXkgc2lt cGx5IGNhbm5vdCBib290KSwgYW5kIG5vIHByb2dyZXNzIGhhcyBiZWVuIG1hZGUKPj4+Pj4+PiB0 b3dhcmRzIHJlc29sdmluZyB0aGlzIHByb2JsZW0uCj4+Pj4+Pj4KPj4+Pj4+PiBDYW4gd2UgcGxl YXNlIGRyb3AgdGhpcyBzZXJpZXMgKGF0IGxlYXN0IGNvbW1pdHMgN2I3NTNmMyBhbmQgZm9sbG93 aW5nKQo+Pj4+Pj4+IGZyb20gLW5leHQgdW50aWwgaXMgaGFzIGJlZW4gcmV3b3JrZWQgYW5kIHJl dmlld2VkPwo+Pj4+Pj4KPj4+Pj4+IEkgZG9uJ3QgaGF2ZSBhbnkgcGF0Y2hlcyBpbiBteSAtbmV4 dCB0cmVlLCBldmVyeXRoaW5nIGlzIGluIExpbnVzJ3MgdHJlZQo+Pj4+Pj4gbm93LiAgU28gaWYg SSd2ZSBtaXNzZWQgc29tZXRoaW5nLCBvciBuZWVkIHRvIHJldmVydCBzb21ldGhpbmcsIHBsZWFz ZQo+Pj4+Pj4gbGV0IG1lIGtub3cgc3BlY2lmY2FsbHkgd2hhdCB0byBkby4KPj4+Pj4KPj4+Pj4g R2FoaGguLi4gR2l2ZW4gdGhhdCB0aGVyZSBpcyBubyBvYnZpb3VzIGZpeAo+Pj4+Cj4+Pj4gRml4 IGhhcyBiZWVuIG9uIGxpc3Qgc2luY2UgQXVnIDEwLgo+Pj4+Cj4+Pj4gaHR0cDovL3d3dy5zcGlu aWNzLm5ldC9saXN0cy9saW51eC1zZXJpYWwvbXNnMTg1NzYuaHRtbAo+Pj4KPj4+IE5vdyBpZiBv bmx5IHNvbWVvbmUgd291bGQgaGF2ZSBhdCBsZWFzdCBjb21waWxlIHRlc3RlZCBpdCA6KQo+Pgo+ PiBPbiAwOC8xMS8yMDE1IDA2OjA3IEFNLCBMZWlmIExpbmRob2xtIHdyb3RlOgo+Pj4gSXQgd29y a3MsIGJ1dCBidWlsZHMgd2l0aDoKPj4+IGRyaXZlcnMvdHR5L3NlcmlhbC9hbWJhLXBsMDExLmM6 MzI5OjEzOiB3YXJuaW5nOiDigJhwbDAxMV93cml0ZWLigJkKPj4+IGRlZmluZWQgYnV0IG5vdCB1 c2VkIFstV3VudXNlZC1mdW5jdGlvbl0KPj4+ICBzdGF0aWMgdm9pZCBwbDAxMV93cml0ZWIoc3Ry dWN0IHVhcnRfYW1iYV9wb3J0ICp1YXAsIHU4IHZhbCwgaW50Cj4+PiAgaW5kZXgpCj4+PiAgICAg ICAgICAgICAgXgo+Pj4gSSB3YXMgZGl0aGVyaW5nIGFib3V0IHdoZXRoZXIgaGF2aW5nIF9yZWxh eGVkIGFjY2Vzc29ycyBpbiBwb3N0IGJvb3QKPj4+IGNvZGUgYW5kIHBsYWluIG9uZXMgaW4gZWFy bHljb24gd2FzIGFuIGlzc3VlLCBidXQgSSBndWVzcyBpdCBkb2Vzbid0Cj4+PiBtYXR0ZXIgbXVj aC4KPj4KPj4gUnVzc2VsbCB3YW50ZWQgbWUgdG8gZG8gYSBidW5jaCBvZiBpbXByb3ZlbWVudHMs IGJ1dCBJIHdyb3RlIHRoYXQKPj4gc2hvdWxkIHdhaXQgdW50aWwgNC4zLXJjIGN5Y2xlLgo+IAo+ IEl0IGlzIHdlbGwga25vd24gdGhhdCB3ZSBtZXJnZSAiaW1wcm92ZW1lbnRzIiBvdXRzaWRlIG9m IHRoZSBtZXJnZQo+IHdpbmRvdy4gQW5kIHdoYXQgYWJvdXQgc3RhcnRpbmcgd2l0aCBhIHNlcmll cyB0aGF0IGlzIGFjdHVhbGx5IGJpc2VjdGFibGU/Cj4gCj4gSXQgaXMgcXVpdGUgYXBwYXJlbnQg dGhhdCB0aGlzIGNvZGUgaGFzbid0IGJlZW4gdGVzdGVkIGVub3VnaCwgaGFzbid0Cj4gYmVlbiBy ZXZpZXdlZCBlbm91Z2gsIGFuZCBicmVha3MgYSB3aWRlIHJhbmdlIG9mIHBsYXRmb3JtcyAoYWxt b3N0Cj4gYW55dGhpbmcgdGhhdCBzaXRzIG9uIGFuZCB1bmRlciBteSBkZXNrLCBUQkgpLgo+IAo+ IFRoYXQncyByZWFsbHkgZm9yIEdyZWcgdG8gZGVjaWRlLCBidXQgSSdtIG5vdCBvdmVybHkgY29u ZmlkZW50IHdpdGggdGhlCj4gc3RhdGUgb2YgdGhpcyBzZXJpZXMgYXMgaXQgc3RhbmRzLgoKSWYg eW91IGZlZWwgdGhlIGNvZGUgaXMgbm90IHJlbGlhYmxlIGVub3VnaC90ZXN0ZWQvbm90IGJpc2Vj dGFibGUvd2hhdGV2ZXIsCkkgaGF2ZSBubyBvYmplY3Rpb24gdG8gcmV2ZXJ0aW5nIGFuZCBzdGFy dGluZyBhZ2Fpbi4KCkJ1dCBpZiB0aGUgaXNzdWUgaXMgb25seSB3cnQgZWFybHljb24sIHRoZW4g bXkgcGF0Y2ggb3VnaHQgdG8gYWRkcmVzcyB0aGF0LgoKUmVnYXJkcywKUGV0ZXIgSHVybGV5CgoK X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJt LWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3Jn Cmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtl cm5lbAo= From mboxrd@z Thu Jan 1 00:00:00 1970 From: peter@hurleysoftware.com (Peter Hurley) Date: Thu, 3 Sep 2015 14:21:32 -0400 Subject: earlycon issues in -next with amba-pl011 updates In-Reply-To: <55E88E7C.9040609@arm.com> References: <20150810232312.GB10728@bivouac.eciton.net> <55E81F93.1020104@arm.com> <20150903155255.GA28336@kroah.com> <55E87095.4030600@arm.com> <55E8880E.5080707@hurleysoftware.com> <20150903175327.GA29340@kroah.com> <55E88B79.5090804@hurleysoftware.com> <55E88E7C.9040609@arm.com> Message-ID: <55E88FAC.5060703@hurleysoftware.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 09/03/2015 02:16 PM, Marc Zyngier wrote: > On 03/09/15 19:03, Peter Hurley wrote: >> On 09/03/2015 01:53 PM, Greg Kroah-Hartman wrote: >>> On Thu, Sep 03, 2015 at 01:49:02PM -0400, Peter Hurley wrote: >>>> On 09/03/2015 12:08 PM, Marc Zyngier wrote: >>>>> On 03/09/15 16:52, Greg Kroah-Hartman wrote: >>>>>> On Thu, Sep 03, 2015 at 11:23:15AM +0100, Marc Zyngier wrote: >>>>>>> On 11/08/15 02:48, Jun Nie wrote: >>>>>>>> 2015-08-11 7:23 GMT+08:00 Leif Lindholm : >>>>>>>>> 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. >>>>> >>>>> Gahhh... Given that there is no obvious fix >>>> >>>> Fix has been on list since Aug 10. >>>> >>>> http://www.spinics.net/lists/linux-serial/msg18576.html >>> >>> Now if only someone would have at least compile tested it :) >> >> On 08/11/2015 06:07 AM, Leif Lindholm wrote: >>> It works, but builds with: >>> drivers/tty/serial/amba-pl011.c:329:13: warning: ?pl011_writeb? >>> defined but not used [-Wunused-function] >>> static void pl011_writeb(struct uart_amba_port *uap, u8 val, int >>> index) >>> ^ >>> I was dithering about whether having _relaxed accessors in post boot >>> code and plain ones in earlycon was an issue, but I guess it doesn't >>> matter much. >> >> Russell wanted me to do a bunch of improvements, but I wrote that >> should wait until 4.3-rc cycle. > > It is well known that we merge "improvements" outside of the merge > window. And what about starting with a series that is actually bisectable? > > It is quite apparent that this code hasn't been tested enough, hasn't > been reviewed enough, and breaks a wide range of platforms (almost > anything that sits on and under my desk, TBH). > > That's really for Greg to decide, but I'm not overly confident with the > state of this series as it stands. If you feel the code is not reliable enough/tested/not bisectable/whatever, I have no objection to reverting and starting again. But if the issue is only wrt earlycon, then my patch ought to address that. Regards, Peter Hurley