提交 b5874f33 编写于 作者: M Mark Brown 提交者: Anton Vorontsov

wm831x_power: Use genirq

Since the WM831x core has been converted to use genirq for the
interrupt controller there is no longer any need for chip specific
wrappers for IRQ operations. Convert to use genirq directly.
Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: NAnton Vorontsov <cbouatmailru@gmail.com>
上级 e3e8d1c9
...@@ -536,9 +536,9 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev) ...@@ -536,9 +536,9 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev)
goto err_battery; goto err_battery;
irq = platform_get_irq_byname(pdev, "SYSLO"); irq = platform_get_irq_byname(pdev, "SYSLO");
ret = wm831x_request_irq(wm831x, irq, wm831x_syslo_irq, ret = request_threaded_irq(irq, NULL, wm831x_syslo_irq,
IRQF_TRIGGER_RISING, "SYSLO", IRQF_TRIGGER_RISING, "System power low",
power); power);
if (ret != 0) { if (ret != 0) {
dev_err(&pdev->dev, "Failed to request SYSLO IRQ %d: %d\n", dev_err(&pdev->dev, "Failed to request SYSLO IRQ %d: %d\n",
irq, ret); irq, ret);
...@@ -546,9 +546,9 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev) ...@@ -546,9 +546,9 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev)
} }
irq = platform_get_irq_byname(pdev, "PWR SRC"); irq = platform_get_irq_byname(pdev, "PWR SRC");
ret = wm831x_request_irq(wm831x, irq, wm831x_pwr_src_irq, ret = request_threaded_irq(irq, NULL, wm831x_pwr_src_irq,
IRQF_TRIGGER_RISING, "Power source", IRQF_TRIGGER_RISING, "Power source",
power); power);
if (ret != 0) { if (ret != 0) {
dev_err(&pdev->dev, "Failed to request PWR SRC IRQ %d: %d\n", dev_err(&pdev->dev, "Failed to request PWR SRC IRQ %d: %d\n",
irq, ret); irq, ret);
...@@ -557,10 +557,10 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev) ...@@ -557,10 +557,10 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev)
for (i = 0; i < ARRAY_SIZE(wm831x_bat_irqs); i++) { for (i = 0; i < ARRAY_SIZE(wm831x_bat_irqs); i++) {
irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]); irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]);
ret = wm831x_request_irq(wm831x, irq, wm831x_bat_irq, ret = request_threaded_irq(irq, NULL, wm831x_bat_irq,
IRQF_TRIGGER_RISING, IRQF_TRIGGER_RISING,
wm831x_bat_irqs[i], wm831x_bat_irqs[i],
power); power);
if (ret != 0) { if (ret != 0) {
dev_err(&pdev->dev, dev_err(&pdev->dev,
"Failed to request %s IRQ %d: %d\n", "Failed to request %s IRQ %d: %d\n",
...@@ -574,13 +574,13 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev) ...@@ -574,13 +574,13 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev)
err_bat_irq: err_bat_irq:
for (; i >= 0; i--) { for (; i >= 0; i--) {
irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]); irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]);
wm831x_free_irq(wm831x, irq, power); free_irq(irq, power);
} }
irq = platform_get_irq_byname(pdev, "PWR SRC"); irq = platform_get_irq_byname(pdev, "PWR SRC");
wm831x_free_irq(wm831x, irq, power); free_irq(irq, power);
err_syslo: err_syslo:
irq = platform_get_irq_byname(pdev, "SYSLO"); irq = platform_get_irq_byname(pdev, "SYSLO");
wm831x_free_irq(wm831x, irq, power); free_irq(irq, power);
err_usb: err_usb:
power_supply_unregister(usb); power_supply_unregister(usb);
err_battery: err_battery:
...@@ -595,19 +595,18 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev) ...@@ -595,19 +595,18 @@ static __devinit int wm831x_power_probe(struct platform_device *pdev)
static __devexit int wm831x_power_remove(struct platform_device *pdev) static __devexit int wm831x_power_remove(struct platform_device *pdev)
{ {
struct wm831x_power *wm831x_power = platform_get_drvdata(pdev); struct wm831x_power *wm831x_power = platform_get_drvdata(pdev);
struct wm831x *wm831x = wm831x_power->wm831x;
int irq, i; int irq, i;
for (i = 0; i < ARRAY_SIZE(wm831x_bat_irqs); i++) { for (i = 0; i < ARRAY_SIZE(wm831x_bat_irqs); i++) {
irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]); irq = platform_get_irq_byname(pdev, wm831x_bat_irqs[i]);
wm831x_free_irq(wm831x, irq, wm831x_power); free_irq(irq, wm831x_power);
} }
irq = platform_get_irq_byname(pdev, "PWR SRC"); irq = platform_get_irq_byname(pdev, "PWR SRC");
wm831x_free_irq(wm831x, irq, wm831x_power); free_irq(irq, wm831x_power);
irq = platform_get_irq_byname(pdev, "SYSLO"); irq = platform_get_irq_byname(pdev, "SYSLO");
wm831x_free_irq(wm831x, irq, wm831x_power); free_irq(irq, wm831x_power);
power_supply_unregister(&wm831x_power->battery); power_supply_unregister(&wm831x_power->battery);
power_supply_unregister(&wm831x_power->wall); power_supply_unregister(&wm831x_power->wall);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册