arm64: dts: qcom: x1e80100-dell-xps-9345: Add WiFi/BT pwrseq

Add the WiFi/BT nodes for XPS and describe the regulators for the WCN7850
combo chip using the new power sequencing bindings. All voltages are
derived from chained fixed regulators controlled using a single GPIO.

Based on the commit d09ab685a8 ("arm64: dts: qcom: x1e80100-qcp: Add
WiFi/BT pwrseq").

Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Signed-off-by: Aleksandrs Vinarskis <alex.vinarskis@gmail.com>
Tested-by: Laurentiu Tudor <laurentiu.tudor1@dell.com>
Link: https://lore.kernel.org/r/20250331204610.526672-2-alex.vinarskis@gmail.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
Aleksandrs Vinarskis 2025-03-31 21:43:44 +01:00 committed by Bjorn Andersson
parent 49b1c8df67
commit 642b55ce06

View File

@ -22,6 +22,7 @@ / {
aliases {
serial0 = &uart21;
serial1 = &uart14;
};
gpio-keys {
@ -288,6 +289,101 @@ vreg_vph_pwr: regulator-vph-pwr {
regulator-always-on;
regulator-boot-on;
};
vreg_wcn_0p95: regulator-wcn-0p95 {
compatible = "regulator-fixed";
regulator-name = "VREG_WCN_0P95";
regulator-min-microvolt = <950000>;
regulator-max-microvolt = <950000>;
vin-supply = <&vreg_wcn_3p3>;
};
vreg_wcn_1p9: regulator-wcn-1p9 {
compatible = "regulator-fixed";
regulator-name = "VREG_WCN_1P9";
regulator-min-microvolt = <1900000>;
regulator-max-microvolt = <1900000>;
vin-supply = <&vreg_wcn_3p3>;
};
vreg_wcn_3p3: regulator-wcn-3p3 {
compatible = "regulator-fixed";
regulator-name = "VREG_WCN_3P3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&tlmm 214 GPIO_ACTIVE_HIGH>;
enable-active-high;
pinctrl-0 = <&wcn_sw_en>;
pinctrl-names = "default";
regulator-boot-on;
};
wcn7850-pmu {
compatible = "qcom,wcn7850-pmu";
vdd-supply = <&vreg_wcn_0p95>;
vddio-supply = <&vreg_l15b_1p8>;
vddaon-supply = <&vreg_wcn_0p95>;
vdddig-supply = <&vreg_wcn_0p95>;
vddrfa1p2-supply = <&vreg_wcn_1p9>;
vddrfa1p8-supply = <&vreg_wcn_1p9>;
wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>;
bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>;
pinctrl-0 = <&wcn_wlan_bt_en>;
pinctrl-names = "default";
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_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 {
@ -861,6 +957,23 @@ &pcie4_phy {
status = "okay";
};
&pcie4_port0 {
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>;
};
};
&pcie6a {
perst-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>;
wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>;
@ -1123,6 +1236,37 @@ reset-n-pins {
drive-strength = <2>;
};
};
wcn_sw_en: wcn-sw-en-state {
pins = "gpio214";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
wcn_wlan_bt_en: wcn-wlan-bt-en-state {
pins = "gpio116", "gpio117";
function = "gpio";
drive-strength = <2>;
bias-disable;
};
};
&uart14 {
status = "okay";
bluetooth {
compatible = "qcom,wcn7850-bt";
max-speed = <3200000>;
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>;
};
};
&uart21 {