linux-stable/drivers/usb/mtu3
Chunfeng Yun d98a30ccdc usb: mtu3: fix random remote wakeup
Some platforms, e.g. 8183/8192, use low level latch way to keep
wakeup signal, it may latch a wrong signal if debounce more time,
and enable wakeup earlier.
                   ____________________
ip_sleep      ____/                    \__________
                           ___________________
wakeup_signal ____________/                   \______
                      _______________________________
wakeup_en     _______/
                      ^     ^
                      |(1)  |(2)
latch wakeup_signal mistakenly at (1), should latch it at (2);

Workaround: delay about 100us to enable wakeup, meanwhile decrease
debounce time.

Fixes: b1a344589e ("usb: mtu3: support ip-sleep wakeup for MT8183")
Cc: stable@vger.kernel.org
Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com>
Link: https://lore.kernel.org/r/20210826083637.33237-2-chunfeng.yun@mediatek.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-08-26 13:41:52 +02:00
..
Kconfig usb: mtu3: register a USB Role Switch for dual role mode 2019-09-03 20:02:15 +02:00
Makefile usb: mtu3: add tracepoints to help debug 2019-03-26 16:40:14 +09:00
mtu3.h usb: mtu3: support suspend/resume for device mode 2021-07-27 15:58:37 +02:00
mtu3_core.c usb: mtu3: restore HS function when set SS/SSP 2021-08-13 13:05:50 +02:00
mtu3_debug.h usb: mtu3: mtu3_debug: remove an unused struct member 2020-12-04 16:49:06 +01:00
mtu3_debugfs.c usb: mtu3: dump a status register of IPPC 2021-06-03 13:53:04 +02:00
mtu3_dr.c usb: mtu3: support suspend/resume for dual-role mode 2021-07-27 15:58:37 +02:00
mtu3_dr.h usb: mtu3: support suspend/resume for dual-role mode 2021-07-27 15:58:37 +02:00
mtu3_gadget.c usb: mtu3: fix the wrong HS mult value 2021-08-13 13:05:50 +02:00
mtu3_gadget_ep0.c usb: mtu3: use MTU3_EP_WEDGE flag 2020-07-29 16:53:58 +02:00
mtu3_host.c usb: mtu3: fix random remote wakeup 2021-08-26 13:41:52 +02:00
mtu3_hw_regs.h usb: mtu3: fix macro for maximum number of packets 2020-07-29 16:53:57 +02:00
mtu3_plat.c usb: mtu3: fix random remote wakeup 2021-08-26 13:41:52 +02:00
mtu3_qmu.c usb: mtu3: add tracepoints to help debug 2019-03-26 16:40:14 +09:00
mtu3_qmu.h USB: mtu3: Use the correct style for SPDX License Identifier 2020-04-16 14:32:48 +02:00
mtu3_trace.c usb: mtu3: mtu3_trace: Supply missing mtu3_debug.h include file 2020-07-15 17:25:57 +02:00
mtu3_trace.h USB: mtu3: Use the correct style for SPDX License Identifier 2020-04-16 14:32:48 +02:00