[PATCH RFC v3 4/5] arm64: dts: qcom: nord-ride-embedded: Add WCN7850 WLAN support
From: Shawn Guo
Date: Tue Oct 20 2026 - 22:31:52 EST
From: "Yu Zhang(Yuriy)" <yu.zhang@xxxxxxxxxxxxxxxx>
The Nord Ride Embedded board carries a QCA6797AQ (WCN7850) LGA module on
a connectivity adapter card hanging off PCIe2. Two PMIC GPIOs gate the
module supplies: PWR_CORE (pmau0102_e GPIO6) enables the DBU_CORE_VL,
DBU_CORE_VM and DBU_CORE_VH regulators feeding VDD_CORE_VL/VM/VH, and
PWR_CTRL1 (pmau0102_e GPIO8) enables DBU4, which produces the 3.3 V rail.
PWR_CTRL2 drives DBU3, which is not populated, so it is left alone.
Describe those rails, the WCN7850 PMU that derives the chip supplies from
them, and the PCIe endpoint node consuming the PMU outputs.
Signed-off-by: Yu Zhang (Yuriy) <yu.zhang@xxxxxxxxxxxxxxxx>
Reviewed-by: Abel Vesa <abel.vesa@xxxxxxxxxxxxxxxx>
Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxxxx>
Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxxxxxxxx>
Signed-off-by: Shawn Guo <shengchao.guo@xxxxxxxxxxxxxxxx>
---
.../boot/dts/qcom/nord-ride-embedded.dts | 111 ++++++++++++++++++
1 file changed, 111 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/nord-ride-embedded.dts b/arch/arm64/boot/dts/qcom/nord-ride-embedded.dts
index fcc07226db8b..916f583b882a 100644
--- a/arch/arm64/boot/dts/qcom/nord-ride-embedded.dts
+++ b/arch/arm64/boot/dts/qcom/nord-ride-embedded.dts
@@ -53,6 +53,102 @@ bi_tcxo_ao_div2: bi-tcxo-ao-div2-clk {
clock-div = <2>;
};
};
+
+ vreg_wcn_3p3: regulator-wcn-3p3 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_wcn_3p3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ gpio = <&pmau0102_e_gpios 8 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ vreg_wcn_1p9: regulator-wcn-1p9 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_wcn_1p9";
+ regulator-min-microvolt = <1900000>;
+ regulator-max-microvolt = <1900000>;
+ gpio = <&pmau0102_e_gpios 7 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ vreg_wcn_core_vl_0p95: regulator-wcn-core-vl-0p95 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_wcn_core_vl_0p95";
+ regulator-min-microvolt = <950000>;
+ regulator-max-microvolt = <950000>;
+ gpio = <&pmau0102_e_gpios 6 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ vreg_wcn_core_vm_1p35: regulator-wcn-core-vm-1p35 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_wcn_core_vm_1p35";
+ regulator-min-microvolt = <1350000>;
+ regulator-max-microvolt = <1350000>;
+ gpio = <&pmau0102_e_gpios 6 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ vreg_wcn_core_vh_1p95: regulator-wcn-core-vh-1p95 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_wcn_core_vh_1p95";
+ regulator-min-microvolt = <1950000>;
+ regulator-max-microvolt = <1950000>;
+ gpio = <&pmau0102_e_gpios 6 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ wcn7850-pmu {
+ compatible = "qcom,wcn7850-pmu";
+
+ wlan-enable-gpios = <&pmau0102_e_gpios 10 GPIO_ACTIVE_HIGH>;
+
+ vdd-supply = <&vreg_wcn_3p3>;
+ vddio-supply = <&vreg_s3a_1p8>;
+ vddaon-supply = <&vreg_wcn_core_vl_0p95>;
+ vdddig-supply = <&vreg_wcn_1p9>;
+ vddrfa1p2-supply = <&vreg_wcn_core_vm_1p35>;
+ vddrfa1p8-supply = <&vreg_wcn_core_vh_1p95>;
+
+ 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_rfa_0p8: ldo5 {
+ regulator-name = "vreg_pmu_rfa_0p8";
+ };
+
+ vreg_pmu_rfa_1p2: ldo6 {
+ regulator-name = "vreg_pmu_rfa_1p2";
+ };
+
+ vreg_pmu_rfa_1p8: ldo7 {
+ regulator-name = "vreg_pmu_rfa_1p8";
+ };
+
+ vreg_pmu_pcie_0p9: ldo8 {
+ regulator-name = "vreg_pmu_pcie_0p9";
+ };
+
+ vreg_pmu_pcie_1p8: ldo9 {
+ regulator-name = "vreg_pmu_pcie_1p8";
+ };
+ };
+ };
};
&apps_rsc {
@@ -404,6 +500,21 @@ &pcie2 {
&pcie2_port0 {
reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
wake-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
+
+ wifi@0 {
+ compatible = "pci17cb,1107";
+ reg = <0x10000 0x0 0x0 0x0 0x0>;
+
+ vddaon-supply = <&vreg_pmu_aon_0p59>;
+ vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
+ vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
+ vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
+ vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
+ vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
+ vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
+ vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
+ vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
+ };
};
&pcie3 {
--
2.43.0