Message ID | 20221214093342.153479-1-they@mint.lgbt (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | [1/4] dt-bindings: ufs: qcom: Add SM6125 compatible string | expand |
On 14/12/2022 10:33, Lux Aliaga wrote: > This commit implements support for the Xiaomi Mi A3 > (xiaomi-laurel_sprout). Here's a summary on what's working. > > - dmesg output to bootloader preconfigured display > - USB > - UFS > - SMD RPM regulators > > Signed-off-by: Lux Aliaga <they@mint.lgbt> > --- > arch/arm64/boot/dts/qcom/Makefile | 1 + > .../dts/qcom/sm6125-xiaomi-laurel_sprout.dts | 251 ++++++++++++++++++ > 2 files changed, 252 insertions(+) > create mode 100644 arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts > > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile > index d7669a7cee9f..7b4fbb4cbb84 100644 > --- a/arch/arm64/boot/dts/qcom/Makefile > +++ b/arch/arm64/boot/dts/qcom/Makefile > @@ -140,6 +140,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sdm845-shift-axolotl.dtb > dtb-$(CONFIG_ARCH_QCOM) += sdm850-lenovo-yoga-c630.dtb > dtb-$(CONFIG_ARCH_QCOM) += sdm850-samsung-w737.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb > +dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel_sprout.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm6350-sony-xperia-lena-pdx213.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb > diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts > new file mode 100644 > index 000000000000..edc5f13bae28 > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts > @@ -0,0 +1,251 @@ > +// SPDX-License-Identifier: BSD-3-Clause > +/* > + * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt> > + */ > + > +/dts-v1/; > + > +#include "sm6125.dtsi" > +#include <dt-bindings/gpio/gpio.h> > +#include <dt-bindings/input/input.h> > +#include <dt-bindings/input/gpio-keys.h> > + > +/ { > + /* required for bootloader to select correct board */ > + qcom,msm-id = <0x18a 0x00>; /* sm6125 v1 */ > + qcom,board-id = <0x0b 0x00>; > + > + model = "Xiaomi Mi A3"; > + compatible = "xiaomi,laurel_sprout", "qcom,sm6125"; > + chassis-type = "handset"; > + > + chosen { > + #address-cells = <2>; > + #size-cells = <2>; > + ranges; > + > + framebuffer0: framebuffer@5c000000 { > + compatible = "simple-framebuffer"; > + reg = <0 0x5c000000 0 (1560 * 720 * 4)>; > + width = <720>; > + height = <1560>; > + stride = <(720 * 4)>; > + format = "a8r8g8b8"; > + }; > + }; > + > + extcon_usb: extcon-usb { Node name: usb-id > + compatible = "linux,extcon-usb-gpio"; > + id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>; > + }; > + > + reserved_memory { No underscores in node names. Use same node name as other boards, don't invent own stuff. > + #address-cells = <2>; > + #size-cells = <2>; > + debug_mem: memory@ffb00000 { > + reg = <0x0 0xffb00000 0x0 0xc0000>; > + no-map; > + }; > + > + last_log_mem: memory@ffbc0000 { > + reg = <0x0 0xffbc0000 0x0 0x80000>; > + no-map; > + }; > + > + pstore_mem: ramoops@ffc00000 { > + compatible = "ramoops"; > + reg = <0x0 0xffc40000 0x0 0xc0000>; > + record-size = <0x1000>; > + console-size = <0x40000>; > + msg-size = <0x20000 0x20000>; > + }; > + > + cmdline_mem: memory@ffd00000 { > + reg = <0x0 0xffd40000 0x0 0x1000>; > + no-map; > + }; > + }; > +}; > + > +&rpm_requests { > + regulators-0 { > + compatible = "qcom,rpm-pm6125-regulators"; > + > + vreg_s6a: s6 { > + regulator-min-microvolt = <936000>; > + regulator-max-microvolt = <1422000>; > + }; > + > + vreg_l1a: l1 { > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1256000>; > + }; > + > + vreg_l2a: l2 { > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1056000>; > + }; > + > + vreg_l3a: l3 { > + regulator-min-microvolt = <1000000>; > + regulator-max-microvolt = <1064000>; > + }; > + > + vreg_l4a: l4 { > + regulator-min-microvolt = <872000>; > + regulator-max-microvolt = <976000>; > + }; > + > + vreg_l5a: l5 { > + regulator-min-microvolt = <1648000>; > + regulator-max-microvolt = <3104000>; > + }; > + > + vreg_l6a: l6 { > + regulator-min-microvolt = <576000>; > + regulator-max-microvolt = <656000>; > + }; > + > + vreg_l7a: l7 { > + regulator-min-microvolt = <872000>; > + regulator-max-microvolt = <976000>; > + }; > + > + vreg_l8a: l8 { > + regulator-min-microvolt = <400000>; > + regulator-max-microvolt = <728000>; > + }; > + > + vreg_l9a: l9 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1896000>; > + }; > + > + vreg_l10a: l10 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1896000>; > + }; > + > + vreg_l11a: l11 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1952000>; > + }; > + > + vreg_l12a: l12 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1996000>; > + }; > + > + vreg_l13a: l13 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1832000>; > + }; > + > + vreg_l14a: l14 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1904000>; > + }; > + > + vreg_l15a: l15 { > + regulator-min-microvolt = <3104000>; > + regulator-max-microvolt = <3232000>; > + }; > + > + vreg_l16a: l16 { > + regulator-min-microvolt = <1800000>; > + regulator-max-microvolt = <1904000>; > + }; > + > + vreg_l17a: l17 { > + regulator-min-microvolt = <1248000>; > + regulator-max-microvolt = <1304000>; > + }; > + > + vreg_l18a: l18 { > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1264000>; > + }; > + > + vreg_l19a: l19 { > + regulator-min-microvolt = <1648000>; > + regulator-max-microvolt = <2952000>; > + }; > + > + vreg_l20a: l20 { > + regulator-min-microvolt = <1648000>; > + regulator-max-microvolt = <2952000>; > + }; > + > + vreg_l21a: l21 { > + regulator-min-microvolt = <2600000>; > + regulator-max-microvolt = <2856000>; > + }; > + > + vreg_l22a: l22 { > + regulator-min-microvolt = <2944000>; > + regulator-max-microvolt = <3304000>; > + }; > + > + vreg_l23a: l23 { > + regulator-min-microvolt = <3000000>; > + regulator-max-microvolt = <3400000>; > + }; > + > + vreg_l24a: l24 { > + regulator-min-microvolt = <2944000>; > + regulator-max-microvolt = <3304000>; > + }; > + }; > +}; > + > +&hsusb_phy1 { > + status = "okay"; > +}; > + > + > +&sdc2_off_state { > + sd-cd { Does not look like you tested the DTS against bindings. Please run `make dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst for instructions). that's missing -pins suffix but most likely it does not match other DTS neither. So probably was based on some old kernel. > + pins = "gpio98"; > + bias-disable; > + drive-strength = <2>; > + }; > +}; > + > +&sdc2_on_state { > + sd-cd { Same problems. > + pins = "gpio98"; > + bias-pull-up; > + drive-strength = <2>; > + }; > +}; Best regards, Krzysztof
I'm a bit confused at the "Node name: usb-id" comment. Should I change "extcon_usb" or "extcon-usb" to usb-id? On 14/12/2022 06:52, Krzysztof Kozlowski wrote: > On 14/12/2022 10:33, Lux Aliaga wrote: >> This commit implements support for the Xiaomi Mi A3 >> (xiaomi-laurel_sprout). Here's a summary on what's working. >> >> - dmesg output to bootloader preconfigured display >> - USB >> - UFS >> - SMD RPM regulators >> >> Signed-off-by: Lux Aliaga <they@mint.lgbt> >> --- >> arch/arm64/boot/dts/qcom/Makefile | 1 + >> .../dts/qcom/sm6125-xiaomi-laurel_sprout.dts | 251 ++++++++++++++++++ >> 2 files changed, 252 insertions(+) >> create mode 100644 arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >> >> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile >> index d7669a7cee9f..7b4fbb4cbb84 100644 >> --- a/arch/arm64/boot/dts/qcom/Makefile >> +++ b/arch/arm64/boot/dts/qcom/Makefile >> @@ -140,6 +140,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sdm845-shift-axolotl.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sdm850-lenovo-yoga-c630.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sdm850-samsung-w737.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb >> +dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel_sprout.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sm6350-sony-xperia-lena-pdx213.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb >> dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb >> diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >> new file mode 100644 >> index 000000000000..edc5f13bae28 >> --- /dev/null >> +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >> @@ -0,0 +1,251 @@ >> +// SPDX-License-Identifier: BSD-3-Clause >> +/* >> + * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt> >> + */ >> + >> +/dts-v1/; >> + >> +#include "sm6125.dtsi" >> +#include <dt-bindings/gpio/gpio.h> >> +#include <dt-bindings/input/input.h> >> +#include <dt-bindings/input/gpio-keys.h> >> + >> +/ { >> + /* required for bootloader to select correct board */ >> + qcom,msm-id = <0x18a 0x00>; /* sm6125 v1 */ >> + qcom,board-id = <0x0b 0x00>; >> + >> + model = "Xiaomi Mi A3"; >> + compatible = "xiaomi,laurel_sprout", "qcom,sm6125"; >> + chassis-type = "handset"; >> + >> + chosen { >> + #address-cells = <2>; >> + #size-cells = <2>; >> + ranges; >> + >> + framebuffer0: framebuffer@5c000000 { >> + compatible = "simple-framebuffer"; >> + reg = <0 0x5c000000 0 (1560 * 720 * 4)>; >> + width = <720>; >> + height = <1560>; >> + stride = <(720 * 4)>; >> + format = "a8r8g8b8"; >> + }; >> + }; >> + >> + extcon_usb: extcon-usb { > Node name: usb-id > >> + compatible = "linux,extcon-usb-gpio"; >> + id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>; >> + }; >> + >> + reserved_memory { > No underscores in node names. Use same node name as other boards, don't > invent own stuff. > >> + #address-cells = <2>; >> + #size-cells = <2>; >> + debug_mem: memory@ffb00000 { >> + reg = <0x0 0xffb00000 0x0 0xc0000>; >> + no-map; >> + }; >> + >> + last_log_mem: memory@ffbc0000 { >> + reg = <0x0 0xffbc0000 0x0 0x80000>; >> + no-map; >> + }; >> + >> + pstore_mem: ramoops@ffc00000 { >> + compatible = "ramoops"; >> + reg = <0x0 0xffc40000 0x0 0xc0000>; >> + record-size = <0x1000>; >> + console-size = <0x40000>; >> + msg-size = <0x20000 0x20000>; >> + }; >> + >> + cmdline_mem: memory@ffd00000 { >> + reg = <0x0 0xffd40000 0x0 0x1000>; >> + no-map; >> + }; >> + }; >> +}; >> + >> +&rpm_requests { >> + regulators-0 { >> + compatible = "qcom,rpm-pm6125-regulators"; >> + >> + vreg_s6a: s6 { >> + regulator-min-microvolt = <936000>; >> + regulator-max-microvolt = <1422000>; >> + }; >> + >> + vreg_l1a: l1 { >> + regulator-min-microvolt = <1200000>; >> + regulator-max-microvolt = <1256000>; >> + }; >> + >> + vreg_l2a: l2 { >> + regulator-min-microvolt = <1000000>; >> + regulator-max-microvolt = <1056000>; >> + }; >> + >> + vreg_l3a: l3 { >> + regulator-min-microvolt = <1000000>; >> + regulator-max-microvolt = <1064000>; >> + }; >> + >> + vreg_l4a: l4 { >> + regulator-min-microvolt = <872000>; >> + regulator-max-microvolt = <976000>; >> + }; >> + >> + vreg_l5a: l5 { >> + regulator-min-microvolt = <1648000>; >> + regulator-max-microvolt = <3104000>; >> + }; >> + >> + vreg_l6a: l6 { >> + regulator-min-microvolt = <576000>; >> + regulator-max-microvolt = <656000>; >> + }; >> + >> + vreg_l7a: l7 { >> + regulator-min-microvolt = <872000>; >> + regulator-max-microvolt = <976000>; >> + }; >> + >> + vreg_l8a: l8 { >> + regulator-min-microvolt = <400000>; >> + regulator-max-microvolt = <728000>; >> + }; >> + >> + vreg_l9a: l9 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1896000>; >> + }; >> + >> + vreg_l10a: l10 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1896000>; >> + }; >> + >> + vreg_l11a: l11 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1952000>; >> + }; >> + >> + vreg_l12a: l12 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1996000>; >> + }; >> + >> + vreg_l13a: l13 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1832000>; >> + }; >> + >> + vreg_l14a: l14 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1904000>; >> + }; >> + >> + vreg_l15a: l15 { >> + regulator-min-microvolt = <3104000>; >> + regulator-max-microvolt = <3232000>; >> + }; >> + >> + vreg_l16a: l16 { >> + regulator-min-microvolt = <1800000>; >> + regulator-max-microvolt = <1904000>; >> + }; >> + >> + vreg_l17a: l17 { >> + regulator-min-microvolt = <1248000>; >> + regulator-max-microvolt = <1304000>; >> + }; >> + >> + vreg_l18a: l18 { >> + regulator-min-microvolt = <1200000>; >> + regulator-max-microvolt = <1264000>; >> + }; >> + >> + vreg_l19a: l19 { >> + regulator-min-microvolt = <1648000>; >> + regulator-max-microvolt = <2952000>; >> + }; >> + >> + vreg_l20a: l20 { >> + regulator-min-microvolt = <1648000>; >> + regulator-max-microvolt = <2952000>; >> + }; >> + >> + vreg_l21a: l21 { >> + regulator-min-microvolt = <2600000>; >> + regulator-max-microvolt = <2856000>; >> + }; >> + >> + vreg_l22a: l22 { >> + regulator-min-microvolt = <2944000>; >> + regulator-max-microvolt = <3304000>; >> + }; >> + >> + vreg_l23a: l23 { >> + regulator-min-microvolt = <3000000>; >> + regulator-max-microvolt = <3400000>; >> + }; >> + >> + vreg_l24a: l24 { >> + regulator-min-microvolt = <2944000>; >> + regulator-max-microvolt = <3304000>; >> + }; >> + }; >> +}; >> + >> +&hsusb_phy1 { >> + status = "okay"; >> +}; >> + >> + >> +&sdc2_off_state { >> + sd-cd { > Does not look like you tested the DTS against bindings. Please run `make > dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst > for instructions). > > that's missing -pins suffix but most likely it does not match other DTS > neither. So probably was based on some old kernel. > >> + pins = "gpio98"; >> + bias-disable; >> + drive-strength = <2>; >> + }; >> +}; >> + >> +&sdc2_on_state { >> + sd-cd { > Same problems. > >> + pins = "gpio98"; >> + bias-pull-up; >> + drive-strength = <2>; >> + }; >> +}; > Best regards, > Krzysztof >
Ok. I think that comment is incorrect. Changing the node name on extcon_usb breaks the "extcon" property in &usb3_dwc3, even after changing the reference. On 14/12/2022 14:26, Lux Aliaga wrote: > I'm a bit confused at the "Node name: usb-id" comment. Should I change > "extcon_usb" or "extcon-usb" to usb-id? > > On 14/12/2022 06:52, Krzysztof Kozlowski wrote: >> On 14/12/2022 10:33, Lux Aliaga wrote: >>> This commit implements support for the Xiaomi Mi A3 >>> (xiaomi-laurel_sprout). Here's a summary on what's working. >>> >>> - dmesg output to bootloader preconfigured display >>> - USB >>> - UFS >>> - SMD RPM regulators >>> >>> Signed-off-by: Lux Aliaga <they@mint.lgbt> >>> --- >>> arch/arm64/boot/dts/qcom/Makefile | 1 + >>> .../dts/qcom/sm6125-xiaomi-laurel_sprout.dts | 251 >>> ++++++++++++++++++ >>> 2 files changed, 252 insertions(+) >>> create mode 100644 >>> arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>> >>> diff --git a/arch/arm64/boot/dts/qcom/Makefile >>> b/arch/arm64/boot/dts/qcom/Makefile >>> index d7669a7cee9f..7b4fbb4cbb84 100644 >>> --- a/arch/arm64/boot/dts/qcom/Makefile >>> +++ b/arch/arm64/boot/dts/qcom/Makefile >>> @@ -140,6 +140,7 @@ dtb-$(CONFIG_ARCH_QCOM) += >>> sdm845-shift-axolotl.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sdm850-lenovo-yoga-c630.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sdm850-samsung-w737.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb >>> +dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel_sprout.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sm6350-sony-xperia-lena-pdx213.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb >>> dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb >>> diff --git >>> a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>> b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>> new file mode 100644 >>> index 000000000000..edc5f13bae28 >>> --- /dev/null >>> +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>> @@ -0,0 +1,251 @@ >>> +// SPDX-License-Identifier: BSD-3-Clause >>> +/* >>> + * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt> >>> + */ >>> + >>> +/dts-v1/; >>> + >>> +#include "sm6125.dtsi" >>> +#include <dt-bindings/gpio/gpio.h> >>> +#include <dt-bindings/input/input.h> >>> +#include <dt-bindings/input/gpio-keys.h> >>> + >>> +/ { >>> + /* required for bootloader to select correct board */ >>> + qcom,msm-id = <0x18a 0x00>; /* sm6125 v1 */ >>> + qcom,board-id = <0x0b 0x00>; >>> + >>> + model = "Xiaomi Mi A3"; >>> + compatible = "xiaomi,laurel_sprout", "qcom,sm6125"; >>> + chassis-type = "handset"; >>> + >>> + chosen { >>> + #address-cells = <2>; >>> + #size-cells = <2>; >>> + ranges; >>> + >>> + framebuffer0: framebuffer@5c000000 { >>> + compatible = "simple-framebuffer"; >>> + reg = <0 0x5c000000 0 (1560 * 720 * 4)>; >>> + width = <720>; >>> + height = <1560>; >>> + stride = <(720 * 4)>; >>> + format = "a8r8g8b8"; >>> + }; >>> + }; >>> + >>> + extcon_usb: extcon-usb { >> Node name: usb-id >> >>> + compatible = "linux,extcon-usb-gpio"; >>> + id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>; >>> + }; >>> + >>> + reserved_memory { >> No underscores in node names. Use same node name as other boards, don't >> invent own stuff. >> >>> + #address-cells = <2>; >>> + #size-cells = <2>; >>> + debug_mem: memory@ffb00000 { >>> + reg = <0x0 0xffb00000 0x0 0xc0000>; >>> + no-map; >>> + }; >>> + >>> + last_log_mem: memory@ffbc0000 { >>> + reg = <0x0 0xffbc0000 0x0 0x80000>; >>> + no-map; >>> + }; >>> + >>> + pstore_mem: ramoops@ffc00000 { >>> + compatible = "ramoops"; >>> + reg = <0x0 0xffc40000 0x0 0xc0000>; >>> + record-size = <0x1000>; >>> + console-size = <0x40000>; >>> + msg-size = <0x20000 0x20000>; >>> + }; >>> + >>> + cmdline_mem: memory@ffd00000 { >>> + reg = <0x0 0xffd40000 0x0 0x1000>; >>> + no-map; >>> + }; >>> + }; >>> +}; >>> + >>> +&rpm_requests { >>> + regulators-0 { >>> + compatible = "qcom,rpm-pm6125-regulators"; >>> + >>> + vreg_s6a: s6 { >>> + regulator-min-microvolt = <936000>; >>> + regulator-max-microvolt = <1422000>; >>> + }; >>> + >>> + vreg_l1a: l1 { >>> + regulator-min-microvolt = <1200000>; >>> + regulator-max-microvolt = <1256000>; >>> + }; >>> + >>> + vreg_l2a: l2 { >>> + regulator-min-microvolt = <1000000>; >>> + regulator-max-microvolt = <1056000>; >>> + }; >>> + >>> + vreg_l3a: l3 { >>> + regulator-min-microvolt = <1000000>; >>> + regulator-max-microvolt = <1064000>; >>> + }; >>> + >>> + vreg_l4a: l4 { >>> + regulator-min-microvolt = <872000>; >>> + regulator-max-microvolt = <976000>; >>> + }; >>> + >>> + vreg_l5a: l5 { >>> + regulator-min-microvolt = <1648000>; >>> + regulator-max-microvolt = <3104000>; >>> + }; >>> + >>> + vreg_l6a: l6 { >>> + regulator-min-microvolt = <576000>; >>> + regulator-max-microvolt = <656000>; >>> + }; >>> + >>> + vreg_l7a: l7 { >>> + regulator-min-microvolt = <872000>; >>> + regulator-max-microvolt = <976000>; >>> + }; >>> + >>> + vreg_l8a: l8 { >>> + regulator-min-microvolt = <400000>; >>> + regulator-max-microvolt = <728000>; >>> + }; >>> + >>> + vreg_l9a: l9 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1896000>; >>> + }; >>> + >>> + vreg_l10a: l10 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1896000>; >>> + }; >>> + >>> + vreg_l11a: l11 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1952000>; >>> + }; >>> + >>> + vreg_l12a: l12 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1996000>; >>> + }; >>> + >>> + vreg_l13a: l13 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1832000>; >>> + }; >>> + >>> + vreg_l14a: l14 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1904000>; >>> + }; >>> + >>> + vreg_l15a: l15 { >>> + regulator-min-microvolt = <3104000>; >>> + regulator-max-microvolt = <3232000>; >>> + }; >>> + >>> + vreg_l16a: l16 { >>> + regulator-min-microvolt = <1800000>; >>> + regulator-max-microvolt = <1904000>; >>> + }; >>> + >>> + vreg_l17a: l17 { >>> + regulator-min-microvolt = <1248000>; >>> + regulator-max-microvolt = <1304000>; >>> + }; >>> + >>> + vreg_l18a: l18 { >>> + regulator-min-microvolt = <1200000>; >>> + regulator-max-microvolt = <1264000>; >>> + }; >>> + >>> + vreg_l19a: l19 { >>> + regulator-min-microvolt = <1648000>; >>> + regulator-max-microvolt = <2952000>; >>> + }; >>> + >>> + vreg_l20a: l20 { >>> + regulator-min-microvolt = <1648000>; >>> + regulator-max-microvolt = <2952000>; >>> + }; >>> + >>> + vreg_l21a: l21 { >>> + regulator-min-microvolt = <2600000>; >>> + regulator-max-microvolt = <2856000>; >>> + }; >>> + >>> + vreg_l22a: l22 { >>> + regulator-min-microvolt = <2944000>; >>> + regulator-max-microvolt = <3304000>; >>> + }; >>> + >>> + vreg_l23a: l23 { >>> + regulator-min-microvolt = <3000000>; >>> + regulator-max-microvolt = <3400000>; >>> + }; >>> + >>> + vreg_l24a: l24 { >>> + regulator-min-microvolt = <2944000>; >>> + regulator-max-microvolt = <3304000>; >>> + }; >>> + }; >>> +}; >>> + >>> +&hsusb_phy1 { >>> + status = "okay"; >>> +}; >>> + >>> + >>> +&sdc2_off_state { >>> + sd-cd { >> Does not look like you tested the DTS against bindings. Please run `make >> dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst >> for instructions). >> >> that's missing -pins suffix but most likely it does not match other DTS >> neither. So probably was based on some old kernel. >> >>> + pins = "gpio98"; >>> + bias-disable; >>> + drive-strength = <2>; >>> + }; >>> +}; >>> + >>> +&sdc2_on_state { >>> + sd-cd { >> Same problems. >> >>> + pins = "gpio98"; >>> + bias-pull-up; >>> + drive-strength = <2>; >>> + }; >>> +}; >> Best regards, >> Krzysztof >>
On 14.12.2022 18:45, Lux Aliaga wrote: > Ok. I think that comment is incorrect. Changing the node name on extcon_usb breaks the "extcon" property in &usb3_dwc3, even after changing the reference. > Please don't toppost, reply under the paragraph you're referencing. Konrad > On 14/12/2022 14:26, Lux Aliaga wrote: >> I'm a bit confused at the "Node name: usb-id" comment. Should I change "extcon_usb" or "extcon-usb" to usb-id? >> >> On 14/12/2022 06:52, Krzysztof Kozlowski wrote: >>> On 14/12/2022 10:33, Lux Aliaga wrote: >>>> This commit implements support for the Xiaomi Mi A3 >>>> (xiaomi-laurel_sprout). Here's a summary on what's working. >>>> >>>> - dmesg output to bootloader preconfigured display >>>> - USB >>>> - UFS >>>> - SMD RPM regulators >>>> >>>> Signed-off-by: Lux Aliaga <they@mint.lgbt> >>>> --- >>>> arch/arm64/boot/dts/qcom/Makefile | 1 + >>>> .../dts/qcom/sm6125-xiaomi-laurel_sprout.dts | 251 ++++++++++++++++++ >>>> 2 files changed, 252 insertions(+) >>>> create mode 100644 arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>>> >>>> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile >>>> index d7669a7cee9f..7b4fbb4cbb84 100644 >>>> --- a/arch/arm64/boot/dts/qcom/Makefile >>>> +++ b/arch/arm64/boot/dts/qcom/Makefile >>>> @@ -140,6 +140,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sdm845-shift-axolotl.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sdm850-lenovo-yoga-c630.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sdm850-samsung-w737.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb >>>> +dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel_sprout.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sm6350-sony-xperia-lena-pdx213.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb >>>> dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb >>>> diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>>> new file mode 100644 >>>> index 000000000000..edc5f13bae28 >>>> --- /dev/null >>>> +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts >>>> @@ -0,0 +1,251 @@ >>>> +// SPDX-License-Identifier: BSD-3-Clause >>>> +/* >>>> + * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt> >>>> + */ >>>> + >>>> +/dts-v1/; >>>> + >>>> +#include "sm6125.dtsi" >>>> +#include <dt-bindings/gpio/gpio.h> >>>> +#include <dt-bindings/input/input.h> >>>> +#include <dt-bindings/input/gpio-keys.h> >>>> + >>>> +/ { >>>> + /* required for bootloader to select correct board */ >>>> + qcom,msm-id = <0x18a 0x00>; /* sm6125 v1 */ >>>> + qcom,board-id = <0x0b 0x00>; >>>> + >>>> + model = "Xiaomi Mi A3"; >>>> + compatible = "xiaomi,laurel_sprout", "qcom,sm6125"; >>>> + chassis-type = "handset"; >>>> + >>>> + chosen { >>>> + #address-cells = <2>; >>>> + #size-cells = <2>; >>>> + ranges; >>>> + >>>> + framebuffer0: framebuffer@5c000000 { >>>> + compatible = "simple-framebuffer"; >>>> + reg = <0 0x5c000000 0 (1560 * 720 * 4)>; >>>> + width = <720>; >>>> + height = <1560>; >>>> + stride = <(720 * 4)>; >>>> + format = "a8r8g8b8"; >>>> + }; >>>> + }; >>>> + >>>> + extcon_usb: extcon-usb { >>> Node name: usb-id >>> >>>> + compatible = "linux,extcon-usb-gpio"; >>>> + id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>; >>>> + }; >>>> + >>>> + reserved_memory { >>> No underscores in node names. Use same node name as other boards, don't >>> invent own stuff. >>> >>>> + #address-cells = <2>; >>>> + #size-cells = <2>; >>>> + debug_mem: memory@ffb00000 { >>>> + reg = <0x0 0xffb00000 0x0 0xc0000>; >>>> + no-map; >>>> + }; >>>> + >>>> + last_log_mem: memory@ffbc0000 { >>>> + reg = <0x0 0xffbc0000 0x0 0x80000>; >>>> + no-map; >>>> + }; >>>> + >>>> + pstore_mem: ramoops@ffc00000 { >>>> + compatible = "ramoops"; >>>> + reg = <0x0 0xffc40000 0x0 0xc0000>; >>>> + record-size = <0x1000>; >>>> + console-size = <0x40000>; >>>> + msg-size = <0x20000 0x20000>; >>>> + }; >>>> + >>>> + cmdline_mem: memory@ffd00000 { >>>> + reg = <0x0 0xffd40000 0x0 0x1000>; >>>> + no-map; >>>> + }; >>>> + }; >>>> +}; >>>> + >>>> +&rpm_requests { >>>> + regulators-0 { >>>> + compatible = "qcom,rpm-pm6125-regulators"; >>>> + >>>> + vreg_s6a: s6 { >>>> + regulator-min-microvolt = <936000>; >>>> + regulator-max-microvolt = <1422000>; >>>> + }; >>>> + >>>> + vreg_l1a: l1 { >>>> + regulator-min-microvolt = <1200000>; >>>> + regulator-max-microvolt = <1256000>; >>>> + }; >>>> + >>>> + vreg_l2a: l2 { >>>> + regulator-min-microvolt = <1000000>; >>>> + regulator-max-microvolt = <1056000>; >>>> + }; >>>> + >>>> + vreg_l3a: l3 { >>>> + regulator-min-microvolt = <1000000>; >>>> + regulator-max-microvolt = <1064000>; >>>> + }; >>>> + >>>> + vreg_l4a: l4 { >>>> + regulator-min-microvolt = <872000>; >>>> + regulator-max-microvolt = <976000>; >>>> + }; >>>> + >>>> + vreg_l5a: l5 { >>>> + regulator-min-microvolt = <1648000>; >>>> + regulator-max-microvolt = <3104000>; >>>> + }; >>>> + >>>> + vreg_l6a: l6 { >>>> + regulator-min-microvolt = <576000>; >>>> + regulator-max-microvolt = <656000>; >>>> + }; >>>> + >>>> + vreg_l7a: l7 { >>>> + regulator-min-microvolt = <872000>; >>>> + regulator-max-microvolt = <976000>; >>>> + }; >>>> + >>>> + vreg_l8a: l8 { >>>> + regulator-min-microvolt = <400000>; >>>> + regulator-max-microvolt = <728000>; >>>> + }; >>>> + >>>> + vreg_l9a: l9 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1896000>; >>>> + }; >>>> + >>>> + vreg_l10a: l10 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1896000>; >>>> + }; >>>> + >>>> + vreg_l11a: l11 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1952000>; >>>> + }; >>>> + >>>> + vreg_l12a: l12 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1996000>; >>>> + }; >>>> + >>>> + vreg_l13a: l13 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1832000>; >>>> + }; >>>> + >>>> + vreg_l14a: l14 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1904000>; >>>> + }; >>>> + >>>> + vreg_l15a: l15 { >>>> + regulator-min-microvolt = <3104000>; >>>> + regulator-max-microvolt = <3232000>; >>>> + }; >>>> + >>>> + vreg_l16a: l16 { >>>> + regulator-min-microvolt = <1800000>; >>>> + regulator-max-microvolt = <1904000>; >>>> + }; >>>> + >>>> + vreg_l17a: l17 { >>>> + regulator-min-microvolt = <1248000>; >>>> + regulator-max-microvolt = <1304000>; >>>> + }; >>>> + >>>> + vreg_l18a: l18 { >>>> + regulator-min-microvolt = <1200000>; >>>> + regulator-max-microvolt = <1264000>; >>>> + }; >>>> + >>>> + vreg_l19a: l19 { >>>> + regulator-min-microvolt = <1648000>; >>>> + regulator-max-microvolt = <2952000>; >>>> + }; >>>> + >>>> + vreg_l20a: l20 { >>>> + regulator-min-microvolt = <1648000>; >>>> + regulator-max-microvolt = <2952000>; >>>> + }; >>>> + >>>> + vreg_l21a: l21 { >>>> + regulator-min-microvolt = <2600000>; >>>> + regulator-max-microvolt = <2856000>; >>>> + }; >>>> + >>>> + vreg_l22a: l22 { >>>> + regulator-min-microvolt = <2944000>; >>>> + regulator-max-microvolt = <3304000>; >>>> + }; >>>> + >>>> + vreg_l23a: l23 { >>>> + regulator-min-microvolt = <3000000>; >>>> + regulator-max-microvolt = <3400000>; >>>> + }; >>>> + >>>> + vreg_l24a: l24 { >>>> + regulator-min-microvolt = <2944000>; >>>> + regulator-max-microvolt = <3304000>; >>>> + }; >>>> + }; >>>> +}; >>>> + >>>> +&hsusb_phy1 { >>>> + status = "okay"; >>>> +}; >>>> + >>>> + >>>> +&sdc2_off_state { >>>> + sd-cd { >>> Does not look like you tested the DTS against bindings. Please run `make >>> dtbs_check` (see Documentation/devicetree/bindings/writing-schema.rst >>> for instructions). >>> >>> that's missing -pins suffix but most likely it does not match other DTS >>> neither. So probably was based on some old kernel. >>> >>>> + pins = "gpio98"; >>>> + bias-disable; >>>> + drive-strength = <2>; >>>> + }; >>>> +}; >>>> + >>>> +&sdc2_on_state { >>>> + sd-cd { >>> Same problems. >>> >>>> + pins = "gpio98"; >>>> + bias-pull-up; >>>> + drive-strength = <2>; >>>> + }; >>>> +}; >>> Best regards, >>> Krzysztof >>>
On 14/12/2022 18:26, Lux Aliaga wrote: > I'm a bit confused at the "Node name: usb-id" comment. Should I change > "extcon_usb" or "extcon-usb" to usb-id? Please change the node name, not the label. So extcon-usb goes to usb-id. Best regards, Krzysztof
On 14/12/2022 18:45, Lux Aliaga wrote: > Ok. I think that comment is incorrect. Changing the node name on > extcon_usb breaks the "extcon" property in &usb3_dwc3, even after > changing the reference. You top-post and I have no clue what do you refer to. Don't top-post. Best regards, Krzysztof
On 15/12/2022 05:31, Krzysztof Kozlowski wrote: > On 14/12/2022 18:45, Lux Aliaga wrote: >> Ok. I think that comment is incorrect. Changing the node name on >> extcon_usb breaks the "extcon" property in &usb3_dwc3, even after >> changing the reference. > You top-post and I have no clue what do you refer to. Don't top-post. My apologies. I replied a bit too quickly and didn't check if the concerns I proposed were redacted correctly. An email you sent already answered my concern, so I'll proceed to send a new version of the patchset. Kind regards.
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile index d7669a7cee9f..7b4fbb4cbb84 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -140,6 +140,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sdm845-shift-axolotl.dtb dtb-$(CONFIG_ARCH_QCOM) += sdm850-lenovo-yoga-c630.dtb dtb-$(CONFIG_ARCH_QCOM) += sdm850-samsung-w737.dtb dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb +dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel_sprout.dtb dtb-$(CONFIG_ARCH_QCOM) += sm6350-sony-xperia-lena-pdx213.dtb dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb diff --git a/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts new file mode 100644 index 000000000000..edc5f13bae28 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts @@ -0,0 +1,251 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2022, Lux Aliaga <they@mint.lgbt> + */ + +/dts-v1/; + +#include "sm6125.dtsi" +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/input/input.h> +#include <dt-bindings/input/gpio-keys.h> + +/ { + /* required for bootloader to select correct board */ + qcom,msm-id = <0x18a 0x00>; /* sm6125 v1 */ + qcom,board-id = <0x0b 0x00>; + + model = "Xiaomi Mi A3"; + compatible = "xiaomi,laurel_sprout", "qcom,sm6125"; + chassis-type = "handset"; + + chosen { + #address-cells = <2>; + #size-cells = <2>; + ranges; + + framebuffer0: framebuffer@5c000000 { + compatible = "simple-framebuffer"; + reg = <0 0x5c000000 0 (1560 * 720 * 4)>; + width = <720>; + height = <1560>; + stride = <(720 * 4)>; + format = "a8r8g8b8"; + }; + }; + + extcon_usb: extcon-usb { + compatible = "linux,extcon-usb-gpio"; + id-gpio = <&tlmm 102 GPIO_ACTIVE_HIGH>; + }; + + reserved_memory { + #address-cells = <2>; + #size-cells = <2>; + debug_mem: memory@ffb00000 { + reg = <0x0 0xffb00000 0x0 0xc0000>; + no-map; + }; + + last_log_mem: memory@ffbc0000 { + reg = <0x0 0xffbc0000 0x0 0x80000>; + no-map; + }; + + pstore_mem: ramoops@ffc00000 { + compatible = "ramoops"; + reg = <0x0 0xffc40000 0x0 0xc0000>; + record-size = <0x1000>; + console-size = <0x40000>; + msg-size = <0x20000 0x20000>; + }; + + cmdline_mem: memory@ffd00000 { + reg = <0x0 0xffd40000 0x0 0x1000>; + no-map; + }; + }; +}; + +&rpm_requests { + regulators-0 { + compatible = "qcom,rpm-pm6125-regulators"; + + vreg_s6a: s6 { + regulator-min-microvolt = <936000>; + regulator-max-microvolt = <1422000>; + }; + + vreg_l1a: l1 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1256000>; + }; + + vreg_l2a: l2 { + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1056000>; + }; + + vreg_l3a: l3 { + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <1064000>; + }; + + vreg_l4a: l4 { + regulator-min-microvolt = <872000>; + regulator-max-microvolt = <976000>; + }; + + vreg_l5a: l5 { + regulator-min-microvolt = <1648000>; + regulator-max-microvolt = <3104000>; + }; + + vreg_l6a: l6 { + regulator-min-microvolt = <576000>; + regulator-max-microvolt = <656000>; + }; + + vreg_l7a: l7 { + regulator-min-microvolt = <872000>; + regulator-max-microvolt = <976000>; + }; + + vreg_l8a: l8 { + regulator-min-microvolt = <400000>; + regulator-max-microvolt = <728000>; + }; + + vreg_l9a: l9 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1896000>; + }; + + vreg_l10a: l10 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1896000>; + }; + + vreg_l11a: l11 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1952000>; + }; + + vreg_l12a: l12 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1996000>; + }; + + vreg_l13a: l13 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1832000>; + }; + + vreg_l14a: l14 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1904000>; + }; + + vreg_l15a: l15 { + regulator-min-microvolt = <3104000>; + regulator-max-microvolt = <3232000>; + }; + + vreg_l16a: l16 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1904000>; + }; + + vreg_l17a: l17 { + regulator-min-microvolt = <1248000>; + regulator-max-microvolt = <1304000>; + }; + + vreg_l18a: l18 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1264000>; + }; + + vreg_l19a: l19 { + regulator-min-microvolt = <1648000>; + regulator-max-microvolt = <2952000>; + }; + + vreg_l20a: l20 { + regulator-min-microvolt = <1648000>; + regulator-max-microvolt = <2952000>; + }; + + vreg_l21a: l21 { + regulator-min-microvolt = <2600000>; + regulator-max-microvolt = <2856000>; + }; + + vreg_l22a: l22 { + regulator-min-microvolt = <2944000>; + regulator-max-microvolt = <3304000>; + }; + + vreg_l23a: l23 { + regulator-min-microvolt = <3000000>; + regulator-max-microvolt = <3400000>; + }; + + vreg_l24a: l24 { + regulator-min-microvolt = <2944000>; + regulator-max-microvolt = <3304000>; + }; + }; +}; + +&hsusb_phy1 { + status = "okay"; +}; + + +&sdc2_off_state { + sd-cd { + pins = "gpio98"; + bias-disable; + drive-strength = <2>; + }; +}; + +&sdc2_on_state { + sd-cd { + pins = "gpio98"; + bias-pull-up; + drive-strength = <2>; + }; +}; + +&ufs_mem_hc { + vcc-supply = <&vreg_l24a>; + vccq2-supply = <&vreg_l11a>; + vcc-max-microamp = <600000>; + vccq2-max-microamp = <600000>; + + status = "okay"; +}; + +&ufs_mem_phy { + vdda-phy-supply = <&vreg_l4a>; + vdda-pll-supply = <&vreg_l10a>; + vdda-phy-max-microamp = <51400>; + vdda-pll-max-microamp = <14200>; + vddp-ref-clk-supply = <&vreg_l18a>; + + status = "okay"; +}; + +&tlmm { + gpio-reserved-ranges = <22 2>, <28 6>; +}; + +&usb3 { + status = "okay"; +}; + +&usb3_dwc3 { + extcon = <&extcon_usb>; +};
This commit implements support for the Xiaomi Mi A3 (xiaomi-laurel_sprout). Here's a summary on what's working. - dmesg output to bootloader preconfigured display - USB - UFS - SMD RPM regulators Signed-off-by: Lux Aliaga <they@mint.lgbt> --- arch/arm64/boot/dts/qcom/Makefile | 1 + .../dts/qcom/sm6125-xiaomi-laurel_sprout.dts | 251 ++++++++++++++++++ 2 files changed, 252 insertions(+) create mode 100644 arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel_sprout.dts