Re: [PATCH v5] soc: ti: smartreflex: Use platform_get_irq_optional() to get the interrupt

From: Andy Shevchenko
Date: Wed Jan 05 2022 - 04:47:08 EST


On Tue, Jan 4, 2022 at 6:45 PM Lad Prabhakar
<prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx> wrote:
>
> platform_get_resource(pdev, IORESOURCE_IRQ, ..) relies on static
> allocation of IRQ resources in DT core code, this causes an issue
> when using hierarchical interrupt domains using "interrupts" property
> in the node as this bypasses the hierarchical setup and messes up the
> irq chaining.
>
> In preparation for removal of static setup of IRQ resource from DT core
> code use platform_get_irq_optional().
>
> While at it return 0 instead of returning ret in the probe success path.

...

> + ret = platform_get_irq_optional(pdev, 0);
> + if (ret < 0 && ret != -ENXIO)
> + return dev_err_probe(&pdev->dev, ret, "%s: failed to get IRQ resource\n", __func__);

Sorry, I haven't noticed that you are using __func__ in the message.
Please don't. It shows either that the message is not unique (so make
the message unique enough in this driver) or the redundancy of the
__func__ (it doesn't add any value, but noise).

> + if (ret > 0)
> + sr_info->irq = ret;


--
With Best Regards,
Andy Shevchenko