| From a17b9841152e7f4621619902b347e2cc39c32996 Mon Sep 17 00:00:00 2001 |
| From: Cameron Gutman <aicommander@gmail.com> |
| Date: Thu, 18 Aug 2022 17:44:09 +0200 |
| Subject: Input: xpad - fix wireless 360 controller breaking after suspend |
| |
| From: Cameron Gutman <aicommander@gmail.com> |
| |
| commit a17b9841152e7f4621619902b347e2cc39c32996 upstream. |
| |
| Suspending and resuming the system can sometimes cause the out |
| URB to get hung after a reset_resume. This causes LED setting |
| and force feedback to break on resume. To avoid this, just drop |
| the reset_resume callback so the USB core rebinds xpad to the |
| wireless pads on resume if a reset happened. |
| |
| A nice side effect of this change is the LED ring on wireless |
| controllers is now set correctly on system resume. |
| |
| Cc: stable@vger.kernel.org |
| Fixes: 4220f7db1e42 ("Input: xpad - workaround dead irq_out after suspend/ resume") |
| Signed-off-by: Cameron Gutman <aicommander@gmail.com> |
| Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com> |
| Link: https://lore.kernel.org/r/20220818154411.510308-3-rojtberg@gmail.com |
| Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/input/joystick/xpad.c | 1 - |
| 1 file changed, 1 deletion(-) |
| |
| --- a/drivers/input/joystick/xpad.c |
| +++ b/drivers/input/joystick/xpad.c |
| @@ -1991,7 +1991,6 @@ static struct usb_driver xpad_driver = { |
| .disconnect = xpad_disconnect, |
| .suspend = xpad_suspend, |
| .resume = xpad_resume, |
| - .reset_resume = xpad_resume, |
| .id_table = xpad_table, |
| }; |
| |