Message ID | 1544544804-4039-3-git-send-email-bperumal@codeaurora.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ath10k: Add support to configure BB timing for external FEM | expand |
documentation still wrong. only microsemi-lx5586 is valid .all other values are invalid see patch 4 + if (!strcmp("microsemi-lx5586", fem_name)) { + bb_timing->bb_tx_timing = 0x00; + bb_timing->bb_xpa_timing = 0x0101; + } else { + return -ENOENT; + } Am 11.12.2018 um 17:13 schrieb Bhagavathi Perumal S: > 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 <bperumal@codeaurora.org> > --- > 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: <phandle> > 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"; > }; > }; > };
On 2018-12-12 10:00, Bhagavathi Perumal S wrote: > -----Original Message----- > From: ath10k <ath10k-bounces@lists.infradead.org> On Behalf Of > Sebastian Gottschall > Sent: Wednesday, December 12, 2018 1:38 AM > To: ath10k@lists.infradead.org > Subject: [EXTERNAL] Re: [PATCH v4 2/3] dt-bindings: net: ath10k: add > new dt entry to identify external FEM > > documentation still wrong. only microsemi-lx5586 is valid .all other > values are invalid see patch 4 > > + if (!strcmp("microsemi-lx5586", fem_name)) { > + bb_timing->bb_tx_timing = 0x00; > + bb_timing->bb_xpa_timing = 0x0101; > + } else { > + return -ENOENT; > + } > Thanks, Missed it. Need to allow other FEM devices to use default values with warning message. Will change it. > Am 11.12.2018 um 17:13 schrieb Bhagavathi Perumal S: >> 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 <bperumal@codeaurora.org> >> --- >> 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: <phandle> >> 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"; >> }; >> }; >> }; > > _______________________________________________ > ath10k mailing list > ath10k@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/ath10k
On 2018-12-12 10:10, Bhagavathi Perumal S wrote: > On 2018-12-12 10:00, Bhagavathi Perumal S wrote: >> -----Original Message----- >> From: ath10k <ath10k-bounces@lists.infradead.org> On Behalf Of >> Sebastian Gottschall >> Sent: Wednesday, December 12, 2018 1:38 AM >> To: ath10k@lists.infradead.org >> Subject: [EXTERNAL] Re: [PATCH v4 2/3] dt-bindings: net: ath10k: add >> new dt entry to identify external FEM >> >> documentation still wrong. only microsemi-lx5586 is valid .all other >> values are invalid see patch 4 >> >> + if (!strcmp("microsemi-lx5586", fem_name)) { >> + bb_timing->bb_tx_timing = 0x00; >> + bb_timing->bb_xpa_timing = 0x0101; >> + } else { >> + return -ENOENT; >> + } >> > > Thanks, Missed it. Need to allow other FEM devices to use default > values with warning message. Will change it. Please ignore my previous email statement above. The return failure is ignored and it allows other fems to use default timing settings. Quote the PATCH 3/3: + 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; + } + } > >> Am 11.12.2018 um 17:13 schrieb Bhagavathi Perumal S: >>> 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 <bperumal@codeaurora.org> >>> --- >>> 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: <phandle> >>> 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"; >>> }; >>> }; >>> }; >> >> _______________________________________________ >> ath10k mailing list >> ath10k@lists.infradead.org >> http://lists.infradead.org/mailman/listinfo/ath10k
Sebastian Gottschall <s.gottschall@newmedia-net.de> writes: > documentation still wrong. only microsemi-lx5586 is valid .all other > values are invalid > see patch 4 > > + if (!strcmp("microsemi-lx5586", fem_name)) { > + bb_timing->bb_tx_timing = 0x00; > + bb_timing->bb_xpa_timing = 0x0101; > + } else { > + return -ENOENT; > + } Please don't top post, makes the discussion difficult. But anyway, to my knowledge the device tree is supposed to describe hardware and not software implementation. So I don't see a problem that device tree documents FEMs for which ath10k does not do anything right now.
On Tue, Dec 11, 2018 at 09:43:23PM +0530, Bhagavathi Perumal S wrote: > 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 <bperumal@codeaurora.org> > --- > Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) Please add acks/reviewed-bys when posting new versions.
Rob Herring <robh@kernel.org> writes: > On Tue, Dec 11, 2018 at 09:43:23PM +0530, Bhagavathi Perumal S wrote: >> 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 <bperumal@codeaurora.org> >> --- >> Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt | 9 ++++++++- >> 1 file changed, 8 insertions(+), 1 deletion(-) > > Please add acks/reviewed-bys when posting new versions. I added your reviewed-by from v3 in the pending branch: https://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git/commit/?h=pending&id=2f4f5a81c87b9be68aa087c238e2f2b9debbfa1b
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: <phandle> 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"; }; }; };
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 <bperumal@codeaurora.org> --- Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)