diff options
author | Peter Chen <peter.chen@freescale.com> | 2014-05-23 08:12:49 +0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-05-23 11:35:02 +0900 |
commit | be6b0c1bd0be7a4f4d75ab40965abf1bd2d9a591 (patch) | |
tree | f93029af1564edb9276d1ccece6f4955d442d7ff /drivers/usb/chipidea/core.c | |
parent | 2dbd633f3a5ec60cec1bb33b86513d768730681b (diff) | |
download | blackbird-op-linux-be6b0c1bd0be7a4f4d75ab40965abf1bd2d9a591.tar.gz blackbird-op-linux-be6b0c1bd0be7a4f4d75ab40965abf1bd2d9a591.zip |
usb: chipidea: using one inline function to cover queue work operations
The otg queue work include operations: one is disable interrupt,
another one is call kernel queue work API. Many codes do this
operation, using one inline function to instead of them.
Signed-off-by: Peter Chen <peter.chen@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/chipidea/core.c')
-rw-r--r-- | drivers/usb/chipidea/core.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c index 95b4dd731772..619d13e29995 100644 --- a/drivers/usb/chipidea/core.c +++ b/drivers/usb/chipidea/core.c @@ -425,8 +425,7 @@ static irqreturn_t ci_irq(int irq, void *data) ci->id_event = true; /* Clear ID change irq status */ hw_write_otgsc(ci, OTGSC_IDIS, OTGSC_IDIS); - disable_irq_nosync(ci->irq); - queue_work(ci->wq, &ci->work); + ci_otg_queue_work(ci); return IRQ_HANDLED; } @@ -438,8 +437,7 @@ static irqreturn_t ci_irq(int irq, void *data) ci->b_sess_valid_event = true; /* Clear BSV irq */ hw_write_otgsc(ci, OTGSC_BSVIS, OTGSC_BSVIS); - disable_irq_nosync(ci->irq); - queue_work(ci->wq, &ci->work); + ci_otg_queue_work(ci); return IRQ_HANDLED; } |