diff mbox series

[V2] ath9k: Use platform_get_irq() to get the interrupt

Message ID 20220314062635.2113747-1-chi.minghao@zte.com.cn (mailing list archive)
State Superseded
Delegated to: Toke Høiland-Jørgensen
Headers show
Series [V2] ath9k: Use platform_get_irq() to get the interrupt | expand

Commit Message

CGEL March 14, 2022, 6:26 a.m. UTC
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(-)

Comments

Kalle Valo March 14, 2022, 6:32 a.m. UTC | #1
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.
Kalle Valo March 14, 2022, 8:05 a.m. UTC | #2
Kalle Valo <kvalo@kernel.org> writes:

> 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.

Also please fix your email setup, I get an error for this address:

<zealci@zte.com.cn>: host mxde.zte.com.cn[209.9.37.26] said: 550 5.1.1 User
    unknown id=622EE16E.000 (in reply to RCPT TO command)
CGEL March 14, 2022, 9:26 a.m. UTC | #3
There has been a little problem with the mailbox recently, and we are
working on fixing it.

thanks
diff mbox series

Patch

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) {