[PATCH v3 2/2] mfd: intel-lpss: Amend IRQ check

From: Andy Shevchenko
Date: Mon Nov 06 2023 - 13:41:03 EST


From: Chen Ni <nichen@xxxxxxxxxxx>

platform_get_irq() returns a negative error code to indicating an
error. All the same does pci_alloc_irq_vectors() and pci_irq_vector().
So in intel_lpss_probe() the erroneous IRQ should be better returned
as is.

The pci_alloc_irq_vectors() call and platform_get_irq() guarantee
that IRQ won't be 0, hence drop that check.

Signed-off-by: Chen Ni <nichen@xxxxxxxxxxx>
[andy: updated commit message]
Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
---
drivers/mfd/intel-lpss.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/mfd/intel-lpss.c b/drivers/mfd/intel-lpss.c
index 9591b354072a..4c9d0222751a 100644
--- a/drivers/mfd/intel-lpss.c
+++ b/drivers/mfd/intel-lpss.c
@@ -378,9 +378,12 @@ int intel_lpss_probe(struct device *dev,
struct intel_lpss *lpss;
int ret;

- if (!info || !info->mem || info->irq <= 0)
+ if (!info || !info->mem)
return -EINVAL;

+ if (info->irq < 0)
+ return info->irq;
+
lpss = devm_kzalloc(dev, sizeof(*lpss), GFP_KERNEL);
if (!lpss)
return -ENOMEM;
--
2.40.0.1.gaa8946217a0b