Message ID | 20250331073423.3184322-2-alex.vinarskis@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | arm64: dts: qcom: x1e80100-dell-xps-9345: Add WiFi/BT pwrseq | expand |
[ +CC: Stephan ] On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > WiFi/BT pwrseq"). Are you sure this is correct and that you don't need to worry about the "how do we model the supplies to an M.2 card" issue? See https://lore.kernel.org/lkml/Z-KuG0aOwEnxuhp9@linaro.org/ > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > X1-based Dell XPS 13 9345") Not sure what happened here. Johan
On 31/03/2025 08:33, Aleksandrs Vinarskis wrote: > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > WiFi/BT pwrseq"). > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > X1-based Dell XPS 13 9345") > > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> > Signed-off-by: Aleksandrs Vinarskis <alex.vinarskis@gmail.com> > --- > .../dts/qcom/x1e80100-dell-xps13-9345.dts | 144 ++++++++++++++++++ > 1 file changed, 144 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > index d259a0d12d7b..c924f2a67939 100644 > --- a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > +++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > @@ -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>; > @@ -1127,6 +1240,37 @@ reset-n-pins { > drive-strength = <2>; > }; > }; > + > + wcn_wlan_bt_en: wcn-wlan-bt-en-state { > + pins = "gpio116", "gpio117"; > + function = "gpio"; > + drive-strength = <2>; > + bias-disable; > + }; > + > + wcn_sw_en: wcn-sw-en-state { > + pins = "gpio214"; > + function = "gpio"; > + drive-strength = <2>; > + bias-disable; > + }; wcn_sw should come before wcn_wlan > +}; > + > +&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>; > + }; > }; Other than that this looks fine and is equivalent to what I have on Insprion14p - with the exception I see that I don't have the 3v3 rail, which I probably should. https://git.codelinaro.org/bryan.odonoghue/kernel/-/blob/x1e80100-6.14-rc6-dell-xps-inspirion14-lenovo-slim7x-t14s-camss-sound-wip/arch/arm64/boot/dts/qcom/x1e80100-dell-inspirion-14-plus-7441.dts?ref_type=heads Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> --- bod
On Mon, 31 Mar 2025 at 10:09, Johan Hovold <johan@kernel.org> wrote: > > [ +CC: Stephan ] > > On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > WiFi/BT pwrseq"). > > Are you sure this is correct and that you don't need to worry about the > "how do we model the supplies to an M.2 card" issue? > > See > > https://lore.kernel.org/lkml/Z-KuG0aOwEnxuhp9@linaro.org/ Dell XPS 9345 does not have an M.2 card, WLAN package is soldered directly onboard, hence I am quite sure this is similar to QCP. To be certain, perhaps @Tudor, Laurentiu or @Bryan O'Donoghue (if you have it?) could confirm from schematics? > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > X1-based Dell XPS 13 9345") > > Not sure what happened here. Bluetooth and WLAN definitions were missing, as at the time I only knew the UART port being used for bluetooth, and was missing everything else to describe it. Alex > > Johan
On Mon, 31 Mar 2025 at 10:33, Bryan O'Donoghue <bryan.odonoghue@linaro.org> wrote: > > On 31/03/2025 08:33, Aleksandrs Vinarskis wrote: > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > WiFi/BT pwrseq"). > > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > X1-based Dell XPS 13 9345") > > > > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> > > Signed-off-by: Aleksandrs Vinarskis <alex.vinarskis@gmail.com> > > --- > > .../dts/qcom/x1e80100-dell-xps13-9345.dts | 144 ++++++++++++++++++ > > 1 file changed, 144 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > > index d259a0d12d7b..c924f2a67939 100644 > > --- a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > > +++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > > @@ -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>; > > @@ -1127,6 +1240,37 @@ reset-n-pins { > > drive-strength = <2>; > > }; > > }; > > + > > + wcn_wlan_bt_en: wcn-wlan-bt-en-state { > > + pins = "gpio116", "gpio117"; > > + function = "gpio"; > > + drive-strength = <2>; > > + bias-disable; > > + }; > > + > > + wcn_sw_en: wcn-sw-en-state { > > + pins = "gpio214"; > > + function = "gpio"; > > + drive-strength = <2>; > > + bias-disable; > > + }; > > wcn_sw should come before wcn_wlan Indeed, will fix. > > > +}; > > + > > +&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>; > > + }; > > }; > > Other than that this looks fine and is equivalent to what I have on > Insprion14p - with the exception I see that I don't have the 3v3 rail, > which I probably should. > > https://git.codelinaro.org/bryan.odonoghue/kernel/-/blob/x1e80100-6.14-rc6-dell-xps-inspirion14-lenovo-slim7x-t14s-camss-sound-wip/arch/arm64/boot/dts/qcom/x1e80100-dell-inspirion-14-plus-7441.dts?ref_type=heads > > Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org> Thanks, Alex > > --- > bod
On Mon, Mar 31, 2025 at 11:38:25AM +0200, Aleksandrs Vinarskis wrote: > On Mon, 31 Mar 2025 at 10:09, Johan Hovold <johan@kernel.org> wrote: > > > > [ +CC: Stephan ] > > > > On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > > WiFi/BT pwrseq"). > > > > Are you sure this is correct and that you don't need to worry about the > > "how do we model the supplies to an M.2 card" issue? > > > > See > > > > https://lore.kernel.org/lkml/Z-KuG0aOwEnxuhp9@linaro.org/ > > Dell XPS 9345 does not have an M.2 card, WLAN package is soldered > directly onboard, hence I am quite sure this is similar to QCP. > To be certain, perhaps @Tudor, Laurentiu or @Bryan O'Donoghue (if you > have it?) could confirm from schematics? I checked now, it seems you are correct. Highly annoying that we need all this guess-work boiler plate (about chip internal details) for what is effectively just two supplies. Hopefully we can drop that again going forward, but that's a separate discussion. > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > > X1-based Dell XPS 13 9345") > > > > Not sure what happened here. > > Bluetooth and WLAN definitions were missing, as at the time I only > knew the UART port being used for bluetooth, and was missing > everything else to describe it. Ah, ok. The above sentence looked like some left-over copy paste. I guess you don't need to mention it at all since this does not seem to warrant a proper Fixes tag. Johan
> -----Original Message----- > From: Aleksandrs Vinarskis <alex.vinarskis@gmail.com> > Sent: Monday, March 31, 2025 10:34 AM > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > WiFi/BT pwrseq"). > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for X1- > based Dell XPS 13 9345") > > 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> Thanks for taking care of this, Alex! --- Best Regards, Laurentiu > --- > .../dts/qcom/x1e80100-dell-xps13-9345.dts | 144 ++++++++++++++++++ > 1 file changed, 144 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > index d259a0d12d7b..c924f2a67939 100644 > --- a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > +++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts > @@ -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>; @@ -1127,6 > +1240,37 @@ reset-n-pins { > drive-strength = <2>; > }; > }; > + > + wcn_wlan_bt_en: wcn-wlan-bt-en-state { > + pins = "gpio116", "gpio117"; > + function = "gpio"; > + drive-strength = <2>; > + bias-disable; > + }; > + > + wcn_sw_en: wcn-sw-en-state { > + pins = "gpio214"; > + 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 { > -- > 2.45.2
On Mon, 31 Mar 2025 at 13:00, Johan Hovold <johan@kernel.org> wrote: > > On Mon, Mar 31, 2025 at 11:38:25AM +0200, Aleksandrs Vinarskis wrote: > > On Mon, 31 Mar 2025 at 10:09, Johan Hovold <johan@kernel.org> wrote: > > > > > > [ +CC: Stephan ] > > > > > > On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > > > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > > > WiFi/BT pwrseq"). > > > > > > Are you sure this is correct and that you don't need to worry about the > > > "how do we model the supplies to an M.2 card" issue? > > > > > > See > > > > > > https://lore.kernel.org/lkml/Z-KuG0aOwEnxuhp9@linaro.org/ > > > > Dell XPS 9345 does not have an M.2 card, WLAN package is soldered > > directly onboard, hence I am quite sure this is similar to QCP. > > To be certain, perhaps @Tudor, Laurentiu or @Bryan O'Donoghue (if you > > have it?) could confirm from schematics? > > I checked now, it seems you are correct.\ Ah perfect, thanks. > > Highly annoying that we need all this guess-work boiler plate (about > chip internal details) for what is effectively just two supplies. > > Hopefully we can drop that again going forward, but that's a separate > discussion. > > > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > > > X1-based Dell XPS 13 9345") > > > > > > Not sure what happened here. > > > > Bluetooth and WLAN definitions were missing, as at the time I only > > knew the UART port being used for bluetooth, and was missing > > everything else to describe it. > > Ah, ok. The above sentence looked like some left-over copy paste. I > guess you don't need to mention it at all since this does not seem to > warrant a proper Fixes tag. It was a suggestion from Dmitry in v1. Though indeed it does not warrant a proper Fixed tag, as it is something that was left out from the initial series, I think it's fine to keep it like this, if it's okay with you? Regards, Alex > > Johan
On Mon, Mar 31, 2025 at 06:51:03PM +0200, Aleksandrs Vinarskis wrote: > On Mon, 31 Mar 2025 at 13:00, Johan Hovold <johan@kernel.org> wrote: > > On Mon, Mar 31, 2025 at 11:38:25AM +0200, Aleksandrs Vinarskis wrote: > > > On Mon, 31 Mar 2025 at 10:09, Johan Hovold <johan@kernel.org> wrote: > > > > On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > > > > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > > > > WiFi/BT pwrseq"). > > > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > > > > X1-based Dell XPS 13 9345") > > > > > > > > Not sure what happened here. > > > > > > Bluetooth and WLAN definitions were missing, as at the time I only > > > knew the UART port being used for bluetooth, and was missing > > > everything else to describe it. > > > > Ah, ok. The above sentence looked like some left-over copy paste. I > > guess you don't need to mention it at all since this does not seem to > > warrant a proper Fixes tag. > > It was a suggestion from Dmitry in v1. Though indeed it does not > warrant a proper Fixed tag, as it is something that was left out from > the initial series, I think it's fine to keep it like this, if it's > okay with you? I think you misinterpreted Dmitry here. He just said that after you added the reference to the commit you based this on to the commit message you could add his reviewed-by tag ("With that fixed: R-B: Dmitry ...") https://lore.kernel.org/all/ou7w4hvbbz72nzrm45gfhpq2uzkuwpfudqeh2o34tcnbnazxgz@glmuryu5dh3s/ As it stands it's hard to understand what that sentence means and why it is there (looks like a copy paste mistake). I suggest you just drop it. Johan
On Mon, Mar 31, 2025 at 09:06:37PM +0200, Johan Hovold wrote: > On Mon, Mar 31, 2025 at 06:51:03PM +0200, Aleksandrs Vinarskis wrote: > > On Mon, 31 Mar 2025 at 13:00, Johan Hovold <johan@kernel.org> wrote: > > > On Mon, Mar 31, 2025 at 11:38:25AM +0200, Aleksandrs Vinarskis wrote: > > > > On Mon, 31 Mar 2025 at 10:09, Johan Hovold <johan@kernel.org> wrote: > > > > > On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > > > > > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > > > > > WiFi/BT pwrseq"). > > > > > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > > > > > X1-based Dell XPS 13 9345") > > > > > > > > > > Not sure what happened here. > > > > > > > > Bluetooth and WLAN definitions were missing, as at the time I only > > > > knew the UART port being used for bluetooth, and was missing > > > > everything else to describe it. > > > > > > Ah, ok. The above sentence looked like some left-over copy paste. I > > > guess you don't need to mention it at all since this does not seem to > > > warrant a proper Fixes tag. > > > > It was a suggestion from Dmitry in v1. Though indeed it does not > > warrant a proper Fixed tag, as it is something that was left out from > > the initial series, I think it's fine to keep it like this, if it's > > okay with you? > > I think you misinterpreted Dmitry here. He just said that after you > added the reference to the commit you based this on to the commit > message you could add his reviewed-by tag ("With that fixed: R-B: Dmitry > ...") > > https://lore.kernel.org/all/ou7w4hvbbz72nzrm45gfhpq2uzkuwpfudqeh2o34tcnbnazxgz@glmuryu5dh3s/ > > As it stands it's hard to understand what that sentence means and why > it is there (looks like a copy paste mistake). I suggest you just drop > it. I disliked the original phrase "Derived from: commit subject". Instead I suggested a different, more standard way, '... commit abcdefabcdef ("commit subject")'. With that phrase in place Aleksandrs can add my R-B tag.
On Mon, 31 Mar 2025 at 22:15, Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> wrote: > > On Mon, Mar 31, 2025 at 09:06:37PM +0200, Johan Hovold wrote: > > On Mon, Mar 31, 2025 at 06:51:03PM +0200, Aleksandrs Vinarskis wrote: > > > On Mon, 31 Mar 2025 at 13:00, Johan Hovold <johan@kernel.org> wrote: > > > > On Mon, Mar 31, 2025 at 11:38:25AM +0200, Aleksandrs Vinarskis wrote: > > > > > On Mon, 31 Mar 2025 at 10:09, Johan Hovold <johan@kernel.org> wrote: > > > > > > On Mon, Mar 31, 2025 at 08:33:47AM +0100, Aleksandrs Vinarskis wrote: > > > > > > > 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 d09ab685a8f5 ("arm64: dts: qcom: x1e80100-qcp: Add > > > > > > > WiFi/BT pwrseq"). > > > > > > > > > With that fixed commit f5b788d0e8cd ("arm64: dts: qcom: Add support for > > > > > > > X1-based Dell XPS 13 9345") > > > > > > > > > > > > Not sure what happened here. > > > > > > > > > > Bluetooth and WLAN definitions were missing, as at the time I only > > > > > knew the UART port being used for bluetooth, and was missing > > > > > everything else to describe it. > > > > > > > > Ah, ok. The above sentence looked like some left-over copy paste. I > > > > guess you don't need to mention it at all since this does not seem to > > > > warrant a proper Fixes tag. > > > > > > It was a suggestion from Dmitry in v1. Though indeed it does not > > > warrant a proper Fixed tag, as it is something that was left out from > > > the initial series, I think it's fine to keep it like this, if it's > > > okay with you? > > > > I think you misinterpreted Dmitry here. He just said that after you > > added the reference to the commit you based this on to the commit > > message you could add his reviewed-by tag ("With that fixed: R-B: Dmitry > > ...") > > > > https://lore.kernel.org/all/ou7w4hvbbz72nzrm45gfhpq2uzkuwpfudqeh2o34tcnbnazxgz@glmuryu5dh3s/ > > > > As it stands it's hard to understand what that sentence means and why > > it is there (looks like a copy paste mistake). I suggest you just drop > > it. > > I disliked the original phrase "Derived from: commit subject". Instead I > suggested a different, more standard way, '... commit abcdefabcdef > ("commit subject")'. With that phrase in place Aleksandrs can add my R-B > tag. SMH just re-read it... apologies for the confusion. Will fix it now. Alex > > -- > With best wishes > Dmitry
diff --git a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts index d259a0d12d7b..c924f2a67939 100644 --- a/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts +++ b/arch/arm64/boot/dts/qcom/x1e80100-dell-xps13-9345.dts @@ -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>; @@ -1127,6 +1240,37 @@ reset-n-pins { drive-strength = <2>; }; }; + + wcn_wlan_bt_en: wcn-wlan-bt-en-state { + pins = "gpio116", "gpio117"; + function = "gpio"; + drive-strength = <2>; + bias-disable; + }; + + wcn_sw_en: wcn-sw-en-state { + pins = "gpio214"; + 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 {