Messages in this thread | | | From | Andy Shevchenko <> | Date | Sat, 25 Dec 2021 18:45:33 +0200 | Subject | Re: [PATCH] irqchip/renesas-irqc: Use platform_get_irq_optional() to get the interrupt |
| |
On Thu, Dec 16, 2021 at 9:52 AM Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> 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 bypassed the hierarchical setup and messed up the > irq chaining. > > In preparation for removal of static setup of IRQ resource from DT core > code use platform_get_irq_optional().
> + ret = platform_get_irq_optional(pdev, k); > + if (ret == -EPROBE_DEFER) > + goto err_runtime_pm_disable; > + if (ret < 0) > break;
The best approach is
ret = platform_get_irq_optional(...); if (ret < 0 && ret != -ENXIO) return ret; if (ret > 0) ...we got it...
It will allow the future API fix of platform_get_irq_optional() to be really optional.
-- With Best Regards, Andy Shevchenko
| |