Re: [PATCH 4/5] arm64: dts: qcom: Add base sm8750 dtsi and mtp and qrd dts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 21, 2024 at 04:21:13PM GMT, Melody Olvera wrote:

2 "and", 2 "dts" and a "dtsi" in the subject. I'd prefer a more
succinct:

"arm64: dts: qcom: Add SM8750 platform, mtp and qrd"

> Add base dtsi for the sm8750 SoC describing the CPUs, GCC and
> RPMHCC clock controllers, geni UART, interrupt controller, TLMM,
> reserved memory, interconnects, regulator, and SMMU nodes. Also add
> MTP and QRD board dts files for sm8750.
> 

Nice.

> Co-developed-by: Taniya Das <quic_tdas@xxxxxxxxxxx>
> Signed-off-by: Taniya Das <quic_tdas@xxxxxxxxxxx>
> Co-developed-by: Jishnu Prakash <quic_jprakash@xxxxxxxxxxx>
> Signed-off-by: Jishnu Prakash <quic_jprakash@xxxxxxxxxxx>
> Co-developed-by: Raviteja Laggyshetty <quic_rlaggysh@xxxxxxxxxxx>
> Signed-off-by: Raviteja Laggyshetty <quic_rlaggysh@xxxxxxxxxxx>
> Signed-off-by: Melody Olvera <quic_molvera@xxxxxxxxxxx>
> ---
>  arch/arm64/boot/dts/qcom/Makefile       |    2 +
>  arch/arm64/boot/dts/qcom/sm8750-mtp.dts |  968 ++++++++
>  arch/arm64/boot/dts/qcom/sm8750-qrd.dts |  965 ++++++++
>  arch/arm64/boot/dts/qcom/sm8750.dtsi    | 2903 +++++++++++++++++++++++
>  4 files changed, 4838 insertions(+)

Most reviewers will prefer the platform and individual devices to be
added in separate patches, to not hit 5kloc. I don't mind it...

>  create mode 100644 arch/arm64/boot/dts/qcom/sm8750-mtp.dts
>  create mode 100644 arch/arm64/boot/dts/qcom/sm8750-qrd.dts
>  create mode 100644 arch/arm64/boot/dts/qcom/sm8750.dtsi
> 
> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
> index 065bb19481c1..3bedfa6b37f2 100644
> --- a/arch/arm64/boot/dts/qcom/Makefile
> +++ b/arch/arm64/boot/dts/qcom/Makefile
> @@ -269,6 +269,8 @@ dtb-$(CONFIG_ARCH_QCOM)	+= sm8650-hdk-display-card.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm8650-hdk.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm8650-mtp.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= sm8650-qrd.dtb
> +dtb-$(CONFIG_ARCH_QCOM)	+= sm8750-mtp.dtb
> +dtb-$(CONFIG_ARCH_QCOM)	+= sm8750-qrd.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= x1e78100-lenovo-thinkpad-t14s.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= x1e80100-asus-vivobook-s15.dtb
>  dtb-$(CONFIG_ARCH_QCOM)	+= x1e80100-crd.dtb
> diff --git a/arch/arm64/boot/dts/qcom/sm8750-mtp.dts b/arch/arm64/boot/dts/qcom/sm8750-mtp.dts
> new file mode 100644
> index 000000000000..e1a94dc76e2f
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sm8750-mtp.dts
> @@ -0,0 +1,968 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
> + */
> +
> +/dts-v1/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/leds/common.h>
> +#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
> +#include "sm8750.dtsi"
> +#include "pm8010.dtsi"
> +#include "pm8550.dtsi"
> +#define PMK8550VE_SID 8
> +#include "pm8550ve.dtsi"
> +#include "pmd8028.dtsi"
> +#include "pmih0108.dtsi"
> +#include "pmk8550.dtsi"
> +#include "pmr735d_a.dtsi"
> +
> +/ {
> +	model = "Qualcomm Technologies, Inc. SM8750 MTP";
> +	compatible = "qcom,sm8750-mtp", "qcom,sm8750";

Can we please here have a:

	chassis-type = "handset";

> +
[..]
> diff --git a/arch/arm64/boot/dts/qcom/sm8750-qrd.dts b/arch/arm64/boot/dts/qcom/sm8750-qrd.dts
> new file mode 100644
> index 000000000000..af0174d95e3a
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sm8750-qrd.dts
> @@ -0,0 +1,965 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
> + */
> +
> +/dts-v1/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/leds/common.h>
> +#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
> +#include "sm8750.dtsi"
> +#include "pm8010.dtsi"
> +#include "pm8550.dtsi"
> +#define PMK8550VE_SID 8
> +#include "pm8550ve.dtsi"
> +#include "pmd8028.dtsi"
> +#include "pmih0108.dtsi"
> +#include "pmk8550.dtsi"
> +#include "pmr735d_a.dtsi"
> +
> +/ {
> +	model = "Qualcomm Technologies, Inc. SM8750 QRD";
> +	compatible = "qcom,sm8750-qrd", "qcom,sm8750";

chassis-type please.

> +
> +	aliases {
> +		serial0 = &uart7;
> +	};
[..]
> diff --git a/arch/arm64/boot/dts/qcom/sm8750.dtsi b/arch/arm64/boot/dts/qcom/sm8750.dtsi
> new file mode 100644
> index 000000000000..98ab82caa007
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/sm8750.dtsi
> @@ -0,0 +1,2903 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
> + */
> +
> +#include <dt-bindings/clock/qcom,rpmh.h>
> +#include <dt-bindings/clock/qcom,sm8750-gcc.h>
> +#include <dt-bindings/clock/qcom,sm8750-tcsr.h>
> +#include <dt-bindings/dma/qcom-gpi.h>
> +#include <dt-bindings/interconnect/qcom,icc.h>
> +#include <dt-bindings/interconnect/qcom,sm8750-rpmh.h>
> +#include <dt-bindings/interrupt-controller/arm-gic.h>
> +#include <dt-bindings/power/qcom,rpmhpd.h>
> +#include <dt-bindings/power/qcom-rpmpd.h>
> +#include <dt-bindings/soc/qcom,rpmh-rsc.h>
> +
> +/ {
> +	interrupt-parent = <&intc>;
> +
> +	#address-cells = <2>;
> +	#size-cells = <2>;
> +
> +	chosen { };

You should be able to omit this...

> +
> +	cpus {
> +		#address-cells = <2>;
> +		#size-cells = <0>;
> +
> +		CPU0: cpu@0 {

I just merged a cleanup series from Krzysztof, making all labels lower
case. So, I'd unfortunately like you to do the same...

> +			device_type = "cpu";
> +			compatible = "qcom,oryon";
> +			reg = <0x0 0x0>;
> +			enable-method = "psci";
> +			next-level-cache = <&L2_0>;
> +			power-domains = <&CPU_PD0>;
> +			power-domain-names = "psci";
> +			cpu-idle-states = <&CLUSTER0_C4>;
> +
> +			L2_0: l2-cache {
> +				compatible = "cache";
> +				cache-level = <2>;
> +				cache-unified;
> +			};
> +		};
[..]
> +	memory@a0000000 {
> +		device_type = "memory";
> +		/* We expect the bootloader to fill in the size */
> +		reg = <0x0 0xa0000000 0x0 0x0>;

gunyah_hyp_mem below is at 0x80000000, so I presume it's not just size
that's being updated?

> +	};
> +
[..]
> +	soc: soc@0 {
[..]
> +		};
> +
> +

Extra newline, didn't checkpatch --strict complain about that/

> +		cnoc_main: interconnect@1500000 {
> +			compatible = "qcom,sm8750-cnoc-main";
> +			reg = <0x0 0x1500000 0x0 0x16080>;

Until here you padded the base address to 8 digits, making it easy for
humans to keep nodes sorted (by address). Please correct the remaining
7-digit nodes as well, to make it easier for future contributors to get
their ordering right.

> +			qcom,bcm-voters = <&apps_bcm_voter>;
> +			#interconnect-cells = <2>;
> +		};
> +
> +		config_noc: interconnect@1600000 {
> +			compatible = "qcom,sm8750-cnoc-cfg";
> +			reg = <0x0 0x1600000 0x0 0x6200>;
> +			qcom,bcm-voters = <&apps_bcm_voter>;
> +			#interconnect-cells = <2>;
> +		};
[..]
> +		apps_rsc: rsc@16500000 {
> +			compatible = "qcom,rpmh-rsc";
> +			reg = <0x0 0x16500000 0x0 0x10000>,
> +			      <0x0 0x16510000 0x0 0x10000>,
> +			      <0x0 0x16520000 0x0 0x10000>;
> +			reg-names = "drv-0",
> +				    "drv-1",
> +				    "drv-2";
> +			qcom,drv-count = <3>;
> +
> +			interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
> +				     <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
> +				     <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
> +			qcom,tcs-offset = <0xd00>;
> +			qcom,drv-id = <2>;
> +			qcom,tcs-config = <ACTIVE_TCS    3>, <SLEEP_TCS     2>,
> +					  <WAKE_TCS      2>, <CONTROL_TCS   0>;

Is 0 CONTROL_TCSs correct?

> +
> +			label = "apps_rsc";
> +

Regards,
Bjorn




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux