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

Commit ff12f4fb authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "dt-bindings: arm: Add CSR/TPDM/TPDA/TGU/Remote ETM support"

parents 7aea9932 4d4c789a
Loading
Loading
Loading
Loading
+120 −0
Original line number Diff line number Diff line
@@ -85,8 +85,41 @@ its hardware characteristcs.
		- Coresight Non-configurable Funnel:
			"arm,coresight-static-funnel";

		- Coresight Trace, Profiling & Diagnostic module:
			"qcom,coresight-tpda"
			"qcom,coresight-tpdm"

		- Coresight control register:
			"qcom,coresight-csr"

		- Coresight Hardware Event
			"qcom,coresight-hwevent"

		- Coresight dummy device:
			"qcom,coresight-dummy"

		- Coresight remote ETM:
			"qcom,coresight-remote-etm"

	* port or ports: see "Graph bindings for Coresight" below.

* Additional required property for coresight-tgu devices:
	* tgu-steps: must be present. Indicates number of steps supported
	  by the TGU.
	* tgu-conditions: must be present. Indicates the number of conditions
	  supported by the TGU.
	* tgu-regs: must be present. Indicates the number of regs supported
	  by the TGU.
	* tgu-timer-counters: must be present. Indicates the number of timers and
	  counters available in the TGU to do a comparision.

* Optional properties for all components:
	* reg-names: names corresponding to each reg property value.

	* qcom,proxy-regs: List of regulators required.

	* qcom,proxy-clks: List of additional clocks required.

* Optional properties for ETM/PTMs:

	* arm,cp14: must be present if the system accesses ETM/PTM management
@@ -108,6 +141,77 @@ its hardware characteristcs.
	* interrupts : Exactly one SPI may be listed for reporting the address
	  error

* Required property for TPDAs:

	* qcom,tpda-atid: must be present. Specifies the ATID for TPDA.

* Optional properties for TPDAs:

	* qcom,bc-elem-size: specifies the BC element size supported by each
	  monitor connected to the aggregator on each port. Should be specified
	  in pairs (port, bc element size).

	* qcom,tc-elem-size: specifies the TC element size supported by each
	  monitor connected to the aggregator on each port. Should be specified
	  in pairs (port, tc element size).

	* qcom,dsb-elem-size: specifies the DSB element size supported by each
	  monitor connected to the aggregator on each port. Should be specified
	  in pairs (port, dsb element size).

	* qcom,cmb-elem-size: specifies the CMB element size supported by each
	  monitor connected to the aggregator on each port. Should be specified
	  in pairs (port, cmb element size).

* Optional properties for TPDM:

	* qcom,clk-enable: specifies whether additional clock bit needs to be
	  set for M4M TPDM.

	* qcom,msr-fix-req: boolean, indicating if MSRs need to be programmed
	  after enabling the subunit.

	* qcom,hw-enable-check: Check if the tpdm need to be probed as some tpdms
	  are not enabled in secure device.

* Optional properties for CSRs:

	* qcom,usb-bam-support: boolean, indicates CSR has the ability to operate on
	  usb bam, include enable,disable and flush.

	* qcom,hwctrl-set-support: boolean, indicates CSR has the ability to operate on
	  to "HWCTRL" register.

	* qcom,set-byte-cntr-support:boolean, indicates CSR has the ability to operate on
	  to "BYTECNT" register.

	* qcom,timestamp-support:boolean, indicates CSR support sys interface to read
	  timestamp value.

* Required property for Remote ETMs:

	* qcom,inst-id: must be present. QMI instance id for remote ETMs.

* Optional properties for funnels:

	* source: specifies the source that binds to this output port. Only
	  trace from that source routes to this output port.

	* qcom,duplicate-funnel: boolean, indicates its a duplicate of an
	  existing funnel. Funnel devices are now capable of supporting
	  multiple-input and multiple-output configuration with in built
	  hardware filtering for TPDM devices. Each set of input-output
	  combination is treated as independent funnel device.
	  funnel-base-dummy and funnel-base-real reg-names must be specified
	  when this property is enabled.

	* reg-names: funnel-base-dummy: dummy register space used by a
	  duplicate funnel. Should be a valid register address space that
	  no other device is using.

	* reg-names: funnel-base-real: actual register space for the
	  duplicate funnel.

Graph bindings for Coresight
-------------------------------

@@ -364,5 +468,21 @@ Example:
		};
	};

6. TGUs
	ipcb_tgu: tgu@6b0c000 {
		compatible = "arm,primecell";
		arm,primecell-periphid = <0x0003b999>;
		reg = <0x06B0C000 0x1000>;
		reg-names = "tgu-base";
		tgu-steps = <3>;
		tgu-conditions = <4>;
		tgu-regs = <4>;
		tgu-timer-counters = <8>;

		coresight-name = "coresight-tgu-ipcb";

		clocks = <&clock_aop QDSS_CLK>;
		clock-names = "apb_pclk";
	};
[1]. There is currently two version of STM: STM32 and STM500.  Both
have the same HW interface and as such don't need an explicit binding name.