Message ID | 20220314062635.2113747-1-chi.minghao@zte.com.cn |
---|---|
State | New |
Headers | show |
Series | [V2] ath9k: Use platform_get_irq() to get the interrupt | expand |
cgel.zte@gmail.com writes: > From: Minghao Chi <chi.minghao@zte.com.cn> > > It is not recommened to use platform_get_resource(pdev, IORESOURCE_IRQ) > for requesting IRQ's resources any more, as they can be not ready yet in > case of DT-booting. > > platform_get_irq() instead is a recommended way for getting IRQ even if > it was not retrieved earlier. > > It also makes code simpler because we're getting "int" value right away > and no conversion from resource to int is required. > > Reported-by: Zeal Robot <zealci@zte.com.cn> > Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn> > --- > v1->v2: > - Retain dev_err() call on failure > > drivers/net/wireless/ath/ath9k/ahb.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/net/wireless/ath/ath9k/ahb.c b/drivers/net/wireless/ath/ath9k/ahb.c > index cdefb8e2daf1..28c45002c115 100644 > --- a/drivers/net/wireless/ath/ath9k/ahb.c > +++ b/drivers/net/wireless/ath/ath9k/ahb.c > @@ -98,14 +98,12 @@ static int ath_ahb_probe(struct platform_device *pdev) > return -ENOMEM; > } > > - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); > - if (res == NULL) { > + irq = platform_get_resource(pdev, 0); Is this really correct? Should it be platform_get_irq()? Do you compile test your patches? That's mandatory.
diff --git a/drivers/net/wireless/ath/ath9k/ahb.c b/drivers/net/wireless/ath/ath9k/ahb.c index cdefb8e2daf1..28c45002c115 100644 --- a/drivers/net/wireless/ath/ath9k/ahb.c +++ b/drivers/net/wireless/ath/ath9k/ahb.c @@ -98,14 +98,12 @@ static int ath_ahb_probe(struct platform_device *pdev) return -ENOMEM; } - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); - if (res == NULL) { + irq = platform_get_resource(pdev, 0); + if (irq < 0) { dev_err(&pdev->dev, "no IRQ resource found\n"); - return -ENXIO; + return irq; } - irq = res->start; - ath9k_fill_chanctx_ops(); hw = ieee80211_alloc_hw(sizeof(struct ath_softc), &ath9k_ops); if (hw == NULL) {