1
0
Fork 0
alistair23-linux/include/linux/usb
Yoshihiro Shimoda 21a45a1427 usb: host: ehci-platform: add a quirk to avoid stuck
[ Upstream commit cc7eac1e4a ]

Since EHCI/OHCI controllers on R-Car Gen3 SoCs are possible to
be getting stuck very rarely after a full/low usb device was
disconnected. To detect/recover from such a situation, the controllers
require a special way which poll the EHCI PORTSC register and changes
the OHCI functional state.

So, this patch adds a polling timer into the ehci-platform driver,
and if the ehci driver detects the issue by the EHCI PORTSC register,
the ehci driver removes a companion device (= the OHCI controller)
to change the OHCI functional state to USB Reset once. And then,
the ehci driver adds the companion device again.

Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Link: https://lore.kernel.org/r/1580114262-25029-1-git-send-email-yoshihiro.shimoda.uh@renesas.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-06-24 17:50:44 +02:00
..
audio-v2.h
audio-v3.h
audio.h
c67x00.h
ccid.h
cdc-wdm.h
cdc.h
cdc_ncm.h
ch9.h
chipidea.h
composite.h usb: gadget: Fix issue with config_ep_by_speed function 2020-06-24 17:50:32 +02:00
ehci-dbgp.h
ehci_def.h usb: host: ehci-platform: add a quirk to avoid stuck 2020-06-24 17:50:44 +02:00
ehci_pdriver.h
ezusb.h
functionfs.h
g_hid.h
gadget.h usb: gadget: core: sync interrupt before unbind the udc 2020-06-24 17:50:16 +02:00
gadget_configfs.h
gpio_vbus.h
hcd.h
input.h
iowarrior.h
irda.h USB: serial: ir-usb: fix link-speed handling 2020-02-01 09:34:32 +00:00
isp116x.h
isp1301.h
isp1362.h
isp1760.h
m66592.h
musb-ux500.h
musb.h
net2280.h
of.h
ohci_pdriver.h
otg-fsm.h
otg.h
pd.h
pd_ado.h
pd_bdo.h
pd_ext_sdb.h
pd_vdo.h
phy.h
phy_companion.h
quirks.h USB: core: add endpoint-blacklist quirk 2020-02-28 17:22:16 +01:00
r8a66597.h
renesas_usbhs.h
rndis_host.h
role.h
serial.h
sl811.h
storage.h
tcpm.h
tegra_usb_phy.h
typec.h
typec_altmode.h
typec_dp.h
typec_mux.h
uas.h
ulpi.h
usb338x.h
usb_phy_generic.h
usbnet.h
xhci-dbgp.h