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

This commit is contained in:
qctecmdr
2019-09-11 14:44:56 -07:00
committed by Gerrit - the friendly Code Review server

View File

@@ -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.