summaryrefslogtreecommitdiffstats
path: root/drivers/usb/otg/twl6030-usb.c
diff options
context:
space:
mode:
authorFelipe Balbi <balbi@ti.com>2010-09-29 10:55:49 +0300
committerFelipe Balbi <balbi@ti.com>2011-02-18 14:05:54 +0200
commitcccad6d4b103e53fb3d1fc1467f654ecb572d047 (patch)
tree83403c73c85247aeffa82ceaea6d9a5ec726235d /drivers/usb/otg/twl6030-usb.c
parent002eda1348788f623dc42231dcda5f591d753124 (diff)
downloadtalos-op-linux-cccad6d4b103e53fb3d1fc1467f654ecb572d047.tar.gz
talos-op-linux-cccad6d4b103e53fb3d1fc1467f654ecb572d047.zip
usb: otg: notifier: switch to atomic notifier
most of our notifications, will be called from IRQ context, so an atomic notifier suits the job better. Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/otg/twl6030-usb.c')
-rw-r--r--drivers/usb/otg/twl6030-usb.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/usb/otg/twl6030-usb.c b/drivers/usb/otg/twl6030-usb.c
index 05f17b77d54c..8a91b4b832a1 100644
--- a/drivers/usb/otg/twl6030-usb.c
+++ b/drivers/usb/otg/twl6030-usb.c
@@ -263,13 +263,13 @@ static irqreturn_t twl6030_usb_irq(int irq, void *_twl)
twl->otg.state = OTG_STATE_B_IDLE;
twl->linkstat = status;
twl->otg.last_event = status;
- blocking_notifier_call_chain(&twl->otg.notifier,
+ atomic_notifier_call_chain(&twl->otg.notifier,
status, twl->otg.gadget);
} else {
status = USB_EVENT_NONE;
twl->linkstat = status;
twl->otg.last_event = status;
- blocking_notifier_call_chain(&twl->otg.notifier,
+ atomic_notifier_call_chain(&twl->otg.notifier,
status, twl->otg.gadget);
if (twl->asleep) {
regulator_disable(twl->usb3v3);
@@ -302,7 +302,7 @@ static irqreturn_t twl6030_usbotg_irq(int irq, void *_twl)
twl->otg.state = OTG_STATE_A_IDLE;
twl->linkstat = status;
twl->otg.last_event = status;
- blocking_notifier_call_chain(&twl->otg.notifier, status,
+ atomic_notifier_call_chain(&twl->otg.notifier, status,
twl->otg.gadget);
} else {
twl6030_writeb(twl, TWL_MODULE_USB, USB_ID_INT_EN_HI_CLR,
@@ -419,7 +419,7 @@ static int __devinit twl6030_usb_probe(struct platform_device *pdev)
if (device_create_file(&pdev->dev, &dev_attr_vbus))
dev_warn(&pdev->dev, "could not create sysfs file\n");
- BLOCKING_INIT_NOTIFIER_HEAD(&twl->otg.notifier);
+ ATOMIC_INIT_NOTIFIER_HEAD(&twl->otg.notifier);
twl->irq_enabled = true;
status = request_threaded_irq(twl->irq1, NULL, twl6030_usbotg_irq,
OpenPOWER on IntegriCloud