Patch "wifi: ath11k: Use platform_get_irq() to get the interrupt" has been added to the 6.3-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    wifi: ath11k: Use platform_get_irq() to get the interrupt

to the 6.3-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     wifi-ath11k-use-platform_get_irq-to-get-the-interrup.patch
and it can be found in the queue-6.3 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit e121d0bd1d735be757689bdf953fdac6fc28154f
Author: Douglas Anderson <dianders@xxxxxxxxxxxx>
Date:   Wed Feb 1 08:54:42 2023 -0800

    wifi: ath11k: Use platform_get_irq() to get the interrupt
    
    [ Upstream commit f117276638b7600b981b3fe28550823cfbe1ef23 ]
    
    As of commit a1a2b7125e10 ("of/platform: Drop static setup of IRQ
    resource from DT core"), we need to use platform_get_irq() instead of
    platform_get_resource() to get our IRQs because
    platform_get_resource() simply won't get them anymore.
    
    This was already fixed in several other Atheros WiFi drivers,
    apparently in response to Zeal Robot reports. An example of another
    fix is commit 9503a1fc123d ("ath9k: Use platform_get_irq() to get the
    interrupt"). ath11k seems to have been missed in this effort, though.
    
    Without this change, WiFi wasn't coming up on my Qualcomm sc7280-based
    hardware. Specifically, "platform_get_resource(pdev, IORESOURCE_IRQ,
    i)" was failing even for i=0.
    
    Tested-on: WCN6750 hw1.0 AHB WLAN.MSL.1.0.1-00887-QCAMSLSWPLZ-1
    
    Fixes: a1a2b7125e10 ("of/platform: Drop static setup of IRQ resource from DT core")
    Fixes: 00402f49d26f ("ath11k: Add support for WCN6750 device")
    Signed-off-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
    Tested-by: Jun Yu <junyuu@xxxxxxxxxxxx>
    Reviewed-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@xxxxxxxxxxxxxx>
    Signed-off-by: Kalle Valo <quic_kvalo@xxxxxxxxxxx>
    Link: https://lore.kernel.org/r/20230201084131.v2.1.I69cf3d56c97098287fe3a70084ee515098390b70@changeid
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/net/wireless/ath/ath11k/ahb.c b/drivers/net/wireless/ath/ath11k/ahb.c
index bad3946b44bf6..b549576d0b513 100644
--- a/drivers/net/wireless/ath/ath11k/ahb.c
+++ b/drivers/net/wireless/ath/ath11k/ahb.c
@@ -874,11 +874,11 @@ static int ath11k_ahb_setup_msi_resources(struct ath11k_base *ab)
 	ab->pci.msi.ep_base_data = int_prop + 32;
 
 	for (i = 0; i < ab->pci.msi.config->total_vectors; i++) {
-		res = platform_get_resource(pdev, IORESOURCE_IRQ, i);
-		if (!res)
-			return -ENODEV;
+		ret = platform_get_irq(pdev, i);
+		if (ret < 0)
+			return ret;
 
-		ab->pci.msi.irqs[i] = res->start;
+		ab->pci.msi.irqs[i] = ret;
 	}
 
 	set_bit(ATH11K_FLAG_MULTI_MSI_VECTORS, &ab->dev_flags);



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux