Re: [PATCH v2] USB: ehci-s5p: Fix phy reset

From: Alexander Graf
Date: Thu Mar 14 2013 - 08:04:10 EST



On 14.03.2013, at 04:38, Doug Anderson wrote:

> Alexander,
>
> On Wed, Mar 13, 2013 at 4:59 PM, Alexander Graf <agraf@xxxxxxx> wrote:
>> On my Exynos 5 based Arndale system, I need to pull the reset line down
>> and then let it go up again to actually perform a reset. Without that
>> reset, I can't find any USB hubs on my bus, rendering the USB controller
>> useless.
>>
>> We also only need to reset the line after the phy node has been found.
>> This way we don't accidently reserve the vbus GPIO pin, but later on
>> defer the creation of our controller, because the phy device tree node
>> hasn't been probed yet.
>>
>> This patch implements the above logic, making EHCI and OHCI work on
>> Arndale systems for me.
>>
>> Signed-off-by: Alexander Graf <agraf@xxxxxxx>
>> CC: Vivek Gautam <gautam.vivek@xxxxxxxxxxx>
>> CC: Jingoo Han <jg1.han@xxxxxxxxxxx>
>> CC: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
>> CC: Kukjin Kim <kgene.kim@xxxxxxxxxxx>
>> CC: Felipe Balbi <balbi@xxxxxx>
>> CC: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
>> CC: Doug Anderson <dianders@xxxxxxxxxxxx>
>>
>> ---
>>
>> v1 -> v2:
>>
>> - remove gpio_free call
>> - move reset logic after phy node search
>
> Seems fine to me. I guess the earlier problem you wrote about was the
> probe failure, then?

Well, the problem I wrote about was that when I do

* probe
-> reset phy
* probe gets deferred
* deferred probe
-> can't reset phy because the pin is already in use

Then I get the same breakage again. However, if I do

* probe
* probe gets deferred
* deferred probe
-> reset phy

Then everything works just fine.

> I think that the reason I don't tend to get the
> probe failure is that I've got my device tree ordered differently so
> that the phy gets initted in a different order.

Odd - I get the deferral regardless of how I order my device tree :).


Alex

>
> I'll send up the devm_ patch atop this.
>
> Reviewed-by: Doug Anderson <dianders@xxxxxxxxxxxx>
>
> Thanks! :)
>
> -Doug

--
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/