Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: arm: Add CoreSight TPDM hardware

Add new coresight-tpdm.yaml file describing the bindings required
to define tpdm in the device trees.

Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Reviewed-by: Mike Leach <mike.leach@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Tao Zhang <quic_taozha@quicinc.com>
Signed-off-by: Mao Jinlong <quic_jinlmao@quicinc.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Link: https://lore.kernel.org/r/20230117145708.16739-4-quic_jinlmao@quicinc.com

authored by

Mao Jinlong and committed by
Suzuki K Poulose
6c781a35 b3c71626

+94
+93
Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause 2 + # Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. 3 + %YAML 1.2 4 + --- 5 + $id: http://devicetree.org/schemas/arm/qcom,coresight-tpdm.yaml# 6 + $schema: http://devicetree.org/meta-schemas/core.yaml# 7 + 8 + title: Trace, Profiling and Diagnostics Monitor - TPDM 9 + 10 + description: | 11 + The TPDM or Monitor serves as data collection component for various dataset 12 + types specified in the QPMDA spec. It covers Implementation defined ((ImplDef), 13 + Basic Counts (BC), Tenure Counts (TC), Continuous Multi-Bit (CMB), and Discrete 14 + Single Bit (DSB). It performs data collection in the data producing clock 15 + domain and transfers it to the data collection time domain, generally ATB 16 + clock domain. 17 + 18 + The primary use case of the TPDM is to collect data from different data 19 + sources and send it to a TPDA for packetization, timestamping, and funneling. 20 + 21 + maintainers: 22 + - Mao Jinlong <quic_jinlmao@quicinc.com> 23 + - Tao Zhang <quic_taozha@quicinc.com> 24 + 25 + # Need a custom select here or 'arm,primecell' will match on lots of nodes 26 + select: 27 + properties: 28 + compatible: 29 + contains: 30 + enum: 31 + - qcom,coresight-tpdm 32 + required: 33 + - compatible 34 + 35 + properties: 36 + $nodename: 37 + pattern: "^tpdm(@[0-9a-f]+)$" 38 + compatible: 39 + items: 40 + - const: qcom,coresight-tpdm 41 + - const: arm,primecell 42 + 43 + reg: 44 + minItems: 1 45 + maxItems: 2 46 + 47 + clocks: 48 + maxItems: 1 49 + 50 + clock-names: 51 + items: 52 + - const: apb_pclk 53 + 54 + out-ports: 55 + description: | 56 + Output connections from the TPDM to coresight funnel/TPDA. 57 + $ref: /schemas/graph.yaml#/properties/ports 58 + 59 + properties: 60 + port: 61 + description: Output connection from the TPDM to coresight 62 + funnel/TPDA. 63 + $ref: /schemas/graph.yaml#/properties/port 64 + 65 + required: 66 + - compatible 67 + - reg 68 + - clocks 69 + - clock-names 70 + 71 + additionalProperties: false 72 + 73 + examples: 74 + # minimum TPDM definition. TPDM connect to coresight TPDA. 75 + - | 76 + tpdm@684c000 { 77 + compatible = "qcom,coresight-tpdm", "arm,primecell"; 78 + reg = <0x0684c000 0x1000>; 79 + 80 + clocks = <&aoss_qmp>; 81 + clock-names = "apb_pclk"; 82 + 83 + out-ports { 84 + port { 85 + tpdm_prng_out_tpda_qdss: endpoint { 86 + remote-endpoint = 87 + <&tpda_qdss_in_tpdm_prng>; 88 + }; 89 + }; 90 + }; 91 + }; 92 + 93 + ...
+1
MAINTAINERS
··· 2124 2124 T: git git://git.kernel.org/pub/scm/linux/kernel/git/coresight/linux.git 2125 2125 F: Documentation/ABI/testing/sysfs-bus-coresight-devices-* 2126 2126 F: Documentation/devicetree/bindings/arm/arm,coresight-*.yaml 2127 + F: Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml 2127 2128 F: Documentation/devicetree/bindings/arm/arm,embedded-trace-extension.yaml 2128 2129 F: Documentation/devicetree/bindings/arm/arm,trace-buffer-extension.yaml 2129 2130 F: Documentation/trace/coresight/*