Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 638948ef authored by Shashank Mittal's avatar Shashank Mittal
Browse files

ARM: dts: msm: add TPDM/TPDA devices for msmcobalt



Add TPDM and TPDA devices for msmcobalt target. These devices can be
used to trace various hardware components.

Change-Id: I1f9316636a11794d89ea81cf99a0fba7d77c9c96
Signed-off-by: default avatarShashank Mittal <mittals@codeaurora.org>
parent 6cacf5c9
Loading
Loading
Loading
Loading
+553 −0
Original line number Diff line number Diff line
@@ -165,6 +165,22 @@
				};
			};
			port@1 {
				reg = <3>;
				funnel_in0_in_funnel_spss: endpoint {
					slave-mode;
					remote-endpoint =
						<&funnel_spss_out_funnel_in0>;
				};
			};
			port@2 {
				reg = <6>;
				funnel_in0_in_funnel_qatb: endpoint {
					slave-mode;
					remote-endpoint =
						<&funnel_qatb_out_funnel_in0>;
				};
			};
			port@3 {
				reg = <7>;
				funnel_in0_in_stm: endpoint {
					slave-mode;
@@ -199,6 +215,22 @@
				};
			};
			port@1 {
				reg = <2>;
				funnel_in1_in_tpda_nav: endpoint {
					slave-mode;
					remote-endpoint =
					    <&tpda_nav_out_funnel_in1>;
				};
			};
			port@2 {
				reg = <3>;
				funnel_in1_in_tpda_mss: endpoint {
					slave-mode;
					remote-endpoint =
					    <&tpda_mss_out_funnel_in1>;
				};
			};
			port@3 {
				reg = <6>;
				funnel_in1_in_funnel_apss_merg: endpoint {
					slave-mode;
@@ -241,6 +273,22 @@
					    <&funnel_apss_out_funnel_apss_merg>;
				};
			};
			port@2 {
				reg = <1>;
				funnel_apss_merg_in_tpda_olc: endpoint {
					slave-mode;
					remote-endpoint =
					    <&tpda_olc_out_funnel_apss_merg>;
				};
			};
			port@3 {
				reg = <3>;
				funnel_apss_merg_in_tpda_apss: endpoint {
					slave-mode;
					remote-endpoint =
					    <&tpda_apss_out_funnel_apss_merg>;
				};
			};
		};
	};

@@ -811,4 +859,509 @@
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";
	};

	funnel_qatb: funnel@6005000 {
		compatible = "arm,primecell";
		arm,primecell-periphid = <0x0003b908>;

		reg = <0x6005000 0x1000>;
		reg-names = "funnel-base";

		coresight-name = "coresight-funnel-qatb";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "apb_pclk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;
				funnel_qatb_out_funnel_in0: endpoint {
					remote-endpoint =
					    <&funnel_in0_in_funnel_qatb>;
				};
			};
			port@1 {
				reg = <0>;
				funnel_qatb_in_tpda: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpda_out_funnel_qatb>;
				};
			};
		};
	};

	tpda: tpda@6004000 {
		compatible = "qcom,coresight-tpda";
		reg = <0x6004000 0x1000>;
		reg-names = "tpda-base";

		coresight-name = "coresight-tpda";

		qcom,tpda-atid = <65>;
		qcom,bc-elem-size = <7 32>,
				    <9 32>;
		qcom,tc-elem-size = <3 32>,
				    <6 32>,
				    <9 32>;
		qcom,dsb-elem-size = <7 32>,
				     <9 32>;
		qcom,cmb-elem-size = <3 32>,
				     <4 32>,
				     <5 32>,
				     <9 64>;

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				tpda_out_funnel_qatb: endpoint {
					remote-endpoint =
						<&funnel_qatb_in_tpda>;
				};
			};
			port@1 {
				reg = <3>;
				tpda_in_tpdm_vsense: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_vsense_out_tpda>;
				};
			};
			port@2 {
				reg = <4>;
				tpda_in_tpdm_dcc: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_dcc_out_tpda>;
				};
			};
			port@3 {
				reg = <5>;
				tpda_in_tpdm_prng: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_prng_out_tpda>;
				};
			};
			port@4 {
				reg = <7>;
				tpda_in_tpdm_qm: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_qm_out_tpda>;
				};
			};
			port@5 {
				reg = <9>;
				tpda_in_tpdm_pimem: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_pimem_out_tpda>;
				};
			};
		};
	};

	tpdm_vsense: tpdm@7038000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7038000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-vsense";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_vsense_out_tpda: endpoint {
				remote-endpoint = <&tpda_in_tpdm_vsense>;
			};
		};
	};

	tpdm_dcc: tpdm@7054000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7054000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-dcc";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_dcc_out_tpda: endpoint {
				remote-endpoint = <&tpda_in_tpdm_dcc>;
			};
		};
	};

	tpdm_prng: tpdm@704c000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x704c000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-prng";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_prng_out_tpda: endpoint {
				remote-endpoint = <&tpda_in_tpdm_prng>;
			};
		};
	};

	tpdm_qm: tpdm@71d0000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x71d0000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-qm";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_qm_out_tpda: endpoint {
				remote-endpoint = <&tpda_in_tpdm_qm>;
			};
		};

	};

	tpdm_pimem: tpdm@7050000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7050000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-pimem";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_pimem_out_tpda: endpoint {
				remote-endpoint = <&tpda_in_tpdm_pimem>;
			};
		};

	};

	tpda_apss: tpda@7bc2000 {
		compatible = "qcom,coresight-tpda";
		reg = <0x7bc2000 0x1000>;
		reg-names = "tpda-base";

		coresight-name = "coresight-tpda-apss";

		qcom,tpda-atid = <66>;
		qcom,dsb-elem-size = <0 32>;

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				tpda_apss_out_funnel_apss_merg: endpoint {
					remote-endpoint =
					       <&funnel_apss_merg_in_tpda_apss>;
				};
			};
			port@1 {
				reg = <0>;
				tpda_apss_in_tpdm_apss: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_apss_out_tpda_apss>;
				};
			};
		};
	};

	tpdm_apss: tpdm@7bc0000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7bc0000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-apss";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_apss_out_tpda_apss: endpoint {
				remote-endpoint = <&tpda_apss_in_tpdm_apss>;
			};
		};
	};

	tpda_mss: tpda@7043000 {
		compatible = "qcom,coresight-tpda";
		reg = <0x7043000 0x1000>;
		reg-names = "tpda-base";

		coresight-name = "coresight-tpda-mss";

		qcom,tpda-atid = <67>;
		qcom,dsb-elem-size = <0 32>;
		qcom,cmb-elem-size = <0 32>;

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				tpda_mss_out_funnel_in1: endpoint {
					remote-endpoint =
						<&funnel_in1_in_tpda_mss>;
				};
			};
			port@1 {
				reg = <0>;
				tpda_mss_in_tpdm_mss: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_mss_out_tpda_mss>;
				};
			};
		};
	};

	tpdm_mss: tpdm@7042000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7042000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-mss";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_mss_out_tpda_mss: endpoint {
				remote-endpoint = <&tpda_mss_in_tpdm_mss>;
			};
		};
	};

	tpda_nav: tpda@7191000 {
		compatible = "qcom,coresight-tpda";
		reg = <0x7191000 0x1000>;
		reg-names = "tpda-base";

		coresight-name = "coresight-tpda-nav";

		qcom,tpda-atid = <68>;
		qcom,cmb-elem-size = <0 32>;

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				tpda_nav_out_funnel_in1: endpoint {
					remote-endpoint =
						<&funnel_in1_in_tpda_nav>;
				};
			};
			port@1 {
				reg = <0>;
				tpda_nav_in_tpdm_nav: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_nav_out_tpda_nav>;
				};
			};
		};
	};

	tpdm_nav: tpdm@7190000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7190000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-nav";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_nav_out_tpda_nav: endpoint {
				remote-endpoint = <&tpda_nav_in_tpdm_nav>;
			};
		};
	};

	tpda_olc: tpda@7b92000 {
		compatible = "qcom,coresight-tpda";
		reg = <0x7b92000 0x1000>;
		reg-names = "tpda-base";

		coresight-name = "coresight-tpda-olc";

		qcom,tpda-atid = <69>;
		qcom,cmb-elem-size = <0 64>;

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				tpda_olc_out_funnel_apss_merg: endpoint {
					remote-endpoint =
						<&funnel_apss_merg_in_tpda_olc>;
				};
			};
			port@1 {
				reg = <0>;
				tpda_olc_in_tpdm_olc: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_olc_out_tpda_olc>;
				};
			};
		};
	};

	tpdm_olc: tpdm@7b90000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7b90000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-olc";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_olc_out_tpda_olc: endpoint {
				remote-endpoint = <&tpda_olc_in_tpdm_olc>;
			};
		};
	};

	funnel_spss: funnel@7083000 {
		compatible = "arm,primecell";
		arm,primecell-periphid = <0x0003b908>;

		reg = <0x7083000 0x1000>;
		reg-names = "funnel-base";

		coresight-name = "coresight-funnel-spss";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "apb_pclk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;
				funnel_spss_out_funnel_in0: endpoint {
					remote-endpoint =
					    <&funnel_in0_in_funnel_spss>;
				};
			};
			port@1 {
				reg = <0>;
				funnel_spss_in_tpda_spss: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpda_spss_out_funnel_spss>;
				};
			};
		};
	};

	tpda_spss: tpda@7082000 {
		compatible = "qcom,coresight-tpda";
		reg = <0x7082000 0x1000>;
		reg-names = "tpda-base";

		coresight-name = "coresight-tpda-spss";

		qcom,tpda-atid = <70>;
		qcom,dsb-elem-size = <0 32>;

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		ports {
			#address-cells = <1>;
			#size-cells = <0>;
			port@0 {
				reg = <0>;
				tpda_spss_out_funnel_spss: endpoint {
					remote-endpoint =
						<&funnel_spss_in_tpda_spss>;
				};
			};
			port@1 {
				reg = <0>;
				tpda_spss_in_tpdm_spss: endpoint {
					slave-mode;
					remote-endpoint =
						<&tpdm_spss_out_tpda_spss>;
				};
			};
		};
	};

	tpdm_spss: tpdm@7080000 {
		compatible = "qcom,coresight-tpdm";
		reg = <0x7080000 0x1000>;
		reg-names = "tpdm-base";

		coresight-name = "coresight-tpdm-spss";

		clocks = <&clock_gcc clk_qdss_clk>,
			 <&clock_gcc clk_qdss_a_clk>;
		clock-names = "core_clk", "core_a_clk";

		port{
			tpdm_spss_out_tpda_spss: endpoint {
				remote-endpoint = <&tpda_spss_in_tpdm_spss>;
			};
		};
	};
};