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

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/arm/qcom,coresight-tpdm.yaml
Extension
.yaml
Size
4485 bytes
Lines
168
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
# Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
%YAML 1.2
---
$id: http://devicetree.org/schemas/arm/qcom,coresight-tpdm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Trace, Profiling and Diagnostics Monitor - TPDM

description: |
  The TPDM or Monitor serves as data collection component for various dataset
  types specified in the QPMDA spec. It covers Implementation defined ((ImplDef),
  Basic Counts (BC), Tenure Counts (TC), Continuous Multi-Bit (CMB), and Discrete
  Single Bit (DSB). It performs data collection in the data producing clock
  domain and transfers it to the data collection time domain, generally ATB
  clock domain.

  The primary use case of the TPDM is to collect data from different data
  sources and send it to a TPDA for packetization, timestamping, and funneling.

maintainers:
  - Mao Jinlong <jinlong.mao@oss.qualcomm.com>
  - Tao Zhang <tao.zhang@oss.qualcomm.com>

# Need a custom select here or 'arm,primecell' will match on lots of nodes
select:
  properties:
    compatible:
      contains:
        enum:
          - qcom,coresight-tpdm
  required:
    - compatible

properties:
  $nodename:
    pattern: "^tpdm(@[0-9a-f]+)$"
  compatible:
    oneOf:
      - items:
          - const: qcom,coresight-static-tpdm
      - items:
          - const: qcom,coresight-tpdm
          - const: arm,primecell

  reg:
    maxItems: 1

  qcom,dsb-element-bits:
    description:
      Specifies the DSB(Discrete Single Bit) element size supported by
      the monitor. The associated aggregator will read this size before it
      is enabled. DSB element size currently only supports 32-bit and 64-bit.
    enum: [32, 64]

  qcom,cmb-element-bits:
    description:
      Specifies the CMB(Continuous Multi-Bit) element size supported by
      the monitor. The associated aggregator will read this size before it
      is enabled. CMB element size currently only supports 8-bit, 32-bit
      and 64-bit.
    enum: [8, 32, 64]

  qcom,dsb-msrs-num:
    description:
      Specifies the number of DSB(Discrete Single Bit) MSR(mux select register)
      registers supported by the monitor. If this property is not configured
      or set to 0, it means this DSB TPDM doesn't support MSR.
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0

Annotation

Implementation Notes