Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drivers/rtc/rtc-da9055.c: remove use of regmap_irq_get_virq()

Using platform_get_irq_byname() to retrieve the IRQ number returns the
VIRQ number rather than the local IRQ number for the device. Passing that
value then into regmap_irq_get_virq() causes a failure because the
function is expecting the local IRQ number (e.g. 0, 1, 2, 3, etc).

This patch removes use of regmap_irq_get_virq() to prevent this failure
from happening

Signed-off-by: Adam Thomson <Adam.Thomson.Opensource@diasemi.com>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Adam Thomson and committed by
Linus Torvalds
dc9d8887 67ab2440

+3 -1
+3 -1
drivers/rtc/rtc-da9055.c
··· 302 302 } 303 303 304 304 alm_irq = platform_get_irq_byname(pdev, "ALM"); 305 - alm_irq = regmap_irq_get_virq(rtc->da9055->irq_data, alm_irq); 305 + if (alm_irq < 0) 306 + return alm_irq; 307 + 306 308 ret = devm_request_threaded_irq(&pdev->dev, alm_irq, NULL, 307 309 da9055_rtc_alm_irq, 308 310 IRQF_TRIGGER_HIGH | IRQF_ONESHOT,