On 6/7/23 08:10, Oliver Neukum wrote:
* udev rule: ATTRS{idProduct}=="55d4", ATTRS{idVendor}=="1a86",
SUBSYSTEM=="usb", TEST=="power/control" ATTR{power/control}="on"
* usbcore.quirks=1a86:55d4:b
[..]
During the pandemic supply chain constraints led to some switching to
the CH9102F which is described here as *almost* a drop-in
replacement. Unfortunately the pinout differences might have
mattered. I am uncertain if the board design could have been better
but that is now in the past. Too many were mass produced so I am
hoping for a USB quirk to stabilize this going forward.
I have confirmed USB_QUIRK_RESET_RESUME allows this device to
function for the same reason it works for the Cypress. I am uncertain
if a narrower new quirk "ignore the remote wakeup bit" would work
here. How can I test that?
Please test the attached patch by giving the new 'p' quirk
as usbcore.quirks
Regards
Oliver
Thanks! Tested your patch against 6.4.0-rc5. Both
usbcore.quirks=1a86:55d4:b and usbcore.quirks=1a86:55d4:p allow the
device to be fully functional. It even works through suspend+resume of
the host. Without the quirk the only other way for this device to
function at all is to turn off autosuspend.
How should we proceed? "p" would be the narrower quirk. Would this be
appropriate for drivers/usb/core/quirks.c?
Warren Togami