From patchwork Tue Jan 24 19:01:00 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Doug Anderson X-Patchwork-Id: 647488 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id EF08CC54E94 for ; Tue, 24 Jan 2023 19:01:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234323AbjAXTB3 (ORCPT ); Tue, 24 Jan 2023 14:01:29 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38828 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229503AbjAXTB1 (ORCPT ); Tue, 24 Jan 2023 14:01:27 -0500 Received: from mail-pj1-x1033.google.com (mail-pj1-x1033.google.com [IPv6:2607:f8b0:4864:20::1033]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6363A4DBC6 for ; Tue, 24 Jan 2023 11:01:25 -0800 (PST) Received: by mail-pj1-x1033.google.com with SMTP id n20-20020a17090aab9400b00229ca6a4636so18754861pjq.0 for ; Tue, 24 Jan 2023 11:01:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=SEJDfnpuHczelrJ6vp0fb1JDaeIwWS2iq2BACn7e/IE=; b=ZPjYuk0ya4aeNvJO7qCFVWhUdg0oqrtCfCmpbpBLA+ntney22BIz/3+x+FcjsEArwy EhC1rTUOzPpnWRcgDlgTPkpWxjQVhxbNJKGVBjVKQb4u+qsL8owwjnObWFkBj3oGR3sl BW7yKEPe0fUVC9ATGwooiBc7H5EhIV8q26nao= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=SEJDfnpuHczelrJ6vp0fb1JDaeIwWS2iq2BACn7e/IE=; b=m/2yzIvXfFl1hQYL17kbD86kAB8Lg1tC9caAm21FLVCYePViHLbLb4d+vufnEE4et6 pFo0viuT4XXkQV53bPck2irIAFWIJuAVmMPeI3Svrp0mjUqCl8SDWuCVOfytBxQMYFc+ qKlsGMpL7eRmPemwo+H2X6bJ2IBExJ/iGadNUII43Cgf+IIvOu9q2SidvbfLyS7yDWLF yXe7pQP7W+aDvFDNmIt82fKGoSAGOK5IHSmRQESsS/1leJt3w4NT/Vx9XCeginrPRQgC vwCKhOuYNpyRrJ/t4kUVtQujYWZtBrKh+fH2l8oBQmW3+ELW0MXJjW63hZAeT3nPfWWT 245Q== X-Gm-Message-State: AO0yUKWkraGw7OIrB/i8hW//lN1HmHQVOOYZEI83IPXg6dfW5FipGsEt BVlpRZPSe+kx1ptucXut08GZfQ== X-Google-Smtp-Source: AK7set9PfKKjjgxVS13+YwcKa14yZ/3qzh0IOTUKCI7B6Y/ZCJe76Mnqs2L7VttHh0r/YqkC2bCS7Q== X-Received: by 2002:a17:902:e747:b0:196:1d89:7002 with SMTP id p7-20020a170902e74700b001961d897002mr1941570plf.31.1674586884928; Tue, 24 Jan 2023 11:01:24 -0800 (PST) Received: from tictac2.mtv.corp.google.com ([2620:15c:9d:2:7b28:de8d:ee0:2cd6]) by smtp.gmail.com with ESMTPSA id f10-20020a17090274ca00b001948720f6bdsm2010415plt.98.2023.01.24.11.01.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 24 Jan 2023 11:01:24 -0800 (PST) From: Douglas Anderson To: ath11k@lists.infradead.org, linux-wireless@vger.kernel.org Cc: Luis Chamberlain , Nick Kossifidis , Youghandhar Chintala , junyuu@chromium.org, Kalle Valo , Jiri Slaby , Douglas Anderson , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Manikanta Pubbisetty , Paolo Abeni , linux-kernel@vger.kernel.org, netdev@vger.kernel.org Subject: [PATCH 1/2] wifi: ath11k: Use platform_get_irq() to get the interrupt Date: Tue, 24 Jan 2023 11:01:00 -0800 Message-Id: <20230124110057.1.I69cf3d56c97098287fe3a70084ee515098390b70@changeid> X-Mailer: git-send-email 2.39.1.405.gd4c25cc71f-goog MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org For the same reasons talked about in commit 9503a1fc123d ("ath9k: Use platform_get_irq() to get the interrupt"), we should be using platform_get_irq() in ath11k. Let's make the switch. 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. Digging into the platform device there truly were no IRQs present in the list of resources when the call was made. I didn't dig into what changed between 5.15 (where platform_get_resource() seems to work) and mainline Linux (where it doesn't). Given the zeal robot report for ath9k I assume it's a known issue. I'll mark this as "fixing" the patch that introduced the platform_get_resource() call since it should have always been fine to just call platform_get_irq() and that'll make sure it goes back as far as it needs to go. Tested-on: WCN6750 hw1.0 AHB WLAN.MSL.1.0.1-00887-QCAMSLSWPLZ-1 Fixes: 00402f49d26f ("ath11k: Add support for WCN6750 device") Signed-off-by: Douglas Anderson --- drivers/net/wireless/ath/ath11k/ahb.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/ath/ath11k/ahb.c b/drivers/net/wireless/ath/ath11k/ahb.c index d34a4d6325b2..f70a119bb5c8 100644 --- a/drivers/net/wireless/ath/ath11k/ahb.c +++ b/drivers/net/wireless/ath/ath11k/ahb.c @@ -859,11 +859,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);