summaryrefslogtreecommitdiffstats
path: root/mm/zbud.c
diff options
context:
space:
mode:
authorThinh Nguyen <Thinh.Nguyen@synopsys.com>2021-04-20 04:11:12 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-04-22 09:00:29 +0200
commitc560e76319a94a3b9285bc426c609903408e4826 (patch)
tree2d5a24f0493617d39c2bd627dbbd9627e1784792 /mm/zbud.c
parentusb: gadget: Fix double free of device descriptor pointers (diff)
downloadlinux-c560e76319a94a3b9285bc426c609903408e4826.tar.xz
linux-c560e76319a94a3b9285bc426c609903408e4826.zip
usb: dwc3: gadget: Fix START_TRANSFER link state check
The START_TRANSFER command needs to be executed while in ON/U0 link state (with an exception during register initialization). Don't use dwc->link_state to check this since the driver only tracks the link state when the link state change interrupt is enabled. Check the link state from DSTS register instead. Note that often the host already brings the device out of low power before it sends/requests the next transfer. So, the user won't see any issue when the device starts transfer then. This issue is more noticeable in cases when the device delays starting transfer, which can happen during delayed control status after the host put the device in low power. Fixes: 799e9dc82968 ("usb: dwc3: gadget: conditionally disable Link State change events") Cc: <stable@vger.kernel.org> Acked-by: Felipe Balbi <balbi@kernel.org> Signed-off-by: Thinh Nguyen <Thinh.Nguyen@synopsys.com> Link: https://lore.kernel.org/r/bcefaa9ecbc3e1936858c0baa14de6612960e909.1618884221.git.Thinh.Nguyen@synopsys.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'mm/zbud.c')
0 files changed, 0 insertions, 0 deletions