diff mbox series

mfd: Fix compilation without CONFIG_OF

Message ID 20250602201008.1850418-1-superm1@kernel.org
State New
Headers show
Series mfd: Fix compilation without CONFIG_OF | expand

Commit Message

Mario Limonciello June 2, 2025, 8:09 p.m. UTC
From: Mario Limonciello <mario.limonciello@amd.com>

When compiling without CONFIG_OF but with CONFIG_WERROR enabled
several mfd drivers fail with -Werror=unused-variable.

The assignment from these variables is only used in of_fwnode_handle()
and thus they can be moved to only be used directly in the macro.

Fixes: a36aa0f7226a2 ("mfd: Switch to irq_domain_create_*()")
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
---
 drivers/mfd/88pm860x-core.c | 5 ++---
 drivers/mfd/max8925-core.c  | 5 ++---
 drivers/mfd/twl4030-irq.c   | 3 +--
 3 files changed, 5 insertions(+), 8 deletions(-)

Comments

Jiri Slaby (SUSE) June 9, 2025, 8:29 a.m. UTC | #1
On 02. 06. 25, 22:09, Mario Limonciello wrote:
> From: Mario Limonciello <mario.limonciello@amd.com>
> 
> When compiling without CONFIG_OF but with CONFIG_WERROR enabled
> several mfd drivers fail with -Werror=unused-variable.
> 
> The assignment from these variables is only used in of_fwnode_handle()
> and thus they can be moved to only be used directly in the macro.
> 
> Fixes: a36aa0f7226a2 ("mfd: Switch to irq_domain_create_*()")
> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>

Arnd sent a fix for this already:
https://lore.kernel.org/all/20250520154106.2019525-1-arnd@kernel.org/

Hopefully all the fixes can be applied now, so no more duplicated 
efforts. Sorry for the breakage.
Jiri Slaby (SUSE) June 9, 2025, 8:31 a.m. UTC | #2
On 09. 06. 25, 10:29, Jiri Slaby wrote:
> On 02. 06. 25, 22:09, Mario Limonciello wrote:
>> From: Mario Limonciello <mario.limonciello@amd.com>
>>
>> When compiling without CONFIG_OF but with CONFIG_WERROR enabled
>> several mfd drivers fail with -Werror=unused-variable.
>>
>> The assignment from these variables is only used in of_fwnode_handle()
>> and thus they can be moved to only be used directly in the macro.
>>
>> Fixes: a36aa0f7226a2 ("mfd: Switch to irq_domain_create_*()")
>> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
> 
> Arnd sent a fix for this already:
> https://lore.kernel.org/all/20250520154106.2019525-1-arnd@kernel.org/

And actually Nathan even before:
https://lore.kernel.org/all/20250508-mfd-fix-unused-node-variables-v1-1-df84d80cca55@kernel.org/

> Hopefully all the fixes can be applied now, so no more duplicated 
> efforts. Sorry for the breakage.
>
Mario Limonciello June 9, 2025, 1:09 p.m. UTC | #3
On 6/9/2025 3:31 AM, Jiri Slaby wrote:
> On 09. 06. 25, 10:29, Jiri Slaby wrote:
>> On 02. 06. 25, 22:09, Mario Limonciello wrote:
>>> From: Mario Limonciello <mario.limonciello@amd.com>
>>>
>>> When compiling without CONFIG_OF but with CONFIG_WERROR enabled
>>> several mfd drivers fail with -Werror=unused-variable.
>>>
>>> The assignment from these variables is only used in of_fwnode_handle()
>>> and thus they can be moved to only be used directly in the macro.
>>>
>>> Fixes: a36aa0f7226a2 ("mfd: Switch to irq_domain_create_*()")
>>> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
>>
>> Arnd sent a fix for this already:
>> https://lore.kernel.org/all/20250520154106.2019525-1-arnd@kernel.org/
> 
> And actually Nathan even before:
> https://lore.kernel.org/all/20250508-mfd-fix-unused-node-variables-v1-1- 
> df84d80cca55@kernel.org/

Thanks for sharing those.

> 
>> Hopefully all the fixes can be applied now, so no more duplicated 
>> efforts. Sorry for the breakage.
>>
>
Jiri Slaby (SUSE) June 11, 2025, 10:32 a.m. UTC | #4
On 09. 06. 25, 10:31, Jiri Slaby wrote:
> On 09. 06. 25, 10:29, Jiri Slaby wrote:
>> On 02. 06. 25, 22:09, Mario Limonciello wrote:
>>> From: Mario Limonciello <mario.limonciello@amd.com>
>>>
>>> When compiling without CONFIG_OF but with CONFIG_WERROR enabled
>>> several mfd drivers fail with -Werror=unused-variable.
>>>
>>> The assignment from these variables is only used in of_fwnode_handle()
>>> and thus they can be moved to only be used directly in the macro.
>>>
>>> Fixes: a36aa0f7226a2 ("mfd: Switch to irq_domain_create_*()")
>>> Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
>>
>> Arnd sent a fix for this already:
>> https://lore.kernel.org/all/20250520154106.2019525-1-arnd@kernel.org/
> 
> And actually Nathan even before:
> https://lore.kernel.org/all/20250508-mfd-fix-unused-node-variables-v1-1- 
> df84d80cca55@kernel.org/

Sorry to interrupt once again. It turns out Arnd used dev_fwnode() -- my 
intention, so I actually prefer that version.

>> Hopefully all the fixes can be applied now, so no more duplicated 
>> efforts. Sorry for the breakage.

thanks,
diff mbox series

Patch

diff --git a/drivers/mfd/88pm860x-core.c b/drivers/mfd/88pm860x-core.c
index 488e346047c12..25300b53a8eff 100644
--- a/drivers/mfd/88pm860x-core.c
+++ b/drivers/mfd/88pm860x-core.c
@@ -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,8 +623,8 @@  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,
-				 &pm860x_irq_domain_ops, chip);
+	irq_domain_create_legacy(of_fwnode_handle(i2c->dev.of_node), nr_irqs,
+				 chip->irq_base, 0, &pm860x_irq_domain_ops, chip);
 	chip->core_irq = i2c->irq;
 	if (!chip->core_irq)
 		goto out;
diff --git a/drivers/mfd/max8925-core.c b/drivers/mfd/max8925-core.c
index 78b16c67a5fc6..91388477ad2b7 100644
--- a/drivers/mfd/max8925-core.c
+++ b/drivers/mfd/max8925-core.c
@@ -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,8 @@  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(of_fwnode_handle(chip->dev->of_node), MAX8925_NR_IRQS,
+				 chip->irq_base, 0, &max8925_irq_domain_ops, chip);
 
 	/* request irq handler for pmic main irq*/
 	chip->core_irq = irq;
diff --git a/drivers/mfd/twl4030-irq.c b/drivers/mfd/twl4030-irq.c
index 232c2bfe8c180..a2ab5deef9e21 100644
--- a/drivers/mfd/twl4030-irq.c
+++ b/drivers/mfd/twl4030-irq.c
@@ -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(of_fwnode_handle(dev->of_node), nr_irqs, irq_base, 0,
 				 &irq_domain_simple_ops, NULL);
 
 	irq_end = irq_base + TWL4030_CORE_NR_IRQS;