]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
usb: dwc3: pci: Runtime resume child device from wq
authorManu Gautam <mgautam@codeaurora.org>
Wed, 27 Sep 2017 11:19:21 +0000 (16:49 +0530)
committerFelipe Balbi <felipe.balbi@linux.intel.com>
Tue, 24 Oct 2017 09:51:19 +0000 (12:51 +0300)
commit8eed00b237a2844dbe6bc2bac5c0b2657f9f194b
treeb3eb2e1ecafbb41f6aa7074b0c548a6642824722
parent689bf72c6e0dc97493ba14d82f6762456f8f244a
usb: dwc3: pci: Runtime resume child device from wq

Driver currently resumes and increments pm usage_count
of its child device (dwc3 main) from its runtime_resume
handler. This requires dwc3 runtime_resume to perform
pm_runtime_put to decrement the pm usage_count. However
runtime_put from dwc3 happens for non pci drivers
(e.g. dwc3-if-simple.c) as well which results in dwc3
pm usage_count becoming negative after couple of
runtime suspend resume iterations. Fix this by
performing runtime_get/put from dwc3-pci driver only
using workqueue.

Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
drivers/usb/dwc3/core.c
drivers/usb/dwc3/dwc3-pci.c