提交 1b7c4725 编写于 作者: P Peter Ujfalusi

MFD: twl6040: Remove wrapper for threaded irq request

Remove the twl6040_request_irq/free_irq inline functions,
and use direct calls instead in the core driver to
register the threaded irq.
Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
Reviewed-by: NFelipe Balbi <balbi@ti.com>
Acked-by: NSamuel Ortiz <sameo@linux.intel.com>
上级 d20e1d21
...@@ -502,9 +502,9 @@ static int __devinit twl6040_probe(struct platform_device *pdev) ...@@ -502,9 +502,9 @@ static int __devinit twl6040_probe(struct platform_device *pdev)
if (ret) if (ret)
goto gpio2_err; goto gpio2_err;
ret = twl6040_request_irq(twl6040, TWL6040_IRQ_READY, ret = request_threaded_irq(twl6040->irq_base + TWL6040_IRQ_READY,
twl6040_naudint_handler, 0, NULL, twl6040_naudint_handler, 0,
"twl6040_irq_ready", twl6040); "twl6040_irq_ready", twl6040);
if (ret) { if (ret) {
dev_err(twl6040->dev, "READY IRQ request failed: %d\n", dev_err(twl6040->dev, "READY IRQ request failed: %d\n",
ret); ret);
...@@ -557,7 +557,7 @@ static int __devinit twl6040_probe(struct platform_device *pdev) ...@@ -557,7 +557,7 @@ static int __devinit twl6040_probe(struct platform_device *pdev)
return 0; return 0;
mfd_err: mfd_err:
twl6040_free_irq(twl6040, TWL6040_IRQ_READY, twl6040); free_irq(twl6040->irq_base + TWL6040_IRQ_READY, twl6040);
irq_err: irq_err:
twl6040_irq_exit(twl6040); twl6040_irq_exit(twl6040);
gpio2_err: gpio2_err:
...@@ -580,7 +580,7 @@ static int __devexit twl6040_remove(struct platform_device *pdev) ...@@ -580,7 +580,7 @@ static int __devexit twl6040_remove(struct platform_device *pdev)
if (gpio_is_valid(twl6040->audpwron)) if (gpio_is_valid(twl6040->audpwron))
gpio_free(twl6040->audpwron); gpio_free(twl6040->audpwron);
twl6040_free_irq(twl6040, TWL6040_IRQ_READY, twl6040); free_irq(twl6040->irq_base + TWL6040_IRQ_READY, twl6040);
twl6040_irq_exit(twl6040); twl6040_irq_exit(twl6040);
mfd_remove_devices(&pdev->dev); mfd_remove_devices(&pdev->dev);
......
...@@ -215,28 +215,6 @@ struct twl6040 { ...@@ -215,28 +215,6 @@ struct twl6040 {
u8 irq_masks_cache; u8 irq_masks_cache;
}; };
static inline int twl6040_request_irq(struct twl6040 *twl6040, int irq,
irq_handler_t handler,
unsigned long irqflags,
const char *name,
void *data)
{
if (!twl6040->irq_base)
return -EINVAL;
return request_threaded_irq(twl6040->irq_base + irq, NULL, handler,
irqflags, name, data);
}
static inline void twl6040_free_irq(struct twl6040 *twl6040, int irq,
void *data)
{
if (!twl6040->irq_base)
return;
free_irq(twl6040->irq_base + irq, data);
}
int twl6040_reg_read(struct twl6040 *twl6040, unsigned int reg); int twl6040_reg_read(struct twl6040 *twl6040, unsigned int reg);
int twl6040_reg_write(struct twl6040 *twl6040, unsigned int reg, int twl6040_reg_write(struct twl6040 *twl6040, unsigned int reg,
u8 val); u8 val);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册