Messages in this thread | | | From | "Lad, Prabhakar" <> | Date | Sat, 25 Dec 2021 12:19:09 +0000 | Subject | Re: [PATCH 2/8] net: pxa168_eth: Use platform_get_irq() to get the interrupt |
| |
Hi Andy,
Thank you for the review.
On Sat, Dec 25, 2021 at 11:24 AM Andy Shevchenko <andy.shevchenko@gmail.com> wrote: > > > > On Friday, December 24, 2021, 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 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(). >> >> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com> >> --- >> drivers/net/ethernet/marvell/pxa168_eth.c | 9 +++++---- >> 1 file changed, 5 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/net/ethernet/marvell/pxa168_eth.c b/drivers/net/ethernet/marvell/pxa168_eth.c >> index 1d607bc6b59e..52bef50f5a0d 100644 >> --- a/drivers/net/ethernet/marvell/pxa168_eth.c >> +++ b/drivers/net/ethernet/marvell/pxa168_eth.c >> @@ -1388,7 +1388,6 @@ static int pxa168_eth_probe(struct platform_device *pdev) >> { >> struct pxa168_eth_private *pep = NULL; >> struct net_device *dev = NULL; >> - struct resource *res; >> struct clk *clk; >> struct device_node *np; >> int err; >> @@ -1419,9 +1418,11 @@ static int pxa168_eth_probe(struct platform_device *pdev) >> goto err_netdev; >> } >> >> - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); >> - BUG_ON(!res); >> - dev->irq = res->start; >> + err = platform_get_irq(pdev, 0); >> + if (err == -EPROBE_DEFER) > > > What about other errors? > Ouch I missed it... > >> >> + goto err_netdev; >> + BUG_ON(dev->irq < 0); > > > ??? What is this and how it supposed to work? > .. should have been BUG_ON(dev->irq < 0);
Cheers, Prabhakar >> >> + dev->irq = err; >> dev->netdev_ops = &pxa168_eth_netdev_ops; >> dev->watchdog_timeo = 2 * HZ; >> dev->base_addr = 0; >> -- >> 2.17.1 >> > > > -- > With Best Regards, > Andy Shevchenko > >
| |