Documentation / devicetree / bindings / arm / qcom,coresight-itnoc.yaml


Based on kernel version 7.0. Page generated on 2026-04-23 09:48 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/arm/qcom,coresight-itnoc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm Interconnect Trace Network On Chip - ITNOC

maintainers:
  - Yuanfang Zhang <yuanfang.zhang@oss.qualcomm.com>

description:
  The Interconnect TNOC is a CoreSight graph link that forwards trace data
  from a subsystem to the Aggregator TNOC. Compared to Aggregator TNOC, it
  does not have aggregation and ATID functionality.

properties:
  $nodename:
    pattern: "^itnoc(@[0-9a-f]+)?$"

  compatible:
    const: qcom,coresight-itnoc

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    items:
      - const: apb

  in-ports:
    $ref: /schemas/graph.yaml#/properties/ports

    patternProperties:
      '^port(@[0-9a-f]{1,2})?$':
        description: Input connections from CoreSight Trace Bus
        $ref: /schemas/graph.yaml#/properties/port

  out-ports:
    $ref: /schemas/graph.yaml#/properties/ports
    additionalProperties: false

    properties:
      port:
        description: out connections to aggregator TNOC
        $ref: /schemas/graph.yaml#/properties/port

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - in-ports
  - out-ports

additionalProperties: false

examples:
  - |
    itnoc@109ac000 {
        compatible = "qcom,coresight-itnoc";
        reg = <0x109ac000 0x1000>;
 
        clocks = <&aoss_qmp>;
        clock-names = "apb";
 
        in-ports {
            #address-cells = <1>;
            #size-cells = <0>;
            port@0 {
                reg = <0>;
                tn_ic_in_tpdm_dcc: endpoint {
                    remote-endpoint = <&tpdm_dcc_out_tn_ic>;
                };
            };
        };
 
        out-ports {
            port {
                tn_ic_out_tnoc_aggr: endpoint {
                    /* to Aggregator TNOC input */
                    remote-endpoint = <&tn_ag_in_tn_ic>;
                };
            };
        };
    };
...