[PATCH] uio: uio_dmem_genirq: use platform_get_irq_optional() to avoid spurious error log
From: zhangjiao2
Date: Tue Nov 03 2026 - 02:45:09 EST
From: zhang jiao <zhangjiao2@xxxxxxxxxxxxxxxxxxxx>
The driver treats a missing IRQ as a valid configuration by mapping
-ENXIO to UIO_IRQ_NONE when probing from device tree. However,
platform_get_irq() logs an error message for any failure including
-ENXIO, producing misleading kernel log noise on devices that simply
do not have an interrupt.
Switch to platform_get_irq_optional(), which returns -ENXIO silently
when the IRQ is absent. This aligns uio_dmem_genirq with its sibling
driver uio_pdrv_genirq, which was already converted to use the
optional variant.
Signed-off-by: zhang jiao <zhangjiao2@xxxxxxxxxxxxxxxxxxxx>
---
drivers/uio/uio_dmem_genirq.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/uio/uio_dmem_genirq.c b/drivers/uio/uio_dmem_genirq.c
index 41c18ec62a45..c8f769372171 100644
--- a/drivers/uio/uio_dmem_genirq.c
+++ b/drivers/uio/uio_dmem_genirq.c
@@ -203,7 +203,7 @@ static int uio_dmem_genirq_probe(struct platform_device *pdev)
if (!uioinfo->irq) {
/* Multiple IRQs are not supported */
- ret = platform_get_irq(pdev, 0);
+ ret = platform_get_irq_optional(pdev, 0);
if (ret == -ENXIO && pdev->dev.of_node)
ret = UIO_IRQ_NONE;
else if (ret < 0)
--
2.33.0