On 05/05/2023 19:12, Dang Huynh wrote: > The F(x)tec Pro1X is a mobile phone released by FX Technologies Ltd > in 2022. > > The phone is exactly the same as the Pro1 released in 2019 with some > changes: > - MSM8998 -> SM6115 > - Camera button is no longer multistate > - Only one 48MP back camera > - A new keyboard layout picked by the community. > > This commit has the following features working: > - Display (using simplefb) > - UFS > - Power and volume buttons > - Pinctrl > - RPM Regulators > - USB (Device Mode) > > To get a successful boot run: > > cat arch/arm64/boot/Image.gz arch/arm64/boot/dts/qcom/\ > sm6115-fxtec-pro1x.dtb > .Image.gz-dtb > > mkbootimg --kernel .Image.gz-dtb \ > --ramdisk initrd.img \ > --base 0x0 \ > --kernel_offset 0x8000 \ > --ramdisk_offset 0x1000000 \ > --second_offset 0xf00000 \ > --tags_offset 0x100 \ > --pagesize 4096 \ > --cmdline "CMDLINE HERE" \ > -o qx1050-boot.img > > fastboot flash boot qx1050-boot.img > fastboot erase dtbo > fastboot reboot > > Signed-off-by: Dang Huynh <danct12@xxxxxxxxxx> > --- > arch/arm64/boot/dts/qcom/Makefile | 1 + > arch/arm64/boot/dts/qcom/sm6115-fxtec-pro1x.dts | 248 ++++++++++++++++++++++++ > 2 files changed, 249 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile > index d42c59572ace..e311ba675f35 100644 > --- a/arch/arm64/boot/dts/qcom/Makefile > +++ b/arch/arm64/boot/dts/qcom/Makefile > @@ -174,6 +174,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) += sm4250-oneplus-billie2.dtb > +dtb-$(CONFIG_ARCH_QCOM) += sm6115-fxtec-pro1x.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm6115p-lenovo-j606f.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm6125-sony-xperia-seine-pdx201.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm6125-xiaomi-laurel-sprout.dtb > diff --git a/arch/arm64/boot/dts/qcom/sm6115-fxtec-pro1x.dts b/arch/arm64/boot/dts/qcom/sm6115-fxtec-pro1x.dts > new file mode 100644 > index 000000000000..a9ff1d9534ae > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/sm6115-fxtec-pro1x.dts > @@ -0,0 +1,248 @@ > +// SPDX-License-Identifier: GPL-2.0-only > +/* > + * Copyright (c) 2023, Dang Huynh <danct12@xxxxxxxxxx> > + */ > + > +/dts-v1/; > + > +#include "sm6115.dtsi" > +#include "pm6125.dtsi" > + > +/ { > + model = "F(x)tec Pro1X (QX1050)"; > + compatible = "fxtec,pro1x", "qcom,sm6115"; > + chassis-type = "handset"; > + > + qcom,msm-id = <417 0x10000>, <444 0x10000>; > + qcom,board-id = <34 0>; > + > + chosen { > + #address-cells = <2>; > + #size-cells = <2>; > + ranges; > + > + framebuffer0: framebuffer@5c000000 { > + compatible = "simple-framebuffer"; > + reg = <0 0x5c000000 0 (1080 * 2160 * 4)>; > + width = <1080>; > + height = <2160>; > + stride = <(1080 * 4)>; > + format = "a8r8g8b8"; > + clocks = <&gcc GCC_DISP_HF_AXI_CLK>; > + }; > + }; > + > + gpio-keys { > + compatible = "gpio-keys"; > + > + pinctrl-names = "default"; > + pinctrl-0 = <&vol_up_n>; > + > + key-volume-up { > + label = "Volume Up"; > + linux,code = <KEY_VOLUMEUP>; > + gpios = <&pm6125_gpios 5 GPIO_ACTIVE_LOW>; > + debounce-interval = <15>; > + linux,can-disable; > + gpio-key,wakeup; > + }; > + }; > +}; > + > +&dispcc { > + /* HACK: disable until a panel driver is ready to retain simplefb */ > + status = "disabled"; > +}; > + > +&pm6125_gpios { > + vol_up_n: vol-up-n-state { > + pins = "gpio5"; > + function = "normal"; > + power-source = <0>; > + bias-pull-up; > + input-enable; > + }; > +}; > + > +&pon_pwrkey { > + status = "okay"; > +}; > + > +&pon_resin { > + linux,code = <KEY_VOLUMEDOWN>; > + status = "okay"; > +}; > + > +&rpm_requests { > + pm6125-regulators { No improvements. This is a friendly reminder during the review process. It seems my previous comments were not fully addressed. Maybe my feedback got lost between the quotes, maybe you just forgot to apply it. Please go back to the previous discussion and either implement all requested changes or keep discussing them. Thank you. Best regards, Krzysztof