]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ASoC: cs35l56: Accept values greater than 0 as IRQ numbers
authorSimon Trimmer <simont@opensource.cirrus.com>
Mon, 17 Jun 2024 13:53:38 +0000 (14:53 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 3 Aug 2024 07:00:09 +0000 (09:00 +0200)
[ Upstream commit 3ec1428d7b7c519d757a013cef908d7e33dee882 ]

IRQ lookup functions such as those in ACPI can return error values when
an IRQ is not defined. The i2c core driver converts the error codes to a
value of 0 and the SPI bus driver passes them unaltered to client device
drivers.

The cs35l56 driver should only accept positive non-zero values as IRQ
numbers.

Signed-off-by: Simon Trimmer <simont@opensource.cirrus.com>
Fixes: 8a731fd37f8b ("ASoC: cs35l56: Move utility functions to shared file")
Link: https://msgid.link/r/20240617135338.82006-1-simont@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/codecs/cs35l56-shared.c

index 30497152e02a74784aa441f8247a5cba71068b51..f609cade805d760e1783c996c2fe323b2becb6a6 100644 (file)
@@ -397,7 +397,7 @@ int cs35l56_irq_request(struct cs35l56_base *cs35l56_base, int irq)
 {
        int ret;
 
-       if (!irq)
+       if (irq < 1)
                return 0;
 
        ret = devm_request_threaded_irq(cs35l56_base->dev, irq, NULL, cs35l56_irq,