Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/arm/arm,coresight-dynamic-replicator.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Arm Coresight Programmable Trace Bus Replicator
0008 
0009 maintainers:
0010   - Mathieu Poirier <mathieu.poirier@linaro.org>
0011   - Mike Leach <mike.leach@linaro.org>
0012   - Leo Yan <leo.yan@linaro.org>
0013   - Suzuki K Poulose <suzuki.poulose@arm.com>
0014 
0015 description: |
0016   CoreSight components are compliant with the ARM CoreSight architecture
0017   specification and can be connected in various topologies to suit a particular
0018   SoCs tracing needs. These trace components can generally be classified as
0019   sinks, links and sources. Trace data produced by one or more sources flows
0020   through the intermediate links connecting the source to the currently selected
0021   sink.
0022 
0023   The Coresight replicator splits a single trace stream into two trace streams
0024   for systems that have more than one trace sink component.
0025 
0026 # Need a custom select here or 'arm,primecell' will match on lots of nodes
0027 select:
0028   properties:
0029     compatible:
0030       contains:
0031         const: arm,coresight-dynamic-replicator
0032   required:
0033     - compatible
0034 
0035 allOf:
0036   - $ref: /schemas/arm/primecell.yaml#
0037 
0038 properties:
0039   compatible:
0040     items:
0041       - const: arm,coresight-dynamic-replicator
0042       - const: arm,primecell
0043 
0044   reg:
0045     maxItems: 1
0046 
0047   clocks:
0048     minItems: 1
0049     maxItems: 2
0050 
0051   clock-names:
0052     minItems: 1
0053     items:
0054       - const: apb_pclk
0055       - const: atclk
0056 
0057   qcom,replicator-loses-context:
0058     type: boolean
0059     description:
0060       Indicates that the replicator will lose register context when AMBA clock
0061       is removed which is observed in some replicator designs.
0062 
0063   in-ports:
0064     $ref: /schemas/graph.yaml#/properties/ports
0065     additionalProperties: false
0066 
0067     properties:
0068       port:
0069         description: Input connection from CoreSight Trace bus
0070         $ref: /schemas/graph.yaml#/properties/port
0071 
0072   out-ports:
0073     $ref: /schemas/graph.yaml#/properties/ports
0074 
0075     patternProperties:
0076       '^port(@[01])?$':
0077         description: Output connections to CoreSight Trace bus
0078         $ref: /schemas/graph.yaml#/properties/port
0079 
0080 required:
0081   - compatible
0082   - reg
0083   - clocks
0084   - clock-names
0085   - in-ports
0086   - out-ports
0087 
0088 unevaluatedProperties: false
0089 
0090 examples:
0091   - |
0092     replicator@20120000 {
0093         compatible = "arm,coresight-dynamic-replicator", "arm,primecell";
0094         reg = <0x20120000 0x1000>;
0095 
0096         clocks = <&soc_smc50mhz>;
0097         clock-names = "apb_pclk";
0098 
0099         out-ports {
0100             #address-cells = <1>;
0101             #size-cells = <0>;
0102 
0103             /* replicator output ports */
0104             port@0 {
0105                 reg = <0>;
0106                 replicator_out_port0: endpoint {
0107                     remote-endpoint = <&tpiu_in_port>;
0108                 };
0109             };
0110 
0111             port@1 {
0112                 reg = <1>;
0113                 replicator_out_port1: endpoint {
0114                     remote-endpoint = <&etr_in_port>;
0115                 };
0116             };
0117         };
0118         in-ports {
0119             port {
0120                 replicator_in_port0: endpoint {
0121                     remote-endpoint = <&csys2_funnel_out_port>;
0122                 };
0123             };
0124         };
0125     };
0126 ...