summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>2023-07-03 21:52:15 +0300
committerBenjamin Tissoires <bentiss@kernel.org>2023-07-28 18:05:48 +0300
commitb5ac00880a57273ed4d8ba6d37c91c1fd261b191 (patch)
tree1dae0df351f5309fe1cc4a9961cbf51de731f6b6
parentecb42bb8035c9901684c40c87cf1ea23f62e055d (diff)
downloadlinux-b5ac00880a57273ed4d8ba6d37c91c1fd261b191.tar.xz
HID: cp2112: Don't call ->to_irq() explicitly
GPIO library guarantees that ->to_irq() is always exists. Moreover, it tending to become a nische thingy and has to not be used in ordinary drivers. Hence, replace that by irq_find_mapping(). Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20230703185222.50554-6-andriy.shevchenko@linux.intel.com Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
-rw-r--r--drivers/hid/hid-cp2112.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/hid/hid-cp2112.c b/drivers/hid/hid-cp2112.c
index fb4548feb0c8..15b626359281 100644
--- a/drivers/hid/hid-cp2112.c
+++ b/drivers/hid/hid-cp2112.c
@@ -1112,10 +1112,9 @@ static void cp2112_gpio_poll_callback(struct work_struct *work)
gpio_mask = ret;
for_each_set_bit(virq, &dev->irq_mask, 8) {
- if (!dev->gc.to_irq)
- break;
-
- irq = dev->gc.to_irq(&dev->gc, virq);
+ irq = irq_find_mapping(dev->gc.irq.domain, virq);
+ if (!irq)
+ continue;
d = irq_get_irq_data(irq);
if (!d)