Re: [PATCH v4] usb: dwc3: Don't switch OTG -> peripheral if extcon is present
From: Ferry Toth
Date: Thu Sep 22 2022 - 10:30:22 EST
Hi,
Resending this due to html reject, sorry.
On 22-09-2022 12:08, Andy Shevchenko wrote:
On Sun, Apr 03, 2022 at 09:49:07AM -0700, Andrey Smirnov wrote:
If the extcon device exists, get the mode from the extcon device. If
the controller is DRD and the driver is unable to determine the mode,
only then default the dr_mode to USB_DR_MODE_PERIPHERAL.
According to Ferry (Cc'ed) this broke Intel Merrifield platform. Ferry, can you
share bisect log?
I can but not right now. But what I did was bisect between 5.18.0 (good)
and 5.19.0 (bad) then when I got near the culprit (~20 remaining) based
on the commit message I tried 0f01017191384e3962fa31520a9fd9846c3d352f
"usb: dwc3: Don't switch OTG -> peripheral if extcon is present" (bad)
and commit before that (good).
The effect of the patch is that on Merrifield (I tested with Intel
Edison Arduino board which has a HW switch to select between host and
device mode) device mode works but in host mode USB is completely not
working.
Currently on host mode - when working - superfluous error messages from
tusb1210 appear. When host mode is not working there are no tusb1210
messages in the logs / on the console at all. Seemingly tusb1210 is not
probed, which points in the direction of a relation to extcon.
Taking into account the late cycle, I would like to revert the change. And
Ferry and I would help to test any other (non-regressive) approach).
I have not yet tested if a simple revert fixes the problem but will tonight.
I would be happy to test other approaches too.