mbox series

[0/5] Xperia 10 V support

Message ID 20230818-topic-10v-v1-0-dbb6464223c6@linaro.org
Headers show
Series Xperia 10 V support | expand

Message

Konrad Dybcio Aug. 18, 2023, 3:23 p.m. UTC
This series brings support for the new Sony Xperia 10 V and with it a
couple of improvements to sm6375.

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
---
Konrad Dybcio (5):
      dt-bindings: qcom: Add Sony Xperia 10 V
      arm64: dts: qcom: sm6375: Fix I2C10 GPIO function
      arm64: dts: qcom: sm6375: Hook up I2C7 GPIOs
      arm64: dts: qcom: sm6375-murray: Separate out common parts
      arm64: dts: qcom: Add Sony Xperia 10 V (PDX235) support

 Documentation/devicetree/bindings/arm/qcom.yaml    |   2 +
 arch/arm64/boot/dts/qcom/Makefile                  |   1 +
 .../dts/qcom/sm6375-sony-xperia-murray-pdx225.dts  | 421 +-------------------
 .../dts/qcom/sm6375-sony-xperia-murray-pdx235.dts  |  54 +++
 .../boot/dts/qcom/sm6375-sony-xperia-murray.dtsi   | 427 +++++++++++++++++++++
 arch/arm64/boot/dts/qcom/sm6375.dtsi               |  11 +-
 6 files changed, 495 insertions(+), 421 deletions(-)
---
base-commit: 7271b2a530428b879443b274c191b34536a4ea11
change-id: 20230818-topic-10v-0cc56efaed42

Best regards,

Comments

Marijn Suijten Aug. 23, 2023, 6:03 p.m. UTC | #1
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
>