From patchwork Tue Dec 11 16:13:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bhagavathi Perumal S X-Patchwork-Id: 10724151 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 68E441751 for ; Tue, 11 Dec 2018 16:31:27 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 579EB2B30A for ; Tue, 11 Dec 2018 16:31:27 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4C1442B45F; Tue, 11 Dec 2018 16:31:27 +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=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D4D1E2B477 for ; Tue, 11 Dec 2018 16:31:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:References: In-Reply-To:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=kTc1Lm0TaaaE8F0IJ5xpfbGP8R6RsvDxLyDGUDgy+v8=; b=pOvAvQlTrd8mOidWOBEdK+XCd6 5i8pkK99OQUDJ5izCfr63/iGbBJcSulM9SpuaWvZNZbRjNTg3+v1PnutjTrTFSGjqDu+NTKng9kwC ulwZrxfvLj4IxctIOyBJCbTm2xD4kMS0fGadp+zWRtWWCJ7WksdyUpifs21WAlo1fWm63FFJn6XAE cecjE/k4sfOyXHGVVYEvluM5wtGnK2ZAmM190uFnB9m+rEA3J6PeUIoVW+/41aMabvSvydNEENHFp Vc6bTFvBFLy1KEuBH1e+4Vh7lwxr2YDQ8AuhZ0ASr1ydEgommO5eJRPWBemZisq052udCNJp8X7Kj 0w6GEppg==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkwP-0006ix-3K; Tue, 11 Dec 2018 16:31:25 +0000 Received: from merlin.infradead.org ([2001:8b0:10b:1231::1]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkwO-0006iW-Fc for ath10k@bombadil.infradead.org; Tue, 11 Dec 2018 16:31:24 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=References:In-Reply-To:Message-Id:Date: Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=gQ5WAH/Nz40SeQc90550pGg+rSpFjduyJlqdySplnX0=; b=UY4pjoPwoSVEya7rJj9rxHfgF XYw7D7Qt8SD716QkqTicg6V/nlJX7AIDJVo665WiINzEb+p5YymOvgfzBkb7w1d+LKqbh/gpmMgZ5 SOFPbusRAC7R4rltGr38LTkG4EE4Im+fqFhCaprfHm5WZOeTmN3zTSPGyihfWFjdH/rhxttmwp510 2p6Ms2W23N6W1EcWYqVx7nnOHCLfYCGAvnVIiwDqbHmk3ytL3czkXo6s158TjeXAkc7ELhx/p0nZr UaT0bwsqzjr45WE7rd0jGkGslXDUrKFvcKUXgvNQPebwYhHdQm/xtsIyvF779qniB9ACxodGUtTaY IEYYvJz8g==; Received: from smtp.codeaurora.org ([198.145.29.96]) by merlin.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkfx-0008NZ-5t for ath10k@lists.infradead.org; Tue, 11 Dec 2018 16:14:25 +0000 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 32A7F61327; Tue, 11 Dec 2018 16:13:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1544544852; bh=7nDCxlcA7tBZzDUxofMXYs9pdtPUeaBr6QXvjbDoXGM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kZcq2JWH7wqD9pVhD2y1Y+jbbY09LFtrkxgzG/40cpKRAKQS9h2QulUK1wZHDkd3U AkXRf0rzQ0plBEbvDVp83UNghyofOJZd6gOSE2ZkA7DkAR8yvj4pEEMy1O3ONXI5r2 iLCRDvzZO/eCW9utvS9Tn+8Aj0iNTnpJvXZ4DDPo= Received: from localhost (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: bperumal@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 61D8A6161F; Tue, 11 Dec 2018 16:13:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1544544832; bh=7nDCxlcA7tBZzDUxofMXYs9pdtPUeaBr6QXvjbDoXGM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=dnwjTg617nUOmhLn3Ryt1o7vDchVvs2VildFLVpedeFPWaJpx11BwG5T0Oupa8+Du 9ZlDBfU+mD6xDSiBpgtNq17v9rMwBQIW29x+SQYaswfXcye2RYzeleyWfrBDWYqgwp GUETZuI5DT8nzMVGKYbusL4UarG+sbjkdarBhRcw= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 61D8A6161F Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=bperumal@codeaurora.org From: Bhagavathi Perumal S To: ath10k@lists.infradead.org Subject: [PATCH v4 1/3] dt-bindings: net: ath10k: fix node name and device type in qcom ath10k example Date: Tue, 11 Dec 2018 21:43:22 +0530 Message-Id: <1544544804-4039-2-git-send-email-bperumal@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1544544804-4039-1-git-send-email-bperumal@codeaurora.org> References: <1544544804-4039-1-git-send-email-bperumal@codeaurora.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181211_111425_330274_00E49B40 X-CRM114-Status: GOOD ( 11.79 ) X-BeenThere: ath10k@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, linux-wireless@vger.kernel.org, Bhagavathi Perumal S MIME-Version: 1.0 Sender: "ath10k" Errors-To: ath10k-bounces+patchwork-ath10k=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP In qcom,ath10k documentation, ath10k is used as node name in the example of pci based device. Normally, node name should be class of device and not the model name, so fix it to node name "wifi". And remove the property device_type pci since only pci bridges should have this property. Signed-off-by: Bhagavathi Perumal S Reviewed-by: Rob Herring --- Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt b/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt index 2196d1a..ef60f25 100644 --- a/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt +++ b/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt @@ -74,9 +74,8 @@ pci { #address-cells = <3>; device_type = "pci"; - ath10k@0,0 { + wifi@0,0 { reg = <0 0 0 0 0>; - device_type = "pci"; qcom,ath10k-calibration-data = [ 01 02 03 ... ]; }; }; From patchwork Tue Dec 11 16:13:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bhagavathi Perumal S X-Patchwork-Id: 10724149 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 70958112E for ; Tue, 11 Dec 2018 16:29:17 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5C6212B22A for ; Tue, 11 Dec 2018 16:29:17 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4D6412B22C; Tue, 11 Dec 2018 16:29:17 +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=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id D4B572B22A for ; Tue, 11 Dec 2018 16:29:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:References: In-Reply-To:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=R9K9g0Mr+10hOahqLgvDS3PBZbrEVixjpIiv6bM6PTY=; b=qgvmyC4k6a+3QSbMcioCZnh9TF LRG236lkTRZSHIx/alktqJMfmAmGN2qggc/t7bTAYtqLlXtofYfdXK3dWexSrZY6X4/O2fmwuggri z7ZBJEEI5ZLApy8MSTWrEw0GPrmivYv2iB/VEAxLQakox2vkHV7NrlIDnQT30GUuUX1Z50kjYI1Zr AI/kIhYj8l5S81CsM7Oi7/AHuYZr6nn4jyMrWbYA4JvcDfZjFgTcgpXD5UNp19uiXOIh+gjFepcDV KughMZLAUmJv1Dsk644eFQZ8hymCsNBdHECf7qHEC7nvJaY+ugknzExWjcjQQnt3dPN2oUNOagofP XY1twnDw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkuH-0004wP-30; Tue, 11 Dec 2018 16:29:13 +0000 Received: from casper.infradead.org ([85.118.1.10]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWktw-00046W-Hs for ath10k@bombadil.infradead.org; Tue, 11 Dec 2018 16:28:52 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=casper.20170209; h=References:In-Reply-To:Message-Id:Date: Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=82ZqvWyNbNM3pkQJmgw6zQqCFAj7UV+/bPwe/WquURA=; b=ZkNATUPt1FjqEluUypmzaHUBj 9upvpwDaGMf8mYYaSZiNWal28gjrc2/DmN2CzXKYe0BOOws+232Zk7+cBc8wESiCON3eU4WmUeCLO xOIYWVA3ARsxRgWrAEWTEWOFvzhh0rB5tAZ1AA6ZQNtmzTmG5HwNwjZRH8kgrGv+ia56HKW71McnU 59068ba/pt/Ix+kadTjz9Bd1wxZ8JTGcvyhBCxKs3xyr3EucOiEZa44J2tEOlzucKbqepI8ZN8a3q 07gapE5BYqD7msX7LUcE5FOHbFNRlVP5+bxOcoNeFW1Knf6KMSrV/xNa3ILarr5MKiskLXiiiJq71 W0eFj3T6w==; Received: from smtp.codeaurora.org ([198.145.29.96]) by casper.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkfz-0001IH-JZ for ath10k@lists.infradead.org; Tue, 11 Dec 2018 16:14:32 +0000 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id B88CF6133A; Tue, 11 Dec 2018 16:14:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1544544854; bh=ga9RyYbpcoVkNI6F/pCJo1PU2BYZuQzbYpMXaa65yyk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PzNlD0484XvqRpfG0DSwAfuZaQu1X0SsuhmNX/Nhs1Lvc3G4/kTrKNC81iIptYNyD sO7f1yIwLWi3hVXTq4RoFpR1YxoYbJ0WVtpcSyibJvd1D/du14z2wiDt2DqfWr0uFj DrMW7gP60c3281qCnaDptoEgmaN+7kpSvYHnvtE0= Received: from localhost (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: bperumal@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 8471F6162F; Tue, 11 Dec 2018 16:14:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1544544844; bh=ga9RyYbpcoVkNI6F/pCJo1PU2BYZuQzbYpMXaa65yyk=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kqJGmixX0rYhiolOR+kKgkmuCJSPXFq9/+qZ39gt/1PqkBDHra78gByVuIxs3QDxs CGicKbwgoUouP3nSEk57Hb33FFYpB9CovocjdZVST+2xZISdkA4nJIUoK5TSCFsii3 Sdye1EWbnPFQUQJ/uSqLACZPG5s35vXoL7ALIHsM= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 8471F6162F Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=bperumal@codeaurora.org From: Bhagavathi Perumal S To: ath10k@lists.infradead.org Subject: [PATCH v4 2/3] dt-bindings: net: ath10k: add new dt entry to identify external FEM Date: Tue, 11 Dec 2018 21:43:23 +0530 Message-Id: <1544544804-4039-3-git-send-email-bperumal@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1544544804-4039-1-git-send-email-bperumal@codeaurora.org> References: <1544544804-4039-1-git-send-email-bperumal@codeaurora.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181211_161428_368098_4F436EF2 X-CRM114-Status: UNSURE ( 9.58 ) X-CRM114-Notice: Please train this message. X-BeenThere: ath10k@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, linux-wireless@vger.kernel.org, Bhagavathi Perumal S MIME-Version: 1.0 Sender: "ath10k" Errors-To: ath10k-bounces+patchwork-ath10k=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP This adds new dt entry ext-fem-name, it is used by ath10k driver to select correct timing parameters and configure it in target wifi hardware. The Front End Module(FEM) normally includes tx power amplifier(PA) and rx low noise amplifier(LNA). The default timing parameters like tx end to PA off timing values were fine tuned for internal FEM used in reference design. And these timing values can not be same if ODM modifies hardware design with different external FEM. This DT entry helps to choose correct timing values in driver if different external FEM hardware used. Signed-off-by: Bhagavathi Perumal S --- Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt b/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt index ef60f25..71530fd 100644 --- a/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt +++ b/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt @@ -61,8 +61,14 @@ Optional properties: Value type: Definition: reference to the reserved-memory for the msa region used by the wifi firmware running in Q6. +- ext-fem-name: + Usage: Optional + Value type: string + Definition: Name of external front end module used. Some valid FEM names + for example: "microsemi-lx5586", "sky85703-11" + and "sky85803" etc. -Example (to supply the calibration data alone): +Example (to supply PCI based wifi block details): In this example, the node is defined as child node of the PCI controller. @@ -77,6 +83,7 @@ pci { wifi@0,0 { reg = <0 0 0 0 0>; qcom,ath10k-calibration-data = [ 01 02 03 ... ]; + ext-fem-name = "microsemi-lx5586"; }; }; }; From patchwork Tue Dec 11 16:13:24 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bhagavathi Perumal S X-Patchwork-Id: 10724153 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 519601751 for ; Tue, 11 Dec 2018 16:31:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 406232B43D for ; Tue, 11 Dec 2018 16:31:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 352332B470; Tue, 11 Dec 2018 16:31: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=-5.2 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 9785B2B448 for ; Tue, 11 Dec 2018 16:31:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:MIME-Version:Cc:List-Subscribe: List-Help:List-Post:List-Archive:List-Unsubscribe:List-Id:References: In-Reply-To:Message-Id:Date:Subject:To:From:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=zo/tGnNoVczHQGSNl3b0tQ7BBFEpIzEQhIGn/SnZQmA=; b=WeaXCEemDxH3sYGkY+ge2c9/D/ sP598Z3J+IPNOF5NYtN4nHajBdx4je1n8JosfJieNoxGQMa7Pjg3rvWprui80bU6v0Az8eV65EVyA AqX3u6nKINjdSxeOF5MWcnfV5HZqQ8poRKqRYMoGwRPez2LWXOlOyTzf9nu/xLSqKdFBYPwIWE52n FMTfXbhGCDEk5FF3CPhdMPh5X8J4PZe+tOZEMOb30+75AUpY/iZd0OLxTS6Lm+xJXnch3GvcZxYK3 dr4+Pj7iYivqYtLAUwfr9ayj1NnvRyvnI6Yyxb5HPLVBwi/6IgLAMAP9KN1YcAXJW9T4mwx0nXswI RA1tVCBA==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkwS-0006ls-6l; Tue, 11 Dec 2018 16:31:28 +0000 Received: from merlin.infradead.org ([2001:8b0:10b:1231::1]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkwP-0006iW-Uw for ath10k@bombadil.infradead.org; Tue, 11 Dec 2018 16:31:26 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=merlin.20170209; h=References:In-Reply-To:Message-Id:Date: Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=oIQmKUO1lxgl0RIXgjSFUBp+lL/+MCm8tByEIEnvd7U=; b=Hr3i4IWEfgU1WvBUZPoyAQBzA V+7sxcWGypnTc5Gzvh517aJU5yyjDK1D6iE9QaK5zQh8LRLn3HwhpRpkxtejzJ458aMR3LpH0sEbn yON+iPM+L8SI1QiLSiqTYzyrzWspJidndsOS2hAsctuCwNlH2/4aOb/VGLaLbW9WB4XV6NDeBTfHV eCRRoH6mL66S7zSN6fz3ftbhj6aPc+UVq4cW6EgYDCDOEf5bWfpnSUm5sxKbI72ahiWkZjgG2Bgvd hP/QNkUSGQi0mW8rEB631SyD/oKLMR2ktW114KTClYCCrq/rFFaM3EjQmBxwIhUM1AkJdA74NrS/a r17c9b7zw==; Received: from smtp.codeaurora.org ([198.145.29.96]) by merlin.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1gWkgD-0008Oi-D7 for ath10k@lists.infradead.org; Tue, 11 Dec 2018 16:14:42 +0000 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 1E6796166F; Tue, 11 Dec 2018 16:14:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1544544870; bh=hGerwc4V1jOqWkLQ0Pu91q/8OFMGBcPozdN2GfkqJzw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PinsyRw8rYOFhF007UHQ7AFQ1oEr0SNwbMTV4CAFsZ4EzmAzSuuI4s2GDUOXxg8D/ rlOcYig9EtOUC3f/IR9VxvzjDsDOaP6o30wVdNYbDm9Dz9fU0fuYUppa4MDx+O8ICL 9ujpxvgSxfyVXnNZ9U4ZNSMMN+6zQ1ANhef1Da7M= Received: from localhost (blr-c-bdr-fw-01_globalnat_allzones-outside.qualcomm.com [103.229.19.19]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: bperumal@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id D0FDA61648; Tue, 11 Dec 2018 16:14:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1544544856; bh=hGerwc4V1jOqWkLQ0Pu91q/8OFMGBcPozdN2GfkqJzw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=E9xxltyjqDE9UxF8IZUTR2m9O2C4AJPEKeQan3CxU67tIjQqAx0+m6BFnqgMADDw4 YJHf4fVDGF6J0Ir/8TMVgUWNcFJru5VqRupfhnbdiRwD+Z8PyX/kah9MjwRqMmL36J YWRjt9ELUpUUG0AFd5EX7WZvQLGimVBZKiaA2MJU= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org D0FDA61648 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=bperumal@codeaurora.org From: Bhagavathi Perumal S To: ath10k@lists.infradead.org Subject: [PATCH v4 3/3] ath10k: Add support to configure BB timing over wmi Date: Tue, 11 Dec 2018 21:43:24 +0530 Message-Id: <1544544804-4039-4-git-send-email-bperumal@codeaurora.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1544544804-4039-1-git-send-email-bperumal@codeaurora.org> References: <1544544804-4039-1-git-send-email-bperumal@codeaurora.org> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20181211_111441_583500_8DC25451 X-CRM114-Status: GOOD ( 18.31 ) X-BeenThere: ath10k@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, linux-wireless@vger.kernel.org, Bhagavathi Perumal S MIME-Version: 1.0 Sender: "ath10k" Errors-To: ath10k-bounces+patchwork-ath10k=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Add wmi configuration cmd to configure base band(BB) power amplifier(PA) off timing values in hardware. The default PA off timings were fine tuned to make proper DFS radar detection in QCA reference design. If ODM uses different PA in their design, then the same default PA off timing values cannot be used, it requires different settling time to detect radar pulses very sooner and avoid radar detection problems. In that case it provides provision to select proper PA off timing values based on the PA hardware used. The PA component is part of FEM hardware and new device tree entry "ext-fem-name" is used to indentify the FEM hardware. And this wmi configuration cmd is enabled via wmi service flag "WMI_SERVICE_BB_TIMING_CONFIG_SUPPORT". Other way is to apply these values through calibration data, but recalibration of all boards out there might not be feasible. This change tested on firmware ver 10.2.4-1.0-00042 in QCA988X chipset. Signed-off-by: Bhagavathi Perumal S --- drivers/net/wireless/ath/ath10k/mac.c | 47 +++++++++++++++++++++++++++++++ drivers/net/wireless/ath/ath10k/wmi-ops.h | 20 +++++++++++++ drivers/net/wireless/ath/ath10k/wmi.c | 23 +++++++++++++++ drivers/net/wireless/ath/ath10k/wmi.h | 26 +++++++++++++++++ 4 files changed, 116 insertions(+) diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 1db2a30..5a1c9b6 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -22,6 +22,7 @@ #include #include #include +#include #include "hif.h" #include "core.h" @@ -4637,11 +4638,44 @@ static int ath10k_set_antenna(struct ieee80211_hw *hw, u32 tx_ant, u32 rx_ant) return ret; } +static int __ath10k_fetch_bb_timing_dt(struct ath10k *ar, + struct wmi_bb_timing_cfg_arg *bb_timing) +{ + struct device_node *node; + const char *fem_name; + int ret; + + node = ar->dev->of_node; + if (!node) + return -ENOENT; + + ret = of_property_read_string_index(node, "ext-fem-name", 0, &fem_name); + if (ret) + return -ENOENT; + + /* + * If external Front End module used in hardware, then default base band timing + * parameter cannot be used since they were fine tuned for reference hardware, + * so choosing different value suitable for that external FEM. + */ + if (!strcmp("microsemi-lx5586", fem_name)) { + bb_timing->bb_tx_timing = 0x00; + bb_timing->bb_xpa_timing = 0x0101; + } else { + return -ENOENT; + } + + ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot bb_tx_timing 0x%x bb_xpa_timing 0x%x\n", + bb_timing->bb_tx_timing, bb_timing->bb_xpa_timing); + return 0; +} + static int ath10k_start(struct ieee80211_hw *hw) { struct ath10k *ar = hw->priv; u32 param; int ret = 0; + struct wmi_bb_timing_cfg_arg bb_timing = {0}; /* * This makes sense only when restarting hw. It is harmless to call @@ -4796,6 +4830,19 @@ static int ath10k_start(struct ieee80211_hw *hw) clear_bit(ATH10K_FLAG_BTCOEX, &ar->dev_flags); } + if (test_bit(WMI_SERVICE_BB_TIMING_CONFIG_SUPPORT, ar->wmi.svc_map)) { + ret = __ath10k_fetch_bb_timing_dt(ar, &bb_timing); + if (!ret) { + ret = ath10k_wmi_pdev_bb_timing(ar, &bb_timing); + if (ret) { + ath10k_warn(ar, + "failed to set bb timings: %d\n", + ret); + goto err_core_stop; + } + } + } + ar->num_started_vdevs = 0; ath10k_regd_update(ar); diff --git a/drivers/net/wireless/ath/ath10k/wmi-ops.h b/drivers/net/wireless/ath/ath10k/wmi-ops.h index 7978a77..0466307 100644 --- a/drivers/net/wireless/ath/ath10k/wmi-ops.h +++ b/drivers/net/wireless/ath/ath10k/wmi-ops.h @@ -219,6 +219,9 @@ struct wmi_ops { struct sk_buff *(*gen_echo)(struct ath10k *ar, u32 value); struct sk_buff *(*gen_pdev_get_tpc_table_cmdid)(struct ath10k *ar, u32 param); + struct sk_buff *(*gen_bb_timing) + (struct ath10k *ar, + const struct wmi_bb_timing_cfg_arg *arg); }; @@ -1576,4 +1579,21 @@ struct wmi_ops { ar->wmi.cmd->radar_found_cmdid); } +static inline int +ath10k_wmi_pdev_bb_timing(struct ath10k *ar, + const struct wmi_bb_timing_cfg_arg *arg) +{ + struct sk_buff *skb; + + if (!ar->wmi.ops->gen_bb_timing) + return -EOPNOTSUPP; + + skb = ar->wmi.ops->gen_bb_timing(ar, arg); + + if (IS_ERR(skb)) + return PTR_ERR(skb); + + return ath10k_wmi_cmd_send(ar, skb, + ar->wmi.cmd->set_bb_timing_cmdid); +} #endif diff --git a/drivers/net/wireless/ath/ath10k/wmi.c b/drivers/net/wireless/ath/ath10k/wmi.c index 659513b..a1e8695 100644 --- a/drivers/net/wireless/ath/ath10k/wmi.c +++ b/drivers/net/wireless/ath/ath10k/wmi.c @@ -539,6 +539,7 @@ WMI_10_2_PDEV_BSS_CHAN_INFO_REQUEST_CMDID, .pdev_get_tpc_table_cmdid = WMI_CMD_UNSUPPORTED, .radar_found_cmdid = WMI_CMD_UNSUPPORTED, + .set_bb_timing_cmdid = WMI_10_2_PDEV_SET_BB_TIMING_CONFIG_CMDID, }; /* 10.4 WMI cmd track */ @@ -8839,6 +8840,27 @@ static u32 ath10k_wmi_prepare_peer_qos(u8 uapsd_queues, u8 sp) return 0; } +static struct sk_buff * +ath10k_wmi_10_2_4_op_gen_bb_timing(struct ath10k *ar, + const struct wmi_bb_timing_cfg_arg *arg) +{ + struct wmi_pdev_bb_timing_cfg_cmd *cmd; + struct sk_buff *skb; + + skb = ath10k_wmi_alloc_skb(ar, sizeof(*cmd)); + if (!skb) + return ERR_PTR(-ENOMEM); + + cmd = (struct wmi_pdev_bb_timing_cfg_cmd *)skb->data; + cmd->bb_tx_timing = __cpu_to_le32(arg->bb_tx_timing); + cmd->bb_xpa_timing = __cpu_to_le32(arg->bb_xpa_timing); + + ath10k_dbg(ar, ATH10K_DBG_WMI, + "wmi pdev bb_tx_timing 0x%x bb_xpa_timing 0x%x\n", + arg->bb_tx_timing, arg->bb_xpa_timing); + return skb; +} + static const struct wmi_ops wmi_ops = { .rx = ath10k_wmi_op_rx, .map_svc = wmi_main_svc_map, @@ -9112,6 +9134,7 @@ static u32 ath10k_wmi_prepare_peer_qos(u8 uapsd_queues, u8 sp) .gen_pdev_enable_adaptive_cca = ath10k_wmi_op_gen_pdev_enable_adaptive_cca, .get_vdev_subtype = ath10k_wmi_10_2_4_op_get_vdev_subtype, + .gen_bb_timing = ath10k_wmi_10_2_4_op_gen_bb_timing, /* .gen_bcn_tmpl not implemented */ /* .gen_prb_tmpl not implemented */ /* .gen_p2p_go_bcn_ie not implemented */ diff --git a/drivers/net/wireless/ath/ath10k/wmi.h b/drivers/net/wireless/ath/ath10k/wmi.h index 58e33ab..5e18dc0 100644 --- a/drivers/net/wireless/ath/ath10k/wmi.h +++ b/drivers/net/wireless/ath/ath10k/wmi.h @@ -205,6 +205,7 @@ enum wmi_service { WMI_SERVICE_SPOOF_MAC_SUPPORT, WMI_SERVICE_TX_DATA_ACK_RSSI, WMI_SERVICE_VDEV_DIFFERENT_BEACON_INTERVAL_SUPPORT, + WMI_SERVICE_BB_TIMING_CONFIG_SUPPORT, /* keep last */ WMI_SERVICE_MAX, @@ -244,6 +245,9 @@ enum wmi_10x_service { WMI_10X_SERVICE_PEER_STATS, WMI_10X_SERVICE_RESET_CHIP, WMI_10X_SERVICE_HTT_MGMT_TX_COMP_VALID_FLAGS, + WMI_10X_SERVICE_VDEV_BCN_RATE_CONTROL, + WMI_10X_SERVICE_PER_PACKET_SW_ENCRYPT, + WMI_10X_SERVICE_BB_TIMING_CONFIG_SUPPORT, }; enum wmi_main_service { @@ -568,6 +572,8 @@ static inline void wmi_10x_svc_map(const __le32 *in, unsigned long *out, WMI_SERVICE_RESET_CHIP, len); SVCMAP(WMI_10X_SERVICE_HTT_MGMT_TX_COMP_VALID_FLAGS, WMI_SERVICE_HTT_MGMT_TX_COMP_VALID_FLAGS, len); + SVCMAP(WMI_10X_SERVICE_BB_TIMING_CONFIG_SUPPORT, + WMI_SERVICE_BB_TIMING_CONFIG_SUPPORT, len); } static inline void wmi_main_svc_map(const __le32 *in, unsigned long *out, @@ -986,6 +992,7 @@ struct wmi_cmd_map { u32 pdev_wds_entry_list_cmdid; u32 tdls_set_offchan_mode_cmdid; u32 radar_found_cmdid; + u32 set_bb_timing_cmdid; }; /* @@ -1601,6 +1608,8 @@ enum wmi_10_2_cmd_id { WMI_10_2_SET_LTEU_CONFIG_CMDID, WMI_10_2_SET_CCA_PARAMS, WMI_10_2_PDEV_BSS_CHAN_INFO_REQUEST_CMDID, + WMI_10_2_FWTEST_CMDID, + WMI_10_2_PDEV_SET_BB_TIMING_CONFIG_CMDID, WMI_10_2_PDEV_UTF_CMDID = WMI_10_2_END_CMDID - 1, }; @@ -7153,6 +7162,23 @@ struct wmi_pdev_chan_info_req_cmd { __le32 reserved; } __packed; +/* bb timing register configurations */ +struct wmi_bb_timing_cfg_arg { + /* Tx_end to pa off timing */ + u32 bb_tx_timing; + + /* Tx_end to external pa off timing */ + u32 bb_xpa_timing; +}; + +struct wmi_pdev_bb_timing_cfg_cmd { + /* Tx_end to pa off timing */ + __le32 bb_tx_timing; + + /* Tx_end to external pa off timing */ + __le32 bb_xpa_timing; +} __packed; + struct ath10k; struct ath10k_vif; struct ath10k_fw_stats_pdev;