Enable WLAN on qcs8300-ride by adding a node for the PMU module
of the WCN6855 and assigning its LDO power outputs to the existing
WiFi module.
Signed-off-by: Stone Zhang <quic_stonez@quicinc.com>
---
arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 108 ++++++++++++++++++++++
1 file changed, 108 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
index 662a6baa9f8e..f5d5f7f0b43d 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
+++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
@@ -22,6 +22,88 @@ aliases {
chosen {
stdout-path = "serial0:115200n8";
};
+
+ vreg_conn_1p8: vreg-conn-1p8 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_conn_1p8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ startup-delay-us = <4000>;
+ enable-active-high;
+ gpio = <&pmm8650au_1_gpios 4 GPIO_ACTIVE_HIGH>;
+ };
+
+ vreg_conn_pa: vreg-conn-pa {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_conn_pa";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ startup-delay-us = <4000>;
+ enable-active-high;
+ gpio = <&pmm8650au_1_gpios 6 GPIO_ACTIVE_HIGH>;
+ };
+
+ wcn6855-pmu {
+ compatible = "qcom,wcn6855-pmu";
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&wlan_en_state>;
+
+ vddio-supply = <&vreg_conn_pa>;
+ vddaon-supply = <&vreg_conn_1p8>;
+ vddpmu-supply = <&vreg_conn_pa>;
+ vddpmumx-supply = <&vreg_conn_1p8>;
+ vddpmucx-supply = <&vreg_conn_pa>;
+ vddrfa0p95-supply = <&vreg_conn_1p8>;
+ vddrfa1p3-supply = <&vreg_conn_pa>;
+ vddrfa1p9-supply = <&vreg_conn_1p8>;
+ vddpcie1p3-supply = <&vreg_conn_pa>;
+ vddpcie1p9-supply = <&vreg_conn_1p8>;
+
+ wlan-enable-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>;
+
+ regulators {
+ vreg_pmu_rfa_cmn: ldo0 {
+ regulator-name = "vreg_pmu_rfa_cmn";
+ };
+
+ vreg_pmu_aon_0p59: ldo1 {
+ regulator-name = "vreg_pmu_aon_0p59";
+ };
+
+ vreg_pmu_wlcx_0p8: ldo2 {
+ regulator-name = "vreg_pmu_wlcx_0p8";
+ };
+
+ vreg_pmu_wlmx_0p85: ldo3 {
+ regulator-name = "vreg_pmu_wlmx_0p85";
+ };
+
+ vreg_pmu_btcmx_0p85: ldo4 {
+ regulator-name = "vreg_pmu_btcmx_0p85";
+ };
+
+ vreg_pmu_rfa_0p8: ldo5 {
+ regulator-name = "vreg_pmu_rfa_0p8";
+ };
+
+ vreg_pmu_rfa_1p2: ldo6 {
+ regulator-name = "vreg_pmu_rfa_1p2";
+ };
+
+ vreg_pmu_rfa_1p7: ldo7 {
+ regulator-name = "vreg_pmu_rfa_1p7";
+ };
+
+ vreg_pmu_pcie_0p9: ldo8 {
+ regulator-name = "vreg_pmu_pcie_0p9";
+ };
+
+ vreg_pmu_pcie_1p8: ldo9 {
+ regulator-name = "vreg_pmu_pcie_1p8";
+ };
+ };
+ };
};
&apps_rsc {
@@ -320,6 +402,25 @@ &pcie1_phy {
status = "okay";
};
+&pcieport0 {
+ wifi@0 {
+ compatible = "pci17cb,1103";
+ reg = <0x10000 0x0 0x0 0x0 0x0>;
+
+ qcom,ath11k-calibration-variant = "QC_QCS8300_Ride";
+
+ vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
+ vddaon-supply = <&vreg_pmu_aon_0p59>;
+ vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
+ vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
+ vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
+ vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
+ vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
+ vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
+ vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
+ };
+};
+
&qupv3_id_0 {
status = "okay";
};
@@ -406,6 +507,13 @@ ethernet0_mdio: ethernet0-mdio-pins {
bias-pull-up;
};
};
+
+ wlan_en_state: wlan-en-state {
+ pins = "gpio54";
+ function = "gpio";
+ output-low;
+ bias-pull-up;
+ };
};
&uart7 {
--
2.34.1
On Tue, Mar 18, 2025 at 05:33:50PM +0800, Stone Zhang wrote:
> Enable WLAN on qcs8300-ride by adding a node for the PMU module
> of the WCN6855 and assigning its LDO power outputs to the existing
> WiFi module.
>
> Signed-off-by: Stone Zhang <quic_stonez@quicinc.com>
> ---
> arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 108 ++++++++++++++++++++++
> 1 file changed, 108 insertions(+)
>
> @@ -320,6 +402,25 @@ &pcie1_phy {
> status = "okay";
> };
>
> +&pcieport0 {
> + wifi@0 {
> + compatible = "pci17cb,1103";
> + reg = <0x10000 0x0 0x0 0x0 0x0>;
> +
> + qcom,ath11k-calibration-variant = "QC_QCS8300_Ride";
Almost missed it. What is your baseline? Krzysztof has sent his
qcom,calibration-variant patches [1] in February. Bjorn has picked them
up on March 4th.
This needs to be rebased on top of [1].
[1] https://lore.kernel.org/linux-arm-msm/20250225-dts-qcom-wifi-calibration-v1-0-347e9c72dcfc@linaro.org/
> +
> + vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
> + vddaon-supply = <&vreg_pmu_aon_0p59>;
> + vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
> + vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
> + vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
> + vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
> + vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
> + vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
> + vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
> + };
> +};
> +
> &qupv3_id_0 {
> status = "okay";
> };
--
With best wishes
Dmitry
On 3/19/2025 6:13 PM, Dmitry Baryshkov wrote:
> On Tue, Mar 18, 2025 at 05:33:50PM +0800, Stone Zhang wrote:
>> Enable WLAN on qcs8300-ride by adding a node for the PMU module
>> of the WCN6855 and assigning its LDO power outputs to the existing
>> WiFi module.
>>
>> Signed-off-by: Stone Zhang <quic_stonez@quicinc.com>
>> ---
>> arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 108 ++++++++++++++++++++++
>> 1 file changed, 108 insertions(+)
>>
>> @@ -320,6 +402,25 @@ &pcie1_phy {
>> status = "okay";
>> };
>>
>> +&pcieport0 {
>> + wifi@0 {
>> + compatible = "pci17cb,1103";
>> + reg = <0x10000 0x0 0x0 0x0 0x0>;
>> +
>> + qcom,ath11k-calibration-variant = "QC_QCS8300_Ride";
>
> Almost missed it. What is your baseline? Krzysztof has sent his
> qcom,calibration-variant patches [1] in February. Bjorn has picked them
> up on March 4th.
>
> This needs to be rebased on top of [1].
Understood.
>
> [1] https://lore.kernel.org/linux-arm-msm/20250225-dts-qcom-wifi-calibration-v1-0-347e9c72dcfc@linaro.org/
>
>> +
>> + vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
>> + vddaon-supply = <&vreg_pmu_aon_0p59>;
>> + vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
>> + vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
>> + vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
>> + vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
>> + vddrfa1p8-supply = <&vreg_pmu_rfa_1p7>;
>> + vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
>> + vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
>> + };
>> +};
>> +
>> &qupv3_id_0 {
>> status = "okay";
>> };
On 3/18/25 10:33 AM, Stone Zhang wrote: > Enable WLAN on qcs8300-ride by adding a node for the PMU module > of the WCN6855 and assigning its LDO power outputs to the existing > WiFi module. > > Signed-off-by: Stone Zhang <quic_stonez@quicinc.com> > --- This change looks good generally, but please align the various stylistic things, like property order in the nodes you add with x1e80100-crd.dtsi I also see that board-2.bin doesn't contain the variant string you've suggested ([1] @ commit 646e008ec53a8bb9ae16ebf98a65b29eaefd6da4) Konrad [1] https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware/-/blob/main/WCN6855/hw2.0/board-2.bin?ref_type=heads
On 3/18/2025 11:54 PM, Konrad Dybcio wrote: > On 3/18/25 10:33 AM, Stone Zhang wrote: >> Enable WLAN on qcs8300-ride by adding a node for the PMU module >> of the WCN6855 and assigning its LDO power outputs to the existing >> WiFi module. >> >> Signed-off-by: Stone Zhang <quic_stonez@quicinc.com> >> --- > > This change looks good generally, but please align the various stylistic > things, like property order in the nodes you add with x1e80100-crd.dtsi > > I also see that board-2.bin doesn't contain the variant string you've > suggested ([1] @ commit 646e008ec53a8bb9ae16ebf98a65b29eaefd6da4) for qcs8300-ride platform, WLAN uses borad-2.bin from link: https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware/-/blob/main/QCA6698AQ/hw2.1/board-2.bin?ref_type=heads > > Konrad > > [1] https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware/-/blob/main/WCN6855/hw2.0/board-2.bin?ref_type=heads
On Wed, Mar 19, 2025 at 12:21:25PM +0800, Stone Zhang wrote: > > > On 3/18/2025 11:54 PM, Konrad Dybcio wrote: > > On 3/18/25 10:33 AM, Stone Zhang wrote: > > > Enable WLAN on qcs8300-ride by adding a node for the PMU module > > > of the WCN6855 and assigning its LDO power outputs to the existing > > > WiFi module. > > > > > > Signed-off-by: Stone Zhang <quic_stonez@quicinc.com> > > > --- > > > > This change looks good generally, but please align the various stylistic > > things, like property order in the nodes you add with x1e80100-crd.dtsi > > > > I also see that board-2.bin doesn't contain the variant string you've > > suggested ([1] @ commit 646e008ec53a8bb9ae16ebf98a65b29eaefd6da4) > for qcs8300-ride platform, WLAN uses borad-2.bin from link: This phrase doesn't make sense. The board uses nothing. Users / developers build images to be installed on the board. Please use linux-firmware instead of using staging firmware repositories from CLO. This matches expectations of other users. > https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware/-/blob/main/QCA6698AQ/hw2.1/board-2.bin?ref_type=heads Please add a note to the commit message mentioning that the board uses QCA6698AQ instead of WCN6855 (as Konrad and I have thought). Corresponding BDF files were added in 20250211 release. > > > > > Konrad > > > > [1] https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware/-/blob/main/WCN6855/hw2.0/board-2.bin?ref_type=heads > -- With best wishes Dmitry
On Tue, Mar 18, 2025 at 04:54:25PM +0100, Konrad Dybcio wrote: > On 3/18/25 10:33 AM, Stone Zhang wrote: > > Enable WLAN on qcs8300-ride by adding a node for the PMU module > > of the WCN6855 and assigning its LDO power outputs to the existing > > WiFi module. > > > > Signed-off-by: Stone Zhang <quic_stonez@quicinc.com> > > --- > > This change looks good generally, but please align the various stylistic > things, like property order in the nodes you add with x1e80100-crd.dtsi > > I also see that board-2.bin doesn't contain the variant string you've > suggested ([1] @ commit 646e008ec53a8bb9ae16ebf98a65b29eaefd6da4) Yes. Please at least send it to the ath11k list as documented at [2] > > Konrad > > [1] https://git.codelinaro.org/clo/ath-firmware/ath11k-firmware/-/blob/main/WCN6855/hw2.0/board-2.bin?ref_type=heads [2] https://wireless.docs.kernel.org/en/latest/en/users/drivers/ath10k/boardfiles.html -- With best wishes Dmitry
© 2016 - 2025 Red Hat, Inc.