]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
mfd: Fix building without CONFIG_OF
authorArnd Bergmann <arnd@arndb.de>
Tue, 20 May 2025 15:40:43 +0000 (17:40 +0200)
committerLee Jones <lee@kernel.org>
Thu, 19 Jun 2025 10:05:30 +0000 (11:05 +0100)
Using the of_fwnode_handle() means that local 'node' variables are unused
whenever CONFIG_OF is disabled for compile testing:

drivers/mfd/88pm860x-core.c: In function 'device_irq_init':
drivers/mfd/88pm860x-core.c:576:29: error: unused variable 'node' [-Werror=unused-variable]
  576 |         struct device_node *node = i2c->dev.of_node;
      |                             ^~~~
drivers/mfd/max8925-core.c: In function 'max8925_irq_init':
drivers/mfd/max8925-core.c:659:29: error: unused variable 'node' [-Werror=unused-variable]
  659 |         struct device_node *node = chip->dev->of_node;
      |                             ^~~~
drivers/mfd/twl4030-irq.c: In function 'twl4030_init_irq':
drivers/mfd/twl4030-irq.c:679:46: error: unused variable 'node' [-Werror=unused-variable]
  679 |         struct                  device_node *node = dev->of_node;
      |                                              ^~~~

Replace these with the corresponding dev_fwnode() lookups that
keep the code simpler in addition to avoiding the warnings.

Fixes: e3d44f11da04 ("mfd: Switch to irq_domain_create_*()")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Jiri Slaby <jirislaby@kernel.org>
Link: https://lore.kernel.org/r/20250520154106.2019525-1-arnd@kernel.org
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/mfd/88pm860x-core.c
drivers/mfd/max8925-core.c
drivers/mfd/twl4030-irq.c

index 488e346047c1202d00a1059bd4317e7986933b29..77230fbe07be2bd6728140edd63c38b820462427 100644 (file)
@@ -573,7 +573,6 @@ static int device_irq_init(struct pm860x_chip *chip,
        unsigned long flags = IRQF_TRIGGER_FALLING | IRQF_ONESHOT;
        int data, mask, ret = -EINVAL;
        int nr_irqs, irq_base = -1;
-       struct device_node *node = i2c->dev.of_node;
 
        mask = PM8607_B0_MISC1_INV_INT | PM8607_B0_MISC1_INT_CLEAR
                | PM8607_B0_MISC1_INT_MASK;
@@ -624,7 +623,7 @@ static int device_irq_init(struct pm860x_chip *chip,
                ret = -EBUSY;
                goto out;
        }
-       irq_domain_create_legacy(of_fwnode_handle(node), nr_irqs, chip->irq_base, 0,
+       irq_domain_create_legacy(dev_fwnode(&i2c->dev), nr_irqs, chip->irq_base, 0,
                                 &pm860x_irq_domain_ops, chip);
        chip->core_irq = i2c->irq;
        if (!chip->core_irq)
index 78b16c67a5fc6ef2298c722d98b3647e3f43765d..25377dcce60e866f08203b03f3c333dabd1e1917 100644 (file)
@@ -656,7 +656,6 @@ static int max8925_irq_init(struct max8925_chip *chip, int irq,
 {
        unsigned long flags = IRQF_TRIGGER_FALLING | IRQF_ONESHOT;
        int ret;
-       struct device_node *node = chip->dev->of_node;
 
        /* clear all interrupts */
        max8925_reg_read(chip->i2c, MAX8925_CHG_IRQ1);
@@ -682,8 +681,9 @@ static int max8925_irq_init(struct max8925_chip *chip, int irq,
                return -EBUSY;
        }
 
-       irq_domain_create_legacy(of_fwnode_handle(node), MAX8925_NR_IRQS, chip->irq_base, 0,
-                                &max8925_irq_domain_ops, chip);
+       irq_domain_create_legacy(dev_fwnode(chip->dev), MAX8925_NR_IRQS,
+                                chip->irq_base, 0, &max8925_irq_domain_ops,
+                                chip);
 
        /* request irq handler for pmic main irq*/
        chip->core_irq = irq;
index 232c2bfe8c1801c8cf22208fcc25deb88e556c47..d3ab406513077f3b616037e7ba24a9ad7a00f534 100644 (file)
@@ -676,7 +676,6 @@ int twl4030_init_irq(struct device *dev, int irq_num)
        static struct irq_chip  twl4030_irq_chip;
        int                     status, i;
        int                     irq_base, irq_end, nr_irqs;
-       struct                  device_node *node = dev->of_node;
 
        /*
         * TWL core and pwr interrupts must be contiguous because
@@ -691,7 +690,7 @@ int twl4030_init_irq(struct device *dev, int irq_num)
                return irq_base;
        }
 
-       irq_domain_create_legacy(of_fwnode_handle(node), nr_irqs, irq_base, 0,
+       irq_domain_create_legacy(dev_fwnode(dev), nr_irqs, irq_base, 0,
                                 &irq_domain_simple_ops, NULL);
 
        irq_end = irq_base + TWL4030_CORE_NR_IRQS;