From patchwork Fri Jan 13 21:35:02 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Erik Stromdahl X-Patchwork-Id: 9516521 X-Patchwork-Delegate: kvalo@adurom.com Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id AFABD60761 for ; Fri, 13 Jan 2017 21:35:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9F43128584 for ; Fri, 13 Jan 2017 21:35:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9281C285BB; Fri, 13 Jan 2017 21:35:30 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 431D728584 for ; Fri, 13 Jan 2017 21:35:30 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751451AbdAMVf2 (ORCPT ); Fri, 13 Jan 2017 16:35:28 -0500 Received: from mail-lf0-f67.google.com ([209.85.215.67]:35074 "EHLO mail-lf0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751315AbdAMVf0 (ORCPT ); Fri, 13 Jan 2017 16:35:26 -0500 Received: by mail-lf0-f67.google.com with SMTP id v186so7072126lfa.2 for ; Fri, 13 Jan 2017 13:35:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=0RoaZpSvkfweTzJXVUn8oIKLlPUsxxdyCUBg08Rh64I=; b=iKxbVvIwyXcdOTmSmp7ChUn/55PNO4yTPSwCyDwgyxhxnUDkGPaCBUm6WD610I3TEd Lqo8lbR2BKVprGkd6b14wSAf3GbqexKg+Wn7fMYuHU7Xv6Dc+9RwkvcmMWsFDBKNMGNJ TDWBjz3w1/OhGAsDWkRRlqh4aoKl4avhIoyQXw2Pl2KFNAC+QTxPTlJLFjYTZ0kTFK2l sq2QZu+a7gb+tErhpi0DeafwYUvoxt6LbOyYvnX/L4bjsAwTsj+LSaoUaC2MkwXti89X +YxFEEJrIgQTW+MTXT1j9slKKeaDsXZUvlTT3x6KJ6NUV9zUjgGwwhcmIKDzhqwV/mp9 PXPQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=0RoaZpSvkfweTzJXVUn8oIKLlPUsxxdyCUBg08Rh64I=; b=PYWfLcVSYHiSn7ghXIBGqDw8ZbuDiPHGMeDsmAM4n7dY2RLyLSt24G+9kMUicAoFCZ TqPqGf2FR7qfgsA4RJ4pGYThjbQJUS2AYfeNTNOnD9CcFMVR9MBmBCWEGYCzHe0ZIRrO ut+PZpitV0RkQQL5hq2+PaJhGKHpMkTOVZ68XtfhwkYGqLj1Z+KP0OA8+F+WNY6ZhXxs 06ASduzj0Gdbqqg/RHaVsU11FnU9UzTxC9gvqvhQReq7EKVaAt92vwiYwJSBxIm9r6n2 nE2wSdl2BhlOG/wEQHmtGDmSy/diVmXr9zsWa3kMF+IsAKKLIXfs7l66RZZo6/IgLRly oPKA== X-Gm-Message-State: AIkVDXLY54cGkNJupNIpjJ8XZkMt7kUv93Yp98PJ3hFEJFIPQcRkTPYDgdQ0y+xuybnP8g== X-Received: by 10.25.211.7 with SMTP id k7mr8433906lfg.62.1484343325362; Fri, 13 Jan 2017 13:35:25 -0800 (PST) Received: from erik-mate-1604.lan (90-227-62-61-no75.tbcn.telia.com. [90.227.62.61]) by smtp.gmail.com with ESMTPSA id 66sm4437411lfy.42.2017.01.13.13.35.24 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 13 Jan 2017 13:35:24 -0800 (PST) From: Erik Stromdahl To: kvalo@qca.qualcomm.com, linux-wireless@vger.kernel.org, ath10k@lists.infradead.org Cc: Erik Stromdahl Subject: [RFC 03/10] ath10k: high_latency detection Date: Fri, 13 Jan 2017 22:35:02 +0100 Message-Id: <1484343309-6327-4-git-send-email-erik.stromdahl@gmail.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1484343309-6327-1-git-send-email-erik.stromdahl@gmail.com> References: <1484343309-6327-1-git-send-email-erik.stromdahl@gmail.com> Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The setup of high latency chips (USB and SDIO) is sometimes different than for chips using low latency interfaces. The bus type is used to determine if the interface is a high latency interface. Signed-off-by: Erik Stromdahl --- drivers/net/wireless/ath/ath10k/core.c | 1 + drivers/net/wireless/ath/ath10k/core.h | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/drivers/net/wireless/ath/ath10k/core.c b/drivers/net/wireless/ath/ath10k/core.c index e34c734..e985316 100644 --- a/drivers/net/wireless/ath/ath10k/core.c +++ b/drivers/net/wireless/ath/ath10k/core.c @@ -2294,6 +2294,7 @@ struct ath10k *ath10k_core_create(size_t priv_size, struct device *dev, ar->hw_rev = hw_rev; ar->hif.ops = hif_ops; ar->hif.bus = bus; + ar->is_high_latency = ath10k_is_high_latency(bus); switch (hw_rev) { case ATH10K_HW_QCA988X: diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h index 3f865c0..c58250c 100644 --- a/drivers/net/wireless/ath/ath10k/core.h +++ b/drivers/net/wireless/ath/ath10k/core.h @@ -751,6 +751,8 @@ struct ath10k { bool p2p; + bool is_high_latency; + struct { enum ath10k_bus bus; const struct ath10k_hif_ops *ops; @@ -967,6 +969,11 @@ static inline bool ath10k_peer_stats_enabled(struct ath10k *ar) return false; } +static inline bool ath10k_is_high_latency(enum ath10k_bus bus) +{ + return ((bus == ATH10K_BUS_SDIO) || (bus == ATH10K_BUS_USB)); +} + struct ath10k *ath10k_core_create(size_t priv_size, struct device *dev, enum ath10k_bus bus, enum ath10k_hw_rev hw_rev,