diff options
author | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-09-08 10:20:57 +0300 |
---|---|---|
committer | Felipe Balbi <balbi@kernel.org> | 2020-10-02 09:57:45 +0300 |
commit | 31b5de5f3799a6d1656c0ed3f9ec2c8432eeaeac (patch) | |
tree | 65041832624756a2c194fabbe4a1ccd514d73581 /Documentation/devicetree/bindings/usb | |
parent | f580170f135af14e287560d94045624d4242d712 (diff) | |
download | linux-31b5de5f3799a6d1656c0ed3f9ec2c8432eeaeac.tar.xz |
dt-bindings: document a new quirk for dwc3
At Hikey 970, setting the SPLIT disable at the General
User Register 3 is required.
Without that, the URBs generated by the usbhid driver
return -EPROTO errors. That causes the code at
hid-core.c to call hid_io_error(), which schedules
a reset_work, causing a call to hid_reset().
In turn, the code there will call:
usb_queue_reset_device(usbhid->intf);
The net result is that the input devices won't work, and
will be reset on every 0.5 seconds:
[ 33.122384] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0002
[ 33.378220] usb 1-1.1: reset low-speed USB device number 3 using xhci-hcd
[ 33.698394] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[ 34.882365] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0002
[ 35.138217] usb 1-1.1: reset low-speed USB device number 3 using xhci-hcd
[ 35.458617] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[ 36.642392] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0002
[ 36.898207] usb 1-1.1: reset low-speed USB device number 3 using xhci-hcd
[ 37.218598] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[ 38.402368] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0002
[ 38.658174] usb 1-1.1: reset low-speed USB device number 3 using xhci-hcd
[ 38.978594] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0000
[ 40.162361] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0002
[ 40.418148] usb 1-1.1: reset low-speed USB device number 3 using xhci-hcd
...
[ 397.698132] usb 1-1.1: reset low-speed USB device number 3 using xhci-hcd
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: Felipe Balbi <balbi@kernel.org>
Diffstat (limited to 'Documentation/devicetree/bindings/usb')
-rw-r--r-- | Documentation/devicetree/bindings/usb/dwc3.txt | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/usb/dwc3.txt b/Documentation/devicetree/bindings/usb/dwc3.txt index d03edf9d3935..1aae2b6160c1 100644 --- a/Documentation/devicetree/bindings/usb/dwc3.txt +++ b/Documentation/devicetree/bindings/usb/dwc3.txt @@ -78,6 +78,9 @@ Optional properties: park mode are disabled. - snps,dis_metastability_quirk: when set, disable metastability workaround. CAUTION: use only if you are absolutely sure of it. + - snps,dis-split-quirk: when set, change the way URBs are handled by the + driver. Needed to avoid -EPROTO errors with usbhid + on some devices (Hikey 970). - snps,is-utmi-l1-suspend: true when DWC3 asserts output signal utmi_l1_suspend_n, false when asserts utmi_sleep_n - snps,hird-threshold: HIRD threshold |