Hi Johan, Thanks again for your time in reviewing things, it's greatly appreciated! On Wed, Mar 22, 2023 at 6:41 AM Johan Hovold <johan@xxxxxxxxxx> wrote: > > On Tue, Mar 21, 2023 at 08:14:42PM -0500, Steev Klimaszewski wrote: > > The Lenovo Thinkpad X13s has a WCN6855 Bluetooth controller on uart2, > > add this. > > > > Signed-off-by: Steev Klimaszewski <steev@xxxxxxxx> > > --- > > Changes since v6: > > * Remove allowed-modes as they aren't needed > > * Remove regulator-allow-set-load > > * Set regulator-always-on because the wifi chip also uses the regulator > > * cts pin uses bias-bus-hold > > * Alphabetize uart2 pins > > > > Changes since v5: > > * Update patch subject > > * Specify initial mode (via guess) for vreg_s1c > > * Drop uart17 definition > > * Rename bt_en to bt_default because configuring more than one pin > > * Correct (maybe) bias configurations > > * Correct cts gpio > > * Split rts-tx into two nodes > > * Drop incorrect link in the commit message > > > > Changes since v4: > > * Address Konrad's review comments. > > > > Changes since v3: > > * Add vreg_s1c > > * Add regulators and not dead code > > * Fix commit message changelog > > > > Changes since v2: > > * Remove dead code and add TODO comment > > * Make dtbs_check happy with the pin definitions > > .../qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 78 +++++++++++++++++++ > > 1 file changed, 78 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > index 92d365519546..05e66505e5cc 100644 > > --- a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > +++ b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > > @@ -24,6 +24,7 @@ / { > > aliases { > > i2c4 = &i2c4; > > i2c21 = &i2c21; > > + serial1 = &uart2; > > }; > > > > wcd938x: audio-codec { > > @@ -431,6 +432,14 @@ regulators-1 { > > qcom,pmic-id = "c"; > > vdd-bob-supply = <&vreg_vph_pwr>; > > > > + vreg_s1c: smps1 { > > + regulator-name = "vreg_s1c"; > > + regulator-min-microvolt = <1880000>; > > + regulator-max-microvolt = <1900000>; > > + regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; > > + regulator-always-on; > > + }; > > I went through the schematics to check for further problems with > consumers that are not yet described and found a few more bugs: > > https://lore.kernel.org/lkml/20230322113318.17908-1-johan+linaro@xxxxxxxxxx > > Note that that series is now adding the s1c supply as it also used by > some of the pmics. > > I'm assuming those fixes may get merged before this patch is, in which > case the above hunk should be dropped. > I can spin up v8 dropping this hunk and mention the dependency on that series. > > + > > vreg_l1c: ldo1 { > > regulator-name = "vreg_l1c"; > > regulator-min-microvolt = <1800000>; > > @@ -918,6 +927,32 @@ &qup0 { > > status = "okay"; > > }; > > > > +&uart2 { > > This node in no longer in alphabetical order and needs to be moved > further down (above &usb_0). > Ack > > + pinctrl-0 = <&uart2_default>; > > + pinctrl-names = "default"; > > + > > + status = "okay"; > > + > > + bluetooth { > > + compatible = "qcom,wcn6855-bt"; > > + > > + vddio-supply = <&vreg_s10b>; > > + vddbtcxmx-supply = <&vreg_s12b>; > > + vddrfacmn-supply = <&vreg_s12b>; > > + vddrfa0p8-supply = <&vreg_s12b>; > > + vddrfa1p2-supply = <&vreg_s11b>; > > + vddrfa1p7-supply = <&vreg_s1c>; > > + > > + max-speed = <3200000>; > > + > > + enable-gpios = <&tlmm 133 GPIO_ACTIVE_HIGH>; > > + swctrl-gpios = <&tlmm 132 GPIO_ACTIVE_HIGH>; > > + > > + pinctrl-0 = <&bt_default>; > > + pinctrl-names = "default"; > > + }; > > +}; > > + > > &qup1 { > > status = "okay"; > > }; > > @@ -1192,6 +1227,21 @@ hastings_reg_en: hastings-reg-en-state { > > &tlmm { > > gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>; > > > > + bt_default: bt-default-state { > > + hstp-sw-ctrl-pins { > > + pins = "gpio132"; > > + function = "gpio"; > > + bias-pull-down; > > + }; > > Similarly, this one should go after hstp-bt-en-pins. > Ack > > + > > + hstp-bt-en-pins { > > + pins = "gpio133"; > > + function = "gpio"; > > + drive-strength = <16>; > > + bias-disable; > > + }; > > + }; > > + > > edp_reg_en: edp-reg-en-state { > > pins = "gpio25"; > > function = "gpio"; > > @@ -1213,6 +1263,34 @@ i2c4_default: i2c4-default-state { > > bias-disable; > > }; > > > > + uart2_default: uart2-default-state { > > And this one is also not ordered correctly. > Ack > > + }; > > + > > i2c21_default: i2c21-default-state { > > pins = "gpio81", "gpio82"; > > function = "qup21"; > > Johan -- steev