Message ID | 20230818-topic-10v-v1-5-dbb6464223c6@linaro.org |
---|---|
State | New |
Headers | show |
Series | Xperia 10 V support | expand |
On 2023-08-18 17:23:28, Konrad Dybcio wrote: > 10 V is a carbon copy of the 10 IV, sans: > > - camera setup (V obviously has a new, better one) > - the phone's body and SIM/sdcard tray changed a bit > - SM5038 is gone, PMIC QGauge is used for battery monitoring > - some wires may be routed differently (e.g. i2c devices are routed to > different hosts) > - possibly some small other differences that we're about to discover > > Introduce support for PDX235, currently requiring zero changes other > than adding msm-id and board-id, which seems to be the result of Sony > (or their chinese ODM) fusing in a non-zero value in there.. > > All of the flashing and prepwork shenanigans described in > Commit 4420e60416cb ("arm64: dts: qcom: Add device tree for Sony Xperia > 10 IV") are also necessary on this device :/ > > Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> > --- > arch/arm64/boot/dts/qcom/Makefile | 1 + > .../dts/qcom/sm6375-sony-xperia-murray-pdx235.dts | 54 ++++++++++++++++++++++ I just learned that the new device actually has a slightly different board, with codename zambezi: https://github.com/sonyxperiadev/kernel-copyleft-dts/blob/68.0.A.0.xxx/somc/blair-zambezi-pdx235_common.dtsi How do you want to represent that? We could have: sm6375-sony-xperia(-common?).dtsi sm6375-sony-xperia-murray-pdx225.dts sm6375-sony-xperia-zambezi-pdx235.dts So that you can still keep 95% of the common configuration in the same file, but without pretending that pdx235 uses the murray board. - Marijn > .../boot/dts/qcom/sm6375-sony-xperia-murray.dtsi | 2 +- > 3 files changed, 56 insertions(+), 1 deletion(-) > > diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile > index 2cca20563a1d..832b4acb20dd 100644 > --- a/arch/arm64/boot/dts/qcom/Makefile > +++ b/arch/arm64/boot/dts/qcom/Makefile > @@ -196,6 +196,7 @@ 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) += sm6375-sony-xperia-murray-pdx225.dtb > +dtb-$(CONFIG_ARCH_QCOM) += sm6375-sony-xperia-murray-pdx235.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb > dtb-$(CONFIG_ARCH_QCOM) += sm8150-microsoft-surface-duo.dtb > diff --git a/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx235.dts b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx235.dts > new file mode 100644 > index 000000000000..80a61961e5c5 > --- /dev/null > +++ b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx235.dts > @@ -0,0 +1,54 @@ > +// SPDX-License-Identifier: BSD-3-Clause > +/* > + * Copyright (c) 2023, Konrad Dybcio <konrad.dybcio@linaro.org> > + */ > + > +/dts-v1/; > + > +#include <dt-bindings/arm/qcom,ids.h> > + > +#include "sm6375-sony-xperia-murray.dtsi" > + > +/ { > + model = "Sony Xperia 10 V"; > + compatible = "sony,pdx235", "qcom,sm6375"; > + chassis-type = "handset"; > + qcom,msm-id = <QCOM_ID_SM6375 0x10000>; > + qcom,board-id = <QCOM_BOARD_ID(QRD, 0x1, 0x0) 0x0>; > + > + aliases { > + i2c0 = &i2c0; > + i2c1 = &i2c7; > + i2c2 = &i2c10; > + i2c3 = &i2c8; > + }; > +}; > + > +&i2c0 { > + clock-frequency = <400000>; > + status = "okay"; > + > + /* NXP SN2x0 NFC @ 28. (or on &spi2.. TBD!) */ > +}; > + > +&i2c7 { > + clock-frequency = <400000>; > + status = "okay"; > + > + /* Awinic AW882xx audio amplifier ("channel 0") @ 34 */ > +}; > + > +/* I2C8 inherited from common DTSI */ > + > +&i2c10 { > + clock-frequency = <400000>; > + status = "okay"; > + > + /* Awinic AW882xx audio amplifier ("channel 1") @ 34 */ > + /* PM8008 @ 8, 9 */ > +}; > + > +/* For reasons yet unknown, it's broken on the mark V.. */ > +&touchscreen { > + status = "fail"; > +}; > diff --git a/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi > index 072f7ce2a7f6..243e60d9bbb5 100644 > --- a/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi > +++ b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi > @@ -123,7 +123,7 @@ &i2c8 { > clock-frequency = <400000>; > status = "okay"; > > - touchscreen@48 { > + touchscreen: touchscreen@48 { > compatible = "samsung,s6sy761"; > reg = <0x48>; > interrupt-parent = <&tlmm>; > > -- > 2.41.0 >
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile index 2cca20563a1d..832b4acb20dd 100644 --- a/arch/arm64/boot/dts/qcom/Makefile +++ b/arch/arm64/boot/dts/qcom/Makefile @@ -196,6 +196,7 @@ 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) += sm6375-sony-xperia-murray-pdx225.dtb +dtb-$(CONFIG_ARCH_QCOM) += sm6375-sony-xperia-murray-pdx235.dtb dtb-$(CONFIG_ARCH_QCOM) += sm7225-fairphone-fp4.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8150-hdk.dtb dtb-$(CONFIG_ARCH_QCOM) += sm8150-microsoft-surface-duo.dtb diff --git a/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx235.dts b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx235.dts new file mode 100644 index 000000000000..80a61961e5c5 --- /dev/null +++ b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray-pdx235.dts @@ -0,0 +1,54 @@ +// SPDX-License-Identifier: BSD-3-Clause +/* + * Copyright (c) 2023, Konrad Dybcio <konrad.dybcio@linaro.org> + */ + +/dts-v1/; + +#include <dt-bindings/arm/qcom,ids.h> + +#include "sm6375-sony-xperia-murray.dtsi" + +/ { + model = "Sony Xperia 10 V"; + compatible = "sony,pdx235", "qcom,sm6375"; + chassis-type = "handset"; + qcom,msm-id = <QCOM_ID_SM6375 0x10000>; + qcom,board-id = <QCOM_BOARD_ID(QRD, 0x1, 0x0) 0x0>; + + aliases { + i2c0 = &i2c0; + i2c1 = &i2c7; + i2c2 = &i2c10; + i2c3 = &i2c8; + }; +}; + +&i2c0 { + clock-frequency = <400000>; + status = "okay"; + + /* NXP SN2x0 NFC @ 28. (or on &spi2.. TBD!) */ +}; + +&i2c7 { + clock-frequency = <400000>; + status = "okay"; + + /* Awinic AW882xx audio amplifier ("channel 0") @ 34 */ +}; + +/* I2C8 inherited from common DTSI */ + +&i2c10 { + clock-frequency = <400000>; + status = "okay"; + + /* Awinic AW882xx audio amplifier ("channel 1") @ 34 */ + /* PM8008 @ 8, 9 */ +}; + +/* For reasons yet unknown, it's broken on the mark V.. */ +&touchscreen { + status = "fail"; +}; diff --git a/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi index 072f7ce2a7f6..243e60d9bbb5 100644 --- a/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi +++ b/arch/arm64/boot/dts/qcom/sm6375-sony-xperia-murray.dtsi @@ -123,7 +123,7 @@ &i2c8 { clock-frequency = <400000>; status = "okay"; - touchscreen@48 { + touchscreen: touchscreen@48 { compatible = "samsung,s6sy761"; reg = <0x48>; interrupt-parent = <&tlmm>;
10 V is a carbon copy of the 10 IV, sans: - camera setup (V obviously has a new, better one) - the phone's body and SIM/sdcard tray changed a bit - SM5038 is gone, PMIC QGauge is used for battery monitoring - some wires may be routed differently (e.g. i2c devices are routed to different hosts) - possibly some small other differences that we're about to discover Introduce support for PDX235, currently requiring zero changes other than adding msm-id and board-id, which seems to be the result of Sony (or their chinese ODM) fusing in a non-zero value in there.. All of the flashing and prepwork shenanigans described in Commit 4420e60416cb ("arm64: dts: qcom: Add device tree for Sony Xperia 10 IV") are also necessary on this device :/ Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org> --- arch/arm64/boot/dts/qcom/Makefile | 1 + .../dts/qcom/sm6375-sony-xperia-murray-pdx235.dts | 54 ++++++++++++++++++++++ .../boot/dts/qcom/sm6375-sony-xperia-murray.dtsi | 2 +- 3 files changed, 56 insertions(+), 1 deletion(-)