arm64: dts: qcom: x1e80100-romulus: Add WCN7850 Wi-Fi/BT
It comes soldered onboard, just like on the QCP. Unfortunately, the rfkill pin is triggered by default, so a workaround is needed to convince the Linux driver to enable the hw, after which it works just fine. Signed-off-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250909-topic-romulus_wifi_pci-v2-1-3dc495d5559f@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
committed by
Bjorn Andersson
parent
9a45e985d4
commit
fc80895354
@@ -331,6 +331,42 @@
|
||||
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;
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "qcom,x1e80100-sndcard";
|
||||
model = "X1E80100-Romulus";
|
||||
@@ -410,6 +446,65 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
wcn7850-pmu {
|
||||
compatible = "qcom,wcn7850-pmu";
|
||||
|
||||
vdd-supply = <&vreg_wcn_0p95>;
|
||||
vddio-supply = <&vreg_l15b>;
|
||||
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 {
|
||||
@@ -1028,6 +1123,23 @@
|
||||
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>;
|
||||
@@ -1234,6 +1346,13 @@
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
wcn_wlan_bt_en: wcn-wlan-bt-en-state {
|
||||
pins = "gpio116", "gpio117";
|
||||
function = "gpio";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
pcie3_default: pcie3-default-state {
|
||||
perst-n-pins {
|
||||
pins = "gpio143";
|
||||
@@ -1309,6 +1428,13 @@
|
||||
output-low;
|
||||
};
|
||||
|
||||
wcn_sw_en: wcn-sw-en-state {
|
||||
pins = "gpio214";
|
||||
function = "gpio";
|
||||
drive-strength = <2>;
|
||||
bias-disable;
|
||||
};
|
||||
|
||||
cam_indicator_en: cam-indicator-en-state {
|
||||
pins = "gpio225";
|
||||
function = "gpio";
|
||||
@@ -1332,6 +1458,23 @@
|
||||
};
|
||||
};
|
||||
|
||||
&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>;
|
||||
};
|
||||
};
|
||||
|
||||
&usb_1_ss0_hsphy {
|
||||
vdd-supply = <&vreg_l3j>;
|
||||
vdda12-supply = <&vreg_l2j>;
|
||||
|
||||
Reference in New Issue
Block a user