diff mbox series

[v2,2/7] mfd: tqmx86: clear GPIO IRQ resource when no IRQ is set

Message ID 25ee92527847b2fa15e2c82ca486a92b4fd1d44e.1625227382.git.matthias.schiffer@ew.tq-group.com
State New
Headers show
Series TQMx86: TQMx110EB and TQMxE40x MFD/GPIO support | expand

Commit Message

Matthias Schiffer July 2, 2021, 12:23 p.m. UTC
The driver was registering IRQ 0 when no IRQ was set. This leads to
warnings with newer kernels.

Clear the resource flags, so no resource is registered at all in this
case.

Fixes: 2f17dd34ffed ("mfd: tqmx86: IO controller with I2C, Wachdog and GPIO")
Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
---

v2: add Fixes line

Andy recommended to use IORESOURCE_DISABLED instead, but this doesn't
have any effect for platform_get_irq(), so I'm resubmitting this patch
without functional changes. Grepping for '\.flags = 0;' shows other
drivers doing the same.


 drivers/mfd/tqmx86.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Andrew Lunn July 2, 2021, 1:52 p.m. UTC | #1
On Fri, Jul 02, 2021 at 02:23:48PM +0200, Matthias Schiffer wrote:
> The driver was registering IRQ 0 when no IRQ was set. This leads to
> warnings with newer kernels.
> 
> Clear the resource flags, so no resource is registered at all in this
> case.
> 
> Fixes: 2f17dd34ffed ("mfd: tqmx86: IO controller with I2C, Wachdog and GPIO")
> Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
> ---
> 
> v2: add Fixes line
> 
> Andy recommended to use IORESOURCE_DISABLED instead, but this doesn't
> have any effect for platform_get_irq(), so I'm resubmitting this patch
> without functional changes. Grepping for '\.flags = 0;' shows other
> drivers doing the same.

IORESOURCE_DISABLED seems to have an odd meaning. It seems to be about
ACPI and the resource needs to be enabled before it can be used.

So .flags = 0 seems reasonable.

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

    Andrew
diff mbox series

Patch

diff --git a/drivers/mfd/tqmx86.c b/drivers/mfd/tqmx86.c
index ddddf08b6a4c..732013f40e4e 100644
--- a/drivers/mfd/tqmx86.c
+++ b/drivers/mfd/tqmx86.c
@@ -209,6 +209,8 @@  static int tqmx86_probe(struct platform_device *pdev)
 
 		/* Assumes the IRQ resource is first. */
 		tqmx_gpio_resources[0].start = gpio_irq;
+	} else {
+		tqmx_gpio_resources[0].flags = 0;
 	}
 
 	ocores_platfom_data.clock_khz = tqmx86_board_id_to_clk_rate(board_id);