Bug 206435

Summary: dwc3 dwc3.3.auto: no usb2 phy configured
Product: Drivers Reporter: youling257
Component: USBAssignee: alexandre.torgue
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: normal CC: andy.shevchenko, bugzilla, jwrdegoede, kishon, youling257
Priority: P1    
Hardware: x86-64   
OS: Linux   
Kernel Version: 5.6 Subsystem:
Regression: No Bisected commit-id:
Attachments: signature.asc
signature.asc
signature.asc

Description youling257 2020-02-05 20:09:29 UTC
android_x86:/ $ dmesg | grep dwc
[    8.956913] dwc3 dwc3.3.auto: failed to create device link to dwc3.3.auto.ulpi
[    8.979682] dwc3 dwc3.3.auto: no usb2 phy configured
[    8.986984] dwc3 dwc3.3.auto: failed to initialize core: -22
[    8.993597] dwc3: probe of dwc3.3.auto failed with error -22
android_x86:/ $

some Bay trail device has a phy_tusb1210 used for dwc3.
Comment 1 youling257 2020-02-05 20:16:35 UTC
kernel 5.6 coming soon, test the master branch, dwc3 not work on my z3735f, work on z8350.
Comment 2 Felipe Balbi 2020-02-06 06:25:06 UTC
Created attachment 287155 [details]
signature.asc

Hi,

bugzilla-daemon@bugzilla.kernel.org writes:
> https://bugzilla.kernel.org/show_bug.cgi?id=206435
>
> --- Comment #1 from youling257@gmail.com ---
> kernel 5.6 coming soon, test the master branch, dwc3 not work on my z3735f,
> work on z8350.

What is z3735f and z8350? Are these platforms supported upstream? Who
maintains those platforms?
Comment 3 youling257 2020-02-06 12:47:47 UTC
Revert 987351e1ea7772cf2f0795e917fb33b2e282e1c1 phy: core: Add consumer device link support, dwc3 work for my z3735f device.

android_x86:/ $ su
android_x86:/ # dmesg | grep dwc
[    9.724606] dwc3 dwc3.3.auto: changing max_speed on rev 5533210a
[   47.488501] udc dwc3.3.auto: registering UDC driver [g1]
Comment 4 Felipe Balbi 2020-02-06 18:32:21 UTC
Created attachment 287185 [details]
signature.asc

Hi,

bugzilla-daemon@bugzilla.kernel.org writes:
> https://bugzilla.kernel.org/show_bug.cgi?id=206435
>
> --- Comment #3 from youling257@gmail.com ---
> Revert 987351e1ea7772cf2f0795e917fb33b2e282e1c1 phy: core: Add consumer
> device
> link support, dwc3 work for my z3735f device.
>
> android_x86:/ $ su
> android_x86:/ # dmesg | grep dwc
> [    9.724606] dwc3 dwc3.3.auto: changing max_speed on rev 5533210a
> [   47.488501] udc dwc3.3.auto: registering UDC driver [g1]

reverting that commit makes dwc3 work? Then you don't have a bug on
dwc3. You have a regression caused by another commit.

Alexandre, any idea what's going on?
Comment 5 Felipe Balbi 2020-02-06 18:33:25 UTC
Created attachment 287187 [details]
signature.asc

+ Heikki, since this is, apparently, Bay Trail

Felipe Balbi <balbi@kernel.org> writes:

> Hi,
>
> bugzilla-daemon@bugzilla.kernel.org writes:
>> https://bugzilla.kernel.org/show_bug.cgi?id=206435
>>
>> --- Comment #3 from youling257@gmail.com ---
>> Revert 987351e1ea7772cf2f0795e917fb33b2e282e1c1 phy: core: Add consumer
>> device
>> link support, dwc3 work for my z3735f device.
>>
>> android_x86:/ $ su
>> android_x86:/ # dmesg | grep dwc
>> [    9.724606] dwc3 dwc3.3.auto: changing max_speed on rev 5533210a
>> [   47.488501] udc dwc3.3.auto: registering UDC driver [g1]
>
> reverting that commit makes dwc3 work? Then you don't have a bug on
> dwc3. You have a regression caused by another commit.
>
> Alexandre, any idea what's going on?

Heikki, any ideas?
Comment 6 youling257 2020-02-06 19:25:12 UTC
/sys/module/dwc3/drivers/platform:dwc3/dwc3.3.auto/dwc3.3.auto.ulpi/driver
Symbolic link /sys/module/bus/ulpi/drivers/tusb1210

“phy: core: Add consumer device link support” cause failed to create link.
Comment 7 alexandre.torgue 2020-02-07 08:52:25 UTC
Hi Felipe,

On 2/6/20 7:33 PM, Felipe Balbi wrote:
> 
> + Heikki, since this is, apparently, Bay Trail
> 
> Felipe Balbi <balbi@kernel.org> writes:
> 
>> Hi,
>>
>> bugzilla-daemon@bugzilla.kernel.org writes:
>>> https://bugzilla.kernel.org/show_bug.cgi?id=206435
>>>
>>> --- Comment #3 from youling257@gmail.com ---
>>> Revert 987351e1ea7772cf2f0795e917fb33b2e282e1c1 phy: core: Add consumer
>>> device
>>> link support, dwc3 work for my z3735f device.
>>>
>>> android_x86:/ $ su
>>> android_x86:/ # dmesg | grep dwc
>>> [    9.724606] dwc3 dwc3.3.auto: changing max_speed on rev 5533210a
>>> [   47.488501] udc dwc3.3.auto: registering UDC driver [g1]
>>
>> reverting that commit makes dwc3 work? Then you don't have a bug on
>> dwc3. You have a regression caused by another commit.
>>
>> Alexandre, any idea what's going on?
> 

It's probably due to error returned by "device_link-add" function called 
in phy-get (phy-core.c). Maybe because phy dev is not present. I wonder 
if we should update device_link_add error management in phy-get (if link 
add fails it's maybe not a reason to make the consumer probe fail)

regards
Alex

> Heikki, any ideas?
>
Comment 9 Luca Weiss 2020-02-13 22:15:34 UTC
Also happening on msm8974, see e.g. https://storage.kernelci.org/next/master/next-20200213/arm/qcom_defconfig/gcc-8/lab-bjorn/boot-qcom-msm8974-sony-xperia-castor.html (msm_hsusb f9a55000.usb: failed to create device link to ci_hdrc.0.ulpi)
Comment 10 Andy Shevchenko 2020-02-24 08:30:53 UTC
Any news? We have v5.6-rc3 out and seems no fix is there. What's going on?
Comment 11 youling257 2020-02-24 11:37:50 UTC
(In reply to Andy Shevchenko from comment #10)
> Any news? We have v5.6-rc3 out and seems no fix is there. What's going on?

https://lore.kernel.org/patchwork/patch/1195894/
this patch fixed.
Comment 12 Andy Shevchenko 2020-03-04 16:14:35 UTC
Kishon, I don't see in Linus tree the fix patch. When it will be there? We have still broken v5.6 release!
Comment 13 kishon 2020-03-05 11:58:52 UTC
Greg has merged the pull request. It should show up in -rc5 or -rc6.
Comment 14 Andy Shevchenko 2020-03-05 13:14:35 UTC
For the reference:
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git/commit/?h=usb-linus&id=19f3c1e98bd1704fe22e5f8105c0677a1332cdef

Thank you everybody!

(Closed as patch available and on its way to Linus' tree)