]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
arm64: dts: qcom: kodiak: add coresight nodes
authorJie Gan <jie.gan@oss.qualcomm.com>
Tue, 4 Nov 2025 05:48:14 +0000 (13:48 +0800)
committerBjorn Andersson <andersson@kernel.org>
Thu, 6 Nov 2025 20:04:26 +0000 (14:04 -0600)
Add TPDM, TPDA, CTI and funnel coresight devices for AOSS and QDSS
blocks.

Signed-off-by: Jie Gan <jie.gan@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20251104-add-coresight-nodes-for-sc7280-v2-1-c67fa3890c2a@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/kodiak.dtsi

index 3ef61af2ed8a87d03e82131fcd8848f0a1bc509c..ccbb57f7745391b5e6fea23559192c784e273e5c 100644 (file)
                        };
                };
 
+               tpda@6004000 {
+                       compatible = "qcom,coresight-tpda", "arm,primecell";
+                       reg = <0x0 0x06004000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       in-ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+
+                               port@1c {
+                                       reg = <0x1c>;
+
+                                       qdss_tpda_in28: endpoint {
+                                               remote-endpoint = <&spdm_tpdm_out>;
+                                       };
+                               };
+                       };
+
+                       out-ports {
+                               port {
+                                       qdss_tpda_out: endpoint {
+                                               remote-endpoint = <&qdss_dl_funnel_in0>;
+                                       };
+                               };
+                       };
+               };
+
+               funnel@6005000 {
+                       compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
+                       reg = <0x0 0x06005000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       in-ports {
+                               port {
+                                       qdss_dl_funnel_in0: endpoint {
+                                               remote-endpoint = <&qdss_tpda_out>;
+                                       };
+                               };
+                       };
+
+                       out-ports {
+                               port {
+                                       qdss_dl_funnel_out: endpoint {
+                                               remote-endpoint = <&funnel0_in6>;
+                                       };
+                               };
+                       };
+               };
+
+               tpdm@600f000 {
+                       compatible = "qcom,coresight-tpdm", "arm,primecell";
+                       reg = <0x0 0x0600f000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       qcom,cmb-element-bits = <32>;
+                       qcom,cmb-msrs-num = <32>;
+
+                       out-ports {
+                               port {
+                                       spdm_tpdm_out: endpoint {
+                                               remote-endpoint = <&qdss_tpda_in28>;
+                                       };
+                               };
+                       };
+               };
+
+               cti@6010000 {
+                       compatible = "arm,coresight-cti", "arm,primecell";
+                       reg = <0x0 0x06010000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+               };
+
                funnel@6041000 {
                        compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
                        reg = <0 0x06041000 0 0x1000>;
                                #address-cells = <1>;
                                #size-cells = <0>;
 
+                               port@6 {
+                                       reg = <6>;
+
+                                       funnel0_in6: endpoint {
+                                               remote-endpoint = <&qdss_dl_funnel_out>;
+                                       };
+                               };
+
                                port@7 {
                                        reg = <7>;
                                        funnel0_in7: endpoint {
                        };
                };
 
+               cti@6b00000 {
+                       compatible = "arm,coresight-cti", "arm,primecell";
+                       reg = <0x0 0x06b00000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+               };
+
+               cti@6b01000 {
+                       compatible = "arm,coresight-cti", "arm,primecell";
+                       reg = <0x0 0x06b01000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+               };
+
+               cti@6b02000 {
+                       compatible = "arm,coresight-cti", "arm,primecell";
+                       reg = <0x0 0x06b02000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+               };
+
+               cti@6b03000 {
+                       compatible = "arm,coresight-cti", "arm,primecell";
+                       reg = <0x0 0x06b03000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+               };
+
                funnel@6b04000 {
                        compatible = "arm,coresight-dynamic-funnel", "arm,primecell";
                        reg = <0 0x06b04000 0 0x1000>;
                                #address-cells = <1>;
                                #size-cells = <0>;
 
+                               port@6 {
+                                       reg = <6>;
+
+                                       swao_funnel_in6: endpoint {
+                                               remote-endpoint = <&aoss_tpda_out>;
+                                       };
+                               };
+
                                port@7 {
                                        reg = <7>;
                                        swao_funnel_in: endpoint {
                        };
                };
 
+               tpda@6b08000 {
+                       compatible = "qcom,coresight-tpda", "arm,primecell";
+                       reg = <0x0 0x06b08000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       in-ports {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+
+                               port@0 {
+                                       reg = <0>;
+
+                                       aoss_tpda_in0: endpoint {
+                                               remote-endpoint = <&swao_prio0_tpdm_out>;
+                                       };
+                               };
+
+                               port@1 {
+                                       reg = <1>;
+
+                                       aoss_tpda_in1: endpoint {
+                                               remote-endpoint = <&swao_prio1_tpdm_out>;
+                                       };
+                               };
+
+                               port@2 {
+                                       reg = <2>;
+
+                                       aoss_tpda_in2: endpoint {
+                                               remote-endpoint = <&swao_prio2_tpdm_out>;
+                                       };
+                               };
+
+                               port@3 {
+                                       reg = <3>;
+
+                                       aoss_tpda_in3: endpoint {
+                                               remote-endpoint = <&swao_prio3_tpdm_out>;
+                                       };
+                               };
+
+                               port@4 {
+                                       reg = <4>;
+
+                                       aoss_tpda_in4: endpoint {
+                                               remote-endpoint = <&swao_tpdm_out>;
+                                       };
+                               };
+                       };
+
+                       out-ports {
+                               port {
+                                       aoss_tpda_out: endpoint {
+                                               remote-endpoint = <&swao_funnel_in6>;
+                                       };
+                               };
+                       };
+               };
+
+               tpdm@6b09000 {
+                       compatible = "qcom,coresight-tpdm", "arm,primecell";
+                       reg = <0x0 0x06b09000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       qcom,cmb-element-bits = <64>;
+                       qcom,cmb-msrs-num = <32>;
+
+                       out-ports {
+                               port {
+                                       swao_prio0_tpdm_out: endpoint {
+                                               remote-endpoint = <&aoss_tpda_in0>;
+                                       };
+                               };
+                       };
+               };
+
+               tpdm@6b0a000 {
+                       compatible = "qcom,coresight-tpdm", "arm,primecell";
+                       reg = <0x0 0x06b0a000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       qcom,cmb-element-bits = <64>;
+                       qcom,cmb-msrs-num = <32>;
+
+                       out-ports {
+                               port {
+                                       swao_prio1_tpdm_out: endpoint {
+                                               remote-endpoint = <&aoss_tpda_in1>;
+                                       };
+                               };
+                       };
+               };
+
+               tpdm@6b0b000 {
+                       compatible = "qcom,coresight-tpdm", "arm,primecell";
+                       reg = <0x0 0x06b0b000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       qcom,cmb-element-bits = <64>;
+                       qcom,cmb-msrs-num = <32>;
+
+                       out-ports {
+                               port {
+                                       swao_prio2_tpdm_out: endpoint {
+                                               remote-endpoint = <&aoss_tpda_in2>;
+                                       };
+                               };
+                       };
+               };
+
+               tpdm@6b0c000 {
+                       compatible = "qcom,coresight-tpdm", "arm,primecell";
+                       reg = <0x0 0x06b0c000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       qcom,cmb-element-bits = <64>;
+                       qcom,cmb-msrs-num = <32>;
+
+                       out-ports {
+                               port {
+                                       swao_prio3_tpdm_out: endpoint {
+                                               remote-endpoint = <&aoss_tpda_in3>;
+                                       };
+                               };
+                       };
+               };
+
+               tpdm@6b0d000 {
+                       compatible = "qcom,coresight-tpdm", "arm,primecell";
+                       reg = <0x0 0x06b0d000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+
+                       qcom,dsb-element-bits = <32>;
+                       qcom,dsb-msrs-num = <32>;
+
+                       out-ports {
+                               port {
+                                       swao_tpdm_out: endpoint {
+                                               remote-endpoint = <&aoss_tpda_in4>;
+                                       };
+                               };
+                       };
+               };
+
+               cti@6b11000 {
+                       compatible = "arm,coresight-cti", "arm,primecell";
+                       reg = <0x0 0x06b11000 0x0 0x1000>;
+
+                       clocks = <&aoss_qmp>;
+                       clock-names = "apb_pclk";
+               };
+
                etm@7040000 {
                        compatible = "arm,coresight-etm4x", "arm,primecell";
                        reg = <0 0x07040000 0 0x1000>;