Documentation/devicetree/bindings/remoteproc/ti,pru-rproc.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/remoteproc/ti,pru-rproc.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/remoteproc/ti,pru-rproc.yaml
Extension
.yaml
Size
7413 bytes
Lines
244
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)
%YAML 1.2
---
$id: http://devicetree.org/schemas/remoteproc/ti,pru-rproc.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: TI Programmable Realtime Unit (PRU) cores

maintainers:
  - Suman Anna <s-anna@ti.com>

description: |
  Each Programmable Real-Time Unit and Industrial Communication Subsystem
  (PRU-ICSS or PRUSS) has two 32-bit load/store RISC CPU cores called
  Programmable Real-Time Units (PRUs), each represented by a node. Each PRU
  core has a dedicated Instruction RAM, Control and Debug register sets, and
  use the Data RAMs present within the PRU-ICSS for code execution.

  The K3 SoCs containing ICSSG v1.0 (eg: AM65x SR1.0) also have two Auxiliary
  PRU cores called RTUs with slightly different IP integration. The K3 SoCs
  containing the revised ICSSG v1.1 (eg: J721E, AM65x SR2.0) have an extra two
  auxiliary Transmit PRU cores called Tx_PRUs that augment the PRUs. Each RTU
  or Tx_PRU core can also be used independently like a PRU, or alongside a
  corresponding PRU core to provide/implement auxiliary functionality/support.

  Each PRU, RTU or Tx_PRU core node should be defined as a child node of the
  corresponding PRU-ICSS node. Each node can optionally be rendered inactive by
  using the standard DT string property, "status".

  Please see the overall PRU-ICSS bindings document for additional details
  including a complete example,
    Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml

properties:
  compatible:
    enum:
      - ti,am3356-pru   # for AM335x SoC family (AM3356+ SoCs only)
      - ti,am4376-pru   # for AM437x SoC family (AM4376+ SoCs only)
      - ti,am5728-pru   # for AM57xx SoC family
      - ti,am625-pru    # for PRUs in K3 AM62x SoC family
      - ti,am642-pru    # for PRUs in K3 AM64x SoC family
      - ti,am642-rtu    # for RTUs in K3 AM64x SoC family
      - ti,am642-tx-pru # for Tx_PRUs in K3 AM64x SoC family
      - ti,am654-pru    # for PRUs in K3 AM65x SoC family
      - ti,am654-rtu    # for RTUs in K3 AM65x SoC family
      - ti,am654-tx-pru # for Tx_PRUs in K3 AM65x SR2.0 SoCs
      - ti,j721e-pru    # for PRUs in K3 J721E SoC family
      - ti,j721e-rtu    # for RTUs in K3 J721E SoC family
      - ti,j721e-tx-pru # for Tx_PRUs in K3 J721E SoC family
      - ti,k2g-pru      # for 66AK2G SoC family

  reg:
    items:
      - description: Address and Size of the PRU Instruction RAM
      - description: Address and Size of the PRU CTRL sub-module registers
      - description: Address and Size of the PRU Debug sub-module registers

  reg-names:
    items:
      - const: iram
      - const: control
      - const: debug

  firmware-name:
    description: |
      Should contain the name of the default firmware image
      file located on the firmware search path.

  interrupts:
    maxItems: 1

Annotation

Implementation Notes