linux/drivers/usb/chipidea
Loic Poulain 3a05444ead usb: chipidea: Prevent unbalanced IRQ disable
commit 8b97d73c4d upstream.

The ChipIdea IRQ is disabled before scheduling the otg work and
re-enabled on otg work completion. However if the job is already
scheduled we have to undo the effect of disable_irq int order to
balance the IRQ disable-depth value.

Fixes: be6b0c1bd0 ("usb: chipidea: using one inline function to cover queue work operations")
Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
Signed-off-by: Peter Chen <peter.chen@nxp.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
History 2019-02-11 17:53:22 +00:00
..
bits.h usb: chipidea: OTG fsm timers initialization 2014-04-24 12:56:35 -07:00
ci.h usb: chipidea: add OTG fsm operation functions implementation 2014-04-24 12:56:35 -07:00
ci_hdrc_imx.c usb: chipidea: imx: Use dev_name() for ci_hdrc name to distinguish USBs 2014-03-12 12:32:21 -07:00
ci_hdrc_imx.h USB: chipidea: add guard macro to ci_hdrc_imx.h 2014-01-03 12:37:57 -08:00
ci_hdrc_msm.c usb: chipidea: msm: Initialize PHY on reset event 2014-10-05 13:40:58 -07:00
ci_hdrc_pci.c usb: chipidea: remove DEFINE_PCI_DEVICE_TABLE macro 2013-12-03 10:22:52 -08:00
ci_hdrc_zevio.c usb: chipidea: add support for USB OTG controller on LSI Zevio SoCs 2014-03-12 12:32:21 -07:00
core.c usb: chipidea: move the lock initialization to core file 2017-02-23 03:54:34 +00:00
debug.c usb: chipidea: debug: check before accessing ci_role 2017-09-15 18:29:48 +01:00
debug.h usb: chipidea: drop "13xxx" infix 2013-06-24 16:16:55 -07:00
host.c usb: chipidea: host: init otg port number 2014-04-24 12:56:35 -07:00
host.h usb: chipidea: add role init and destroy APIs 2013-08-14 12:37:19 -07:00
Kconfig usb: chipidea: USB_CHIPIDEA should depend on HAS_DMA 2013-09-25 17:30:39 -07:00
Makefile usb: chipidea: usb OTG fsm initialization. 2014-04-24 12:56:34 -07:00
otg.c usb: chipidea: otg: change workqueue ci_otg as freezable 2016-03-24 10:00:51 +00:00
otg.h usb: chipidea: Prevent unbalanced IRQ disable 2019-02-11 17:53:22 +00:00
otg_fsm.c usb: chipidea: otg: remove mutex unlock and lock while stop and start role 2015-05-12 09:36:38 +01:00
otg_fsm.h usb: chipidea: add sys inputs for OTG fsm input 2014-04-24 12:56:35 -07:00
udc.c usb: chipidea: udc: fix NULL pointer dereference if udc_start failed 2017-09-15 18:29:43 +01:00
udc.h usb: chipidea: add role init and destroy APIs 2013-08-14 12:37:19 -07:00
usbmisc_imx.c chipidea: usbmisc_imx: Allow USB OTG to work on mx51 2014-05-23 11:36:43 +09:00