From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_NEOMUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A1ACEC43142 for ; Mon, 25 Jun 2018 12:18:20 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 47C8C258E6 for ; Mon, 25 Jun 2018 12:18:20 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 47C8C258E6 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=collabora.co.uk Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933370AbeFYMSS (ORCPT ); Mon, 25 Jun 2018 08:18:18 -0400 Received: from bhuna.collabora.co.uk ([46.235.227.227]:41026 "EHLO bhuna.collabora.co.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752250AbeFYMSQ (ORCPT ); Mon, 25 Jun 2018 08:18:16 -0400 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: sre) with ESMTPSA id 3CD95263BD7 Date: Mon, 25 Jun 2018 14:18:13 +0200 From: Sebastian Reichel To: Fabio Estevam Cc: Andrey Smirnov , Greg Kroah-Hartman , Nikita Yushchenko , Peter Chen , USB list , linux-kernel , linux-arm-kernel , Fabio Estevam , Chris Healy , Lucas Stach Subject: Re: [PATCH] usb: chipidea: Fix ULPI on imx51 Message-ID: <20180625121813.rzqgzdbk6ue73eq4@earth.universe> References: <20180530173414.6121-1-andrew.smirnov@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="5duehklu3nfjqgin" Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20180512 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --5duehklu3nfjqgin Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hi, On Sun, Jun 24, 2018 at 08:51:20PM -0300, Fabio Estevam wrote: > Hi Andrey, >=20 > On Sun, Jun 24, 2018 at 7:40 PM, Andrey Smirnov > wrote: >=20 > > It's definitely the bootloader, or more specifically whether or not it > > initialized/used USB before booting the kernel. Some interesting > > highlights: > > > > - On your "good" 4.17.2 based image, if you interrupt U-Boot, do "usb > > start" (optionally "usb stop") and then "boot", you'll get the hang > > that I was trying to fix with my patch. > > > > - Things are exact opposite with 4.18-rc1 and doing the above would > > _prevent_ the hang and the image would boot fine. > > > > - Disabling USB in Barebox based boot "stack" gets it to behave the > > same way as U-boot from your image (hanging when booting 4.18-rc1) > > > > Digging more into code it seems that the reason for 4.18-rc1's > > behavior is the fact that it's missing a call hw_phymode_configure() > > after usb_phy_init() and, AFAICT, the only reason it is not happening > > is because default image is being built without > > CONFIG_USB_CHIPIDEA_ULPI and CONFIG_USB_ULPI_BUS. Enabling those two > > options on 4.18-rc1, seem to fix the problem on both your U-Boot based > > image and my "special" Barebox setup. > > > > So AFAICT, this patch still fixes a valid issue (my use-case was net > > booting via USB-Ethernet dongle), but an additional patch enabling > > those two configuration options might be needed. Thoughts? >=20 > Yes, I can confirm that your suggested change avoids the kernel hang: >=20 > diff --git a/arch/arm/configs/imx_v6_v7_defconfig > b/arch/arm/configs/imx_v6_v7_defconfig > index d14de86..2da678c 100644 > --- a/arch/arm/configs/imx_v6_v7_defconfig > +++ b/arch/arm/configs/imx_v6_v7_defconfig > @@ -300,6 +300,7 @@ CONFIG_USB_STORAGE=3Dy > CONFIG_USB_CHIPIDEA=3Dy > CONFIG_USB_CHIPIDEA_UDC=3Dy > CONFIG_USB_CHIPIDEA_HOST=3Dy > +CONFIG_USB_CHIPIDEA_ULPI=3Dy > CONFIG_USB_SERIAL=3Dm > CONFIG_USB_SERIAL_GENERIC=3Dy > CONFIG_USB_SERIAL_FTDI_SIO=3Dm > @@ -336,6 +337,7 @@ CONFIG_USB_GADGETFS=3Dm > CONFIG_USB_FUNCTIONFS=3Dm > CONFIG_USB_MASS_STORAGE=3Dm > CONFIG_USB_G_SERIAL=3Dm > +CONFIG_USB_ULPI_BUS=3Dy > CONFIG_MMC=3Dy > CONFIG_MMC_SDHCI=3Dy > CONFIG_MMC_SDHCI_PLTFM=3Dy >=20 > > Also, I don't have any i.MX53 HW, so I wasn't able to test the effects > > of enabling those two options there. >=20 > The imx53 board I have access to does not use ULPI. >=20 > Maybe Sebastian on Cc may help testing this on his imx53 board as he > is the author of: > be9cae2479f48 ("usb: chipidea: imx: Fix ULPI on imx53") I still have access to the imx53 based PPD from General Electric. But I don't understand what patch you want me to test. FWIW the images I use(d) for testing already had CONFIG_USB_CHIPIDEA_ULPI and CONFIG_USB_ULPI_BUS enabled. > I am wondering if we need to force some kind of USB reset to put the > USB controller into a known state independently of what the bootloader > has done previously. Makes sense to me. -- Sebastian --5duehklu3nfjqgin Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEE72YNB0Y/i3JqeVQT2O7X88g7+poFAlsw3X8ACgkQ2O7X88g7 +ppPfA/+MkIOWrPTnf6628dCfDQrF7zRe4xC0A13ePHDrvHmvJDuGckDOSmEqjD3 4RGq9KMZY5jUh82eiPblx99K/HqiySxbOG87CSlnHQHZqPTu/sksiiExnoTboImV ObfqoNtJ2HH73LD2FfnLHTtFDBS/a92dAfk1YMBDPAKiL3lCivcw4hZ13thwhqGP c9UW3V6ZTKNalokwMUs+wm1FfSYOetKrZRVmnHJlcSMnEFeFcrc1YOZbzdnGI9wn 0HDQXP7nbm8hHJVGidAt9hBikJZw8DbPjKebVsLxU91OgVJvTNBNPUa/MQVz9Ert Jujrk5MnvenrDfsC87MyggP3HsnK1I6T01eH48qIBDeqK+yywRTiFJyJ+arAzfFE KTLC24AJhbIWw3Hsn9TbkPeBfgqD9T6OwISubl/bFyszxb/PCfAg2RmgDNEkEP/g Qhf8Blf8tXmJtleD5P5YxV/ikkeoHuF1zMpNeVKwaeeyffFlueBQhs58cEvbD+r6 ZO6x6MVHOYBRrbnxEf62bCWijFIzGl4NuKMy7j6RZIM3HjPrXbDHbrB4ETvhbZUy WS+Vay71E3hlo28JXFGjreQmgjtNek9RuS/jeCOxw5XigGCaOzfVTO5Nehaxj+xF 2HtoVgFwcwpWBV0FQSWO3ZUL0/IB/PoJwX7pr0RdocEj8Ojd/VM= =VnDV -----END PGP SIGNATURE----- --5duehklu3nfjqgin-- From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: usb: chipidea: Fix ULPI on imx51 From: Sebastian Reichel Message-Id: <20180625121813.rzqgzdbk6ue73eq4@earth.universe> Date: Mon, 25 Jun 2018 14:18:13 +0200 To: Fabio Estevam Cc: Andrey Smirnov , Greg Kroah-Hartman , Nikita Yushchenko , Peter Chen , USB list , linux-kernel , linux-arm-kernel , Fabio Estevam , Chris Healy , Lucas Stach List-ID: SGksCgpPbiBTdW4sIEp1biAyNCwgMjAxOCBhdCAwODo1MToyMFBNIC0wMzAwLCBGYWJpbyBFc3Rl dmFtIHdyb3RlOgo+IEhpIEFuZHJleSwKPiAKPiBPbiBTdW4sIEp1biAyNCwgMjAxOCBhdCA3OjQw IFBNLCBBbmRyZXkgU21pcm5vdgo+IDxhbmRyZXcuc21pcm5vdkBnbWFpbC5jb20+IHdyb3RlOgo+ IAo+ID4gSXQncyBkZWZpbml0ZWx5IHRoZSBib290bG9hZGVyLCBvciBtb3JlIHNwZWNpZmljYWxs eSB3aGV0aGVyIG9yIG5vdCBpdAo+ID4gaW5pdGlhbGl6ZWQvdXNlZCBVU0IgYmVmb3JlIGJvb3Rp bmcgdGhlIGtlcm5lbC4gU29tZSBpbnRlcmVzdGluZwo+ID4gaGlnaGxpZ2h0czoKPiA+Cj4gPiAg LSBPbiB5b3VyICJnb29kIiA0LjE3LjIgYmFzZWQgaW1hZ2UsIGlmIHlvdSBpbnRlcnJ1cHQgVS1C b290LCBkbyAidXNiCj4gPiBzdGFydCIgKG9wdGlvbmFsbHkgInVzYiBzdG9wIikgYW5kIHRoZW4g ImJvb3QiLCB5b3UnbGwgZ2V0IHRoZSBoYW5nCj4gPiB0aGF0IEkgd2FzIHRyeWluZyB0byBmaXgg d2l0aCBteSBwYXRjaC4KPiA+Cj4gPiAgLSBUaGluZ3MgYXJlIGV4YWN0IG9wcG9zaXRlIHdpdGgg NC4xOC1yYzEgYW5kIGRvaW5nIHRoZSBhYm92ZSB3b3VsZAo+ID4gX3ByZXZlbnRfIHRoZSBoYW5n IGFuZCB0aGUgaW1hZ2Ugd291bGQgYm9vdCBmaW5lLgo+ID4KPiA+ICAtIERpc2FibGluZyBVU0Ig aW4gQmFyZWJveCBiYXNlZCBib290ICJzdGFjayIgZ2V0cyBpdCB0byBiZWhhdmUgdGhlCj4gPiBz YW1lIHdheSBhcyBVLWJvb3QgZnJvbSB5b3VyIGltYWdlIChoYW5naW5nIHdoZW4gYm9vdGluZyA0 LjE4LXJjMSkKPiA+Cj4gPiBEaWdnaW5nIG1vcmUgaW50byBjb2RlIGl0IHNlZW1zIHRoYXQgdGhl IHJlYXNvbiBmb3IgNC4xOC1yYzEncwo+ID4gYmVoYXZpb3IgaXMgdGhlIGZhY3QgdGhhdCBpdCdz IG1pc3NpbmcgYSBjYWxsIGh3X3BoeW1vZGVfY29uZmlndXJlKCkKPiA+IGFmdGVyIHVzYl9waHlf aW5pdCgpIGFuZCwgQUZBSUNULCB0aGUgb25seSByZWFzb24gaXQgaXMgbm90IGhhcHBlbmluZwo+ ID4gaXMgYmVjYXVzZSBkZWZhdWx0IGltYWdlIGlzIGJlaW5nIGJ1aWx0IHdpdGhvdXQKPiA+IENP TkZJR19VU0JfQ0hJUElERUFfVUxQSSBhbmQgQ09ORklHX1VTQl9VTFBJX0JVUy4gRW5hYmxpbmcg dGhvc2UgdHdvCj4gPiBvcHRpb25zIG9uIDQuMTgtcmMxLCBzZWVtIHRvIGZpeCB0aGUgcHJvYmxl bSBvbiBib3RoIHlvdXIgVS1Cb290IGJhc2VkCj4gPiBpbWFnZSBhbmQgbXkgInNwZWNpYWwiIEJh cmVib3ggc2V0dXAuCj4gPgo+ID4gU28gQUZBSUNULCB0aGlzIHBhdGNoIHN0aWxsIGZpeGVzIGEg dmFsaWQgaXNzdWUgKG15IHVzZS1jYXNlIHdhcyBuZXQKPiA+IGJvb3RpbmcgdmlhIFVTQi1FdGhl cm5ldCBkb25nbGUpLCBidXQgYW4gYWRkaXRpb25hbCBwYXRjaCBlbmFibGluZwo+ID4gdGhvc2Ug dHdvIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBtaWdodCBiZSBuZWVkZWQuIFRob3VnaHRzPwo+IAo+ IFllcywgSSBjYW4gY29uZmlybSB0aGF0IHlvdXIgc3VnZ2VzdGVkIGNoYW5nZSBhdm9pZHMgdGhl IGtlcm5lbCBoYW5nOgo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9jb25maWdzL2lteF92Nl92 N19kZWZjb25maWcKPiBiL2FyY2gvYXJtL2NvbmZpZ3MvaW14X3Y2X3Y3X2RlZmNvbmZpZwo+IGlu ZGV4IGQxNGRlODYuLjJkYTY3OGMgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm0vY29uZmlncy9pbXhf djZfdjdfZGVmY29uZmlnCj4gKysrIGIvYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29u ZmlnCj4gQEAgLTMwMCw2ICszMDAsNyBAQCBDT05GSUdfVVNCX1NUT1JBR0U9eQo+ICBDT05GSUdf VVNCX0NISVBJREVBPXkKPiAgQ09ORklHX1VTQl9DSElQSURFQV9VREM9eQo+ICBDT05GSUdfVVNC X0NISVBJREVBX0hPU1Q9eQo+ICtDT05GSUdfVVNCX0NISVBJREVBX1VMUEk9eQo+ICBDT05GSUdf VVNCX1NFUklBTD1tCj4gIENPTkZJR19VU0JfU0VSSUFMX0dFTkVSSUM9eQo+ICBDT05GSUdfVVNC X1NFUklBTF9GVERJX1NJTz1tCj4gQEAgLTMzNiw2ICszMzcsNyBAQCBDT05GSUdfVVNCX0dBREdF VEZTPW0KPiAgQ09ORklHX1VTQl9GVU5DVElPTkZTPW0KPiAgQ09ORklHX1VTQl9NQVNTX1NUT1JB R0U9bQo+ICBDT05GSUdfVVNCX0dfU0VSSUFMPW0KPiArQ09ORklHX1VTQl9VTFBJX0JVUz15Cj4g IENPTkZJR19NTUM9eQo+ICBDT05GSUdfTU1DX1NESENJPXkKPiAgQ09ORklHX01NQ19TREhDSV9Q TFRGTT15Cj4gCj4gPiBBbHNvLCBJIGRvbid0IGhhdmUgYW55IGkuTVg1MyBIVywgc28gSSB3YXNu J3QgYWJsZSB0byB0ZXN0IHRoZSBlZmZlY3RzCj4gPiBvZiBlbmFibGluZyB0aG9zZSB0d28gb3B0 aW9ucyB0aGVyZS4KPiAKPiBUaGUgaW14NTMgYm9hcmQgSSBoYXZlIGFjY2VzcyB0byBkb2VzIG5v dCB1c2UgVUxQSS4KPiAKPiBNYXliZSBTZWJhc3RpYW4gb24gQ2MgbWF5IGhlbHAgdGVzdGluZyB0 aGlzIG9uIGhpcyBpbXg1MyBib2FyZCBhcyBoZQo+IGlzIHRoZSBhdXRob3Igb2Y6Cj4gYmU5Y2Fl MjQ3OWY0OCAoInVzYjogY2hpcGlkZWE6IGlteDogRml4IFVMUEkgb24gaW14NTMiKQoKSSBzdGls bCBoYXZlIGFjY2VzcyB0byB0aGUgaW14NTMgYmFzZWQgUFBEIGZyb20gR2VuZXJhbCBFbGVjdHJp Yy4KQnV0IEkgZG9uJ3QgdW5kZXJzdGFuZCB3aGF0IHBhdGNoIHlvdSB3YW50IG1lIHRvIHRlc3Qu IEZXSVcgdGhlCmltYWdlcyBJIHVzZShkKSBmb3IgdGVzdGluZyBhbHJlYWR5IGhhZCBDT05GSUdf VVNCX0NISVBJREVBX1VMUEkKYW5kIENPTkZJR19VU0JfVUxQSV9CVVMgZW5hYmxlZC4KCj4gSSBh bSB3b25kZXJpbmcgaWYgd2UgbmVlZCB0byBmb3JjZSBzb21lIGtpbmQgb2YgVVNCIHJlc2V0IHRv IHB1dCB0aGUKPiBVU0IgY29udHJvbGxlciBpbnRvIGEga25vd24gc3RhdGUgaW5kZXBlbmRlbnRs eSBvZiB3aGF0IHRoZSBib290bG9hZGVyCj4gaGFzIGRvbmUgcHJldmlvdXNseS4KCk1ha2VzIHNl bnNlIHRvIG1lLgoKLS0gU2ViYXN0aWFuCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: sebastian.reichel@collabora.co.uk (Sebastian Reichel) Date: Mon, 25 Jun 2018 14:18:13 +0200 Subject: [PATCH] usb: chipidea: Fix ULPI on imx51 In-Reply-To: References: <20180530173414.6121-1-andrew.smirnov@gmail.com> Message-ID: <20180625121813.rzqgzdbk6ue73eq4@earth.universe> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi, On Sun, Jun 24, 2018 at 08:51:20PM -0300, Fabio Estevam wrote: > Hi Andrey, > > On Sun, Jun 24, 2018 at 7:40 PM, Andrey Smirnov > wrote: > > > It's definitely the bootloader, or more specifically whether or not it > > initialized/used USB before booting the kernel. Some interesting > > highlights: > > > > - On your "good" 4.17.2 based image, if you interrupt U-Boot, do "usb > > start" (optionally "usb stop") and then "boot", you'll get the hang > > that I was trying to fix with my patch. > > > > - Things are exact opposite with 4.18-rc1 and doing the above would > > _prevent_ the hang and the image would boot fine. > > > > - Disabling USB in Barebox based boot "stack" gets it to behave the > > same way as U-boot from your image (hanging when booting 4.18-rc1) > > > > Digging more into code it seems that the reason for 4.18-rc1's > > behavior is the fact that it's missing a call hw_phymode_configure() > > after usb_phy_init() and, AFAICT, the only reason it is not happening > > is because default image is being built without > > CONFIG_USB_CHIPIDEA_ULPI and CONFIG_USB_ULPI_BUS. Enabling those two > > options on 4.18-rc1, seem to fix the problem on both your U-Boot based > > image and my "special" Barebox setup. > > > > So AFAICT, this patch still fixes a valid issue (my use-case was net > > booting via USB-Ethernet dongle), but an additional patch enabling > > those two configuration options might be needed. Thoughts? > > Yes, I can confirm that your suggested change avoids the kernel hang: > > diff --git a/arch/arm/configs/imx_v6_v7_defconfig > b/arch/arm/configs/imx_v6_v7_defconfig > index d14de86..2da678c 100644 > --- a/arch/arm/configs/imx_v6_v7_defconfig > +++ b/arch/arm/configs/imx_v6_v7_defconfig > @@ -300,6 +300,7 @@ CONFIG_USB_STORAGE=y > CONFIG_USB_CHIPIDEA=y > CONFIG_USB_CHIPIDEA_UDC=y > CONFIG_USB_CHIPIDEA_HOST=y > +CONFIG_USB_CHIPIDEA_ULPI=y > CONFIG_USB_SERIAL=m > CONFIG_USB_SERIAL_GENERIC=y > CONFIG_USB_SERIAL_FTDI_SIO=m > @@ -336,6 +337,7 @@ CONFIG_USB_GADGETFS=m > CONFIG_USB_FUNCTIONFS=m > CONFIG_USB_MASS_STORAGE=m > CONFIG_USB_G_SERIAL=m > +CONFIG_USB_ULPI_BUS=y > CONFIG_MMC=y > CONFIG_MMC_SDHCI=y > CONFIG_MMC_SDHCI_PLTFM=y > > > Also, I don't have any i.MX53 HW, so I wasn't able to test the effects > > of enabling those two options there. > > The imx53 board I have access to does not use ULPI. > > Maybe Sebastian on Cc may help testing this on his imx53 board as he > is the author of: > be9cae2479f48 ("usb: chipidea: imx: Fix ULPI on imx53") I still have access to the imx53 based PPD from General Electric. But I don't understand what patch you want me to test. FWIW the images I use(d) for testing already had CONFIG_USB_CHIPIDEA_ULPI and CONFIG_USB_ULPI_BUS enabled. > I am wondering if we need to force some kind of USB reset to put the > USB controller into a known state independently of what the bootloader > has done previously. Makes sense to me. -- Sebastian -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 833 bytes Desc: not available URL: