# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: "http://devicetree.org/schemas/remoteproc/st,stm32-rproc.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: STMicroelectronics STM32 remote processor controller bindings

description:
  This document defines the binding for the remoteproc component that loads and
  boots firmwares on the ST32MP family chipset.

maintainers:
  - Fabien Dessenne <fabien.dessenne@st.com>
  - Arnaud Pouliquen <arnaud.pouliquen@st.com>

properties:
  compatible:
    const: st,stm32mp1-m4

  reg:
    description:
      Address ranges of the RETRAM and MCU SRAM memories used by the remote
      processor.
    maxItems: 3

  resets:
     maxItems: 1

  st,syscfg-holdboot:
    allOf:
      - $ref: "/schemas/types.yaml#/definitions/phandle-array"
    description: remote processor reset hold boot
      - Phandle of syscon block.
      - The offset of the hold boot setting register.
      - The field mask of the hold boot.
    maxItems: 1

  st,syscfg-tz:
    allOf:
      - $ref: "/schemas/types.yaml#/definitions/phandle-array"
    description:
      Reference to the system configuration which holds the RCC trust zone mode
      - Phandle of syscon block.
      - The offset of the RCC trust zone mode register.
      - The field mask of the RCC trust zone mode.
    maxItems: 1

  interrupts:
    description: Should contain the WWDG1 watchdog reset interrupt
    maxItems: 1

  wakeup-source: true

  mboxes:
    description:
      This property is required only if the rpmsg/virtio functionality is used.
    items:
      - description: |
          A channel (a) used to communicate through virtqueues with the
          remote proc.
          Bi-directional channel:
            - from local to remote = send message
            - from remote to local = send message ack
      - description: |
          A channel (b) working the opposite direction of channel (a)
      - description: |
          A channel (c) used by the local proc to notify the remote proc that it
          is about to be shut down.
          Unidirectional channel:
            - from local to remote, where ACK from the remote means that it is
              ready for shutdown
    minItems: 1
    maxItems: 3

  mbox-names:
    items:
      - const: vq0
      - const: vq1
      - const: shutdown
    minItems: 1
    maxItems: 3

  memory-region:
    description:
      List of phandles to the reserved memory regions associated with the
      remoteproc device. This is variable and describes the memories shared with
      the remote processor (e.g. remoteproc firmware and carveouts, rpmsg
      vrings, ...).
      (see ../reserved-memory/reserved-memory.txt)

  st,syscfg-pdds:
    allOf:
      - $ref: "/schemas/types.yaml#/definitions/phandle-array"
    description: |
      Reference to the system configuration which holds the remote
        1st cell: phandle to syscon block
        2nd cell: register offset containing the deep sleep setting
        3rd cell: register bitmask for the deep sleep bit
    maxItems: 1

  st,auto-boot:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      If defined, when remoteproc is probed, it loads the default firmware and
      starts the remote processor.

required:
  - compatible
  - reg
  - resets
  - st,syscfg-holdboot
  - st,syscfg-tz

additionalProperties: false

examples:
  - |
    #include <dt-bindings/reset/stm32mp1-resets.h>
    m4_rproc: m4@10000000 {
      compatible = "st,stm32mp1-m4";
      reg = <0x10000000 0x40000>,
            <0x30000000 0x40000>,
            <0x38000000 0x10000>;
      resets = <&rcc MCU_R>;
      st,syscfg-holdboot = <&rcc 0x10C 0x1>;
      st,syscfg-tz = <&rcc 0x000 0x1>;
    };

...
