linux/drivers/usb
Amelie Delaunay 31e7a836e2 usb: dwc2: drd: reset current session before setting the new one
[ Upstream commit 1ad707f559 ]

If role is changed without the "none" step, A- and B- valid session could
be set at the same time. It is an issue.
This patch resets A-session if role switch sets B-session, and resets
B-session if role switch sets A-session.
Then, it is possible to change the role without the "none" step.

Fixes: 17f934024e ("usb: dwc2: override PHY input signals with usb role switch support")
Acked-by: Minas Harutyunyan <Minas.Harutyunyan@synopsys.com>
Signed-off-by: Amelie Delaunay <amelie.delaunay@foss.st.com>
Link: https://lore.kernel.org/r/20211005095305.66397-4-amelie.delaunay@foss.st.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-11-18 14:04:20 +01:00
..
atm usb: atm: don't use snprintf() for sysfs attrs 2020-08-25 19:11:18 +02:00
c67x00 Linux 5.9-rc3 2020-08-31 07:11:45 +02:00
cdns3 usb: cdns3: fix race condition before setting doorbell 2021-10-06 15:55:46 +02:00
chipidea USB: chipidea: fix interrupt deadlock 2021-11-18 14:03:52 +01:00
class USB: cdc-acm: fix break reporting 2021-10-13 10:04:23 +02:00
common Partially revert "usb: Kconfig: using select for USB_COMMON dependency" 2021-10-13 10:04:22 +02:00
core Revert "usb: core: hcd: Add support for deferring roothub registration" 2021-11-06 14:10:09 +01:00
dwc2 usb: dwc2: drd: reset current session before setting the new one 2021-11-18 14:04:20 +01:00
dwc3 usb: dwc3: core: balance phy init and exit 2021-09-30 10:11:00 +02:00
early usb: early: ehci-dbgp: convert to readl_poll_timeout_atomic() 2020-09-25 16:29:09 +02:00
gadget usb: gadget: hid: fix error code in do_config() 2021-11-18 14:04:17 +01:00
host usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform 2021-11-18 14:03:36 +01:00
image USB: microtek: use set_host_byte() 2020-09-16 12:42:10 +02:00
isp1760 usb: isp1760-hcd: convert to readl_poll_timeout_atomic() 2020-09-25 16:30:05 +02:00
misc USB: iowarrior: fix control-message timeouts 2021-11-18 14:03:51 +01:00
mon
mtu3 usb: mtu3: fix the wrong HS mult value 2021-09-12 08:58:28 +02:00
musb usb: musb: select GENERIC_PHY instead of depending on it 2021-11-18 14:04:18 +01:00
phy usb: phy: tahvo: add IRQ check 2021-09-15 09:50:40 +02:00
renesas_usbhs usb: renesas_usbhs: Fix superfluous irqs happen after usb_pkt_pop() 2021-07-28 14:35:44 +02:00
roles usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode() 2021-05-14 09:49:55 +02:00
serial USB: serial: keyspan: fix memleak on probe errors 2021-11-18 14:03:51 +01:00
storage usb-storage: Add compatibility quirk flags for iODD 2531/2541 2021-11-12 14:58:32 +01:00
typec usb: typec: STUSB160X should select REGMAP_I2C 2021-11-18 14:04:19 +01:00
usbip usbip:vhci_hcd USB port can get stuck in the disabled state 2021-09-18 13:40:33 +02:00
Kconfig
Makefile
usb-skeleton.c