On 01/09/2022 10:24, Iskren Chernev wrote: > Add initial support for OnePlus Nord N100, based on SM4250. Currently > working: > - boots > - usb > - buildin flash storage (UFS) > - SD card reader > > Signed-off-by: Iskren Chernev <iskren.chernev@xxxxxxxxx> > --- > .../boot/dts/qcom/sm4250-oneplus-billie2.dts | 240 ++++++++++++++++++ > 1 file changed, 240 insertions(+) > create mode 100644 arch/arm64/boot/dts/qcom/sm4250-oneplus-billie2.dts > > diff --git a/arch/arm64/boot/dts/qcom/sm4250-oneplus-billie2.dts b/arch/arm64/boot/dts/qcom/sm4250-oneplus-billie2.dts > new file mode 100644 > index 000000000000..c1cf0288aa5f > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/sm4250-oneplus-billie2.dts > @@ -0,0 +1,240 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/* > + * Copyright (c) 2021, Iskren Chernev <iskren.chernev@xxxxxxxxx> > + */ > + > +/dts-v1/; > + > +#include "sm4250.dtsi" > + > +/ { > + model = "OnePlus Nord N100"; > + compatible = "oneplus,billie2", "qcom,sm4250"; > + > + /* required for bootloader to select correct board */ > + qcom,msm-id = <0x1a1 0x10000 0x1bc 0x10000>; > + qcom,board-id = <0x1000b 0x00>; > + > + aliases { > + }; > + > + chosen { > + bootargs = "earlycon=tty0 console=tty0 clk_ignore_unused pd_ignore_unused"; No bootargs. They are not suitable for wide-use. > + > + #address-cells = <2>; > + #size-cells = <2>; > + ranges; > + > + stdout-path = "framebuffer0"; > + > + framebuffer0: framebuffer@9d400000 { > + compatible = "simple-framebuffer"; > + reg = <0 0x5c000000 0 (1600 * 720 * 4)>; > + width = <720>; > + height = <1600>; > + stride = <(720 * 4)>; > + format = "a8r8g8b8"; > + status= "okay"; No need for status in new nodes. > + }; > + }; > + > + reserved-memory { > + mtp_mem: memory@cc300000 { > + reg = <0x00 0xcc300000 0x00 0xb00000>; > + no-map; > + }; > + > + param_mem: memory@cc200000 { > + reg = <0x00 0xcc200000 0x00 0x100000>; > + no-map; > + }; > + > + bootloader_log_mem: memory@5fff7000 { > + reg = <0x00 0x5fff7000 0x00 0x8000>; > + no-map; > + }; > + > + ramoops@cbe00000 { > + compatible = "ramoops"; > + reg = <0x0 0xcbe00000 0x0 0x400000>; > + record-size = <0x40000>; > + pmsg-size = <0x200000>; > + console-size = <0x40000>; > + ftrace-size = <0x40000>; > + }; > + }; > +}; > + > +&usb3 { > + status = "okay"; > +}; > + > +&hsusb_phy { > + status = "okay"; Status is the last property. Also in other places. > + vdd-supply = <&vreg_l4a>; > + vdda-pll-supply = <&vreg_l12a>; > + vdda-phy-dpdm-supply = <&vreg_l15a>; > + > +}; > + > +&tlmm { > + gpio-reserved-ranges = <14 4>; > +}; > + > +&sdhc_2 { > + status = "okay"; > + vmmc-supply = <&vreg_l22a>; > + vqmmc-supply = <&vreg_l5a>; > + > + cd-gpios = <&tlmm 88 GPIO_ACTIVE_HIGH>; > + > + pinctrl-names = "default", "sleep"; > + pinctrl-0 = <&sdc2_state_on>; > + pinctrl-1 = <&sdc2_state_off>; > +}; > + > +&ufs_mem_hc { > + status = "okay"; > + vcc-supply = <&vreg_l24a>; > + vcc-max-microamp = <600000>; > + vccq2-supply = <&vreg_l11a>; > + vccq2-max-microamp = <600000>; > +}; > + > +&ufs_mem_phy { > + status = "okay"; > + vdda-phy-supply = <&vreg_l4a>; > + vdda-pll-supply = <&vreg_l12a>; > + vddp-ref-clk-supply = <&vreg_l18a>; > +}; > + > +&rpm_requests { > + pm6125-regulators { regulators > + compatible = "qcom,rpm-pm6125-regulators"; > + Best regards, Krzysztof