Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753893AbcCRXP3 (ORCPT ); Fri, 18 Mar 2016 19:15:29 -0400 Received: from mout.kundenserver.de ([217.72.192.73]:65337 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753186AbcCRXPR convert rfc822-to-8bit (ORCPT ); Fri, 18 Mar 2016 19:15:17 -0400 Date: Sat, 19 Mar 2016 00:14:49 +0100 (CET) From: Stefan Wahren To: John Youn , Doug Anderson , Eric Anholt , Martin Sperl Cc: Michael Niewoehner , Tao Huang , Julius Werner , Greg Kroah-Hartman , "linux-kernel@vger.kernel.org" , "linux-usb@vger.kernel.org" , Caesar Wang , Heiko Stuebner , Felipe Balbi , Remi Pommarel Message-ID: <1440674775.86542.7bdab192-0ed1-49f2-8559-819af7131cbd.open-xchange@email.1und1.de> In-Reply-To: <56E9A5E8.7090102@synopsys.com> References: <1457115786-11370-1-git-send-email-dianders@chromium.org> <1457115786-11370-2-git-send-email-dianders@chromium.org> <1400647253.149212.b3bb45b6-c852-4cf1-9d3e-9fb299176369.open-xchange@email.1und1.de> <941828343.8833.cdbd40c7-e6f4-4b3e-9665-30fc6680f6e0.open-xchange@email.1und1.de> <56E1C79D.3090104@synopsys.com> <56E9A5E8.7090102@synopsys.com> Subject: Re: [RFT PATCH 2/2] Revert "usb: dwc2: Fix probe problem on bcm2835" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-Priority: 3 Importance: Medium X-Mailer: Open-Xchange Mailer v7.8.0-Rev26 X-Originating-Client: com.openexchange.ox.gui.dhtml X-Provags-ID: V03:K0:27JgGS8Ewu7uShQZvlSJIM/tbBkayCKQNefBjeoeFHK9lPqlIE+ 0by/cv7YqQcVjwOWBzY5UpxoUKNlSMVj83nBLW0vAxhX7sNm6BSckfw4gxN2Itcx4tjTBo4 y8sKi7G1IPee18LOJnjWwhkOGfeB0J1+to+hRtQa1Ag8pWdu5sT5hHkATDHd3lhJVQdlRNl pSdLZ3d5cfEFaBpYDbDNA== X-UI-Out-Filterresults: notjunk:1;V01:K0:44mPKYBhbl8=:W6Kuv6v9QROajrdqNc9GEq 0el032yfTJm2ePIM0EZYQrpytXpcdjeSg70VxDnX0H5GAH/l99P8SrFqRkOsT163IuF5txP3A I+zNGGKmyPvh0HW7AyNXK9Muw+9XBcoPaWbqp1yNIq2Poc9BG6+SMeZVdYePp3/Qf3Iw54ugg 7ltJfHgxKsnLmDiJqjkvOP0cBfGt1bvF0jXOTlQs1sWIfMtaG1CMuwxgTi0PlGgn3GmLiedop l4lTZMlEpWXBNeph77YujchlFUWJ6wKCdEgRxtS2Ko+H9ebYCerDJ2iK6Yb2GbAX04AH7Xs+q V3rOdfDZJyuAs8Z3uX/8rmoqgb8dgf2lHKLwPL4IhbFWLfcVVJQaotHX9ev/ZMgIyuDUjGI4a Oh6/eBcGm/PXVECT6Ltyr4kb3VmiCceocYoYx9IpYUXcpYlymMuj6c5J5J6qNfjHMirczBum7 Pa76nvlrDeC0upydVmgxWQZlAZqPHMRBQjzi8/wv4ex8nf0cVygGaCaZY0xhJvTdAhvSrGwtQ FSeygrK2NcsPfOAXXBXEtmSTmPlPRua6Yyb0Hc2ZpQ/yq0hjRe85bb4EkR/64JHXCUYLZCHKK lgras+RxViP2JuYgR/KB0Nua9jARIeAoVGt8zMPB7X1kRrGvuLNyfDbYxjVZPl0L9yvWyNre+ bkGlOr88Cg22SM23qqRxsPa15Cuvvvv+Scjdu8G44obRM7LbMEGL+TCIbTkVWOkOmwHUkpRsx 31lYpeObDgJOmk5+ Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3422 Lines: 106 Hi Eric, hi Martin, > John Youn hat am 16. März 2016 um 19:28 geschrieben: > > > On 3/10/2016 11:14 AM, John Youn wrote: > > On 3/9/2016 11:06 AM, Doug Anderson wrote: > >> Stefan, > >> > >> On Wed, Mar 9, 2016 at 11:01 AM, Stefan Wahren > >> wrote: > >>> > >>>> Doug Anderson hat am 7. März 2016 um 22:30 > >>>> geschrieben: > >>>> > >>>> > >>>> Stefan, > >>>> > >>>> On Mon, Mar 7, 2016 at 10:40 AM, Stefan Wahren > >>>> wrote: > >>>>> Hi Doug, > >>>>> > >>>>>> Douglas Anderson hat am 4. März 2016 um 19:23 > >>>>>> geschrieben: > >>>>>> > >>>>>> > >>>>>> This reverts commit 192cb07f7928 ("usb: dwc2: Fix probe problem on > >>>>>> bcm2835") now that we've found the root cause. See the change > >>>>>> titled ("usb: dwc2: Add a 10 ms delay to dwc2_core_reset()"). > >>>>> > >>>>> adding a delay of 10 ms after a core reset might be a idea, but applying > >>>>> both > >>>>> patches breaks USB support on RPi :-( > >>>>> > >>>>> I'm getting the wrong register values ... > >>>> > >>>> Ugh. :( > >>>> > >>>> Just out of curiosity, if you loop and time long it takes for the > >>>> registers to get to the right state after reset, what do you get? > >>>> AKA, pick: > >>>> > >>>> https://chromium-review.googlesource.com/331260 > >>>> > >>>> ...and let me know what it prints out. > >>> > >>> On my Raspberry Pi B i get the following: > >>> > >>> [ 2.084411] dwc2 20980000.usb: mapped PA 20980000 to VA cc880000 > >>> [ 2.084461] dwc2 20980000.usb: cannot get otg clock > >>> [ 2.084549] dwc2 20980000.usb: registering common handler for irq33 > >>> [ 2.084713] dwc2 20980000.usb: Configuration mismatch. dr_mode forced to > >>> host > >>> [ 2.153965] dwc2 20980000.usb: Waited 49996 us, 0x00201000 => 0x01001000, > >>> 0x00000000 => 0x02002000 > >>> [ 2.174930] dwc2 20980000.usb: Forcing mode to host > >>> > >>> So i changed the delay in patch #1 to msleep(50) and then both patches > >>> work like > >>> a charm. > >> > >> Great news! :-) > >> > >> John: it's pretty clear that there's something taking almost exactly > >> 10ms on my system and almost exactly 50ms on Stefan's system. Is > >> there some register we could poll to see when this process is done? > >> ...or can we look at the dwc2 revision number / feature register and > >> detect how long to delay? > >> > > > > Hi Doug, > > > > I'll have to ask around to see if anyone knows about this. And I'll > > run some tests on the platforms I have available to me as well. > > > > There's still nothing definitive on our end as to why this is > happening. Also I don't think there is any other way to poll the > reset. Our hardware engineers asked for some more information to look > into it further. Doug, Stefan, Caesar, and anyone else with a related > platform, do you know the answers to the following: > > 1. What is the AHB Clock frequency? Is the AHB Clock gated during > Reset? > > 2. Also is the PHY clock stopped during the reset or is the PHY PLL > lock times high in the order of ms? > > 3. In these cases, is the PHY actually an FS Transceiver and not a > UTMI/ULPI PHY? are you able to answer these questions 1 - 3 for BCM2835? I don't want to say something wrong here. > > 4. Which version of the controller is being used in these cases? @John: The BCM2835 has version 2.80a Regards Stefan > > Regards, > John