134376eb1SArnaud Pouliquen# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 234376eb1SArnaud Pouliquen%YAML 1.2 334376eb1SArnaud Pouliquen--- 434376eb1SArnaud Pouliquen$id: "http://devicetree.org/schemas/remoteproc/st,stm32-rproc.yaml#" 534376eb1SArnaud Pouliquen$schema: "http://devicetree.org/meta-schemas/core.yaml#" 634376eb1SArnaud Pouliquen 734376eb1SArnaud Pouliquentitle: STMicroelectronics STM32 remote processor controller bindings 834376eb1SArnaud Pouliquen 934376eb1SArnaud Pouliquendescription: 1034376eb1SArnaud Pouliquen This document defines the binding for the remoteproc component that loads and 1134376eb1SArnaud Pouliquen boots firmwares on the ST32MP family chipset. 1234376eb1SArnaud Pouliquen 1334376eb1SArnaud Pouliquenmaintainers: 1434376eb1SArnaud Pouliquen - Fabien Dessenne <fabien.dessenne@st.com> 1534376eb1SArnaud Pouliquen - Arnaud Pouliquen <arnaud.pouliquen@st.com> 1634376eb1SArnaud Pouliquen 1734376eb1SArnaud Pouliquenproperties: 1834376eb1SArnaud Pouliquen compatible: 1934376eb1SArnaud Pouliquen const: st,stm32mp1-m4 2034376eb1SArnaud Pouliquen 2134376eb1SArnaud Pouliquen reg: 2234376eb1SArnaud Pouliquen description: 2334376eb1SArnaud Pouliquen Address ranges of the RETRAM and MCU SRAM memories used by the remote 2434376eb1SArnaud Pouliquen processor. 2534376eb1SArnaud Pouliquen maxItems: 3 2634376eb1SArnaud Pouliquen 2734376eb1SArnaud Pouliquen resets: 2834376eb1SArnaud Pouliquen maxItems: 1 2934376eb1SArnaud Pouliquen 3034376eb1SArnaud Pouliquen st,syscfg-holdboot: 3134376eb1SArnaud Pouliquen allOf: 3234376eb1SArnaud Pouliquen - $ref: "/schemas/types.yaml#/definitions/phandle-array" 3334376eb1SArnaud Pouliquen description: remote processor reset hold boot 3434376eb1SArnaud Pouliquen - Phandle of syscon block. 3534376eb1SArnaud Pouliquen - The offset of the hold boot setting register. 3634376eb1SArnaud Pouliquen - The field mask of the hold boot. 3734376eb1SArnaud Pouliquen maxItems: 1 3834376eb1SArnaud Pouliquen 3934376eb1SArnaud Pouliquen st,syscfg-tz: 4034376eb1SArnaud Pouliquen allOf: 4134376eb1SArnaud Pouliquen - $ref: "/schemas/types.yaml#/definitions/phandle-array" 4234376eb1SArnaud Pouliquen description: 4334376eb1SArnaud Pouliquen Reference to the system configuration which holds the RCC trust zone mode 4434376eb1SArnaud Pouliquen - Phandle of syscon block. 4534376eb1SArnaud Pouliquen - The offset of the RCC trust zone mode register. 4634376eb1SArnaud Pouliquen - The field mask of the RCC trust zone mode. 4734376eb1SArnaud Pouliquen maxItems: 1 4834376eb1SArnaud Pouliquen 4934376eb1SArnaud Pouliquen interrupts: 5034376eb1SArnaud Pouliquen description: Should contain the WWDG1 watchdog reset interrupt 5134376eb1SArnaud Pouliquen maxItems: 1 5234376eb1SArnaud Pouliquen 53*71bbcd2eSArnaud Pouliquen wakeup-source: true 54*71bbcd2eSArnaud Pouliquen 5534376eb1SArnaud Pouliquen mboxes: 5634376eb1SArnaud Pouliquen description: 5734376eb1SArnaud Pouliquen This property is required only if the rpmsg/virtio functionality is used. 5834376eb1SArnaud Pouliquen items: 5934376eb1SArnaud Pouliquen - description: | 6034376eb1SArnaud Pouliquen A channel (a) used to communicate through virtqueues with the 6134376eb1SArnaud Pouliquen remote proc. 6234376eb1SArnaud Pouliquen Bi-directional channel: 6334376eb1SArnaud Pouliquen - from local to remote = send message 6434376eb1SArnaud Pouliquen - from remote to local = send message ack 6534376eb1SArnaud Pouliquen - description: | 6634376eb1SArnaud Pouliquen A channel (b) working the opposite direction of channel (a) 6734376eb1SArnaud Pouliquen - description: | 6834376eb1SArnaud Pouliquen A channel (c) used by the local proc to notify the remote proc that it 6934376eb1SArnaud Pouliquen is about to be shut down. 7034376eb1SArnaud Pouliquen Unidirectional channel: 7134376eb1SArnaud Pouliquen - from local to remote, where ACK from the remote means that it is 7234376eb1SArnaud Pouliquen ready for shutdown 7334376eb1SArnaud Pouliquen minItems: 1 7434376eb1SArnaud Pouliquen maxItems: 3 7534376eb1SArnaud Pouliquen 7634376eb1SArnaud Pouliquen mbox-names: 7734376eb1SArnaud Pouliquen items: 7834376eb1SArnaud Pouliquen - const: vq0 7934376eb1SArnaud Pouliquen - const: vq1 8034376eb1SArnaud Pouliquen - const: shutdown 8134376eb1SArnaud Pouliquen minItems: 1 8234376eb1SArnaud Pouliquen maxItems: 3 8334376eb1SArnaud Pouliquen 8434376eb1SArnaud Pouliquen memory-region: 8534376eb1SArnaud Pouliquen description: 8634376eb1SArnaud Pouliquen List of phandles to the reserved memory regions associated with the 8734376eb1SArnaud Pouliquen remoteproc device. This is variable and describes the memories shared with 8834376eb1SArnaud Pouliquen the remote processor (e.g. remoteproc firmware and carveouts, rpmsg 8934376eb1SArnaud Pouliquen vrings, ...). 9034376eb1SArnaud Pouliquen (see ../reserved-memory/reserved-memory.txt) 9134376eb1SArnaud Pouliquen 9234376eb1SArnaud Pouliquen st,syscfg-pdds: 9334376eb1SArnaud Pouliquen allOf: 9434376eb1SArnaud Pouliquen - $ref: "/schemas/types.yaml#/definitions/phandle-array" 9534376eb1SArnaud Pouliquen description: | 9634376eb1SArnaud Pouliquen Reference to the system configuration which holds the remote 9734376eb1SArnaud Pouliquen 1st cell: phandle to syscon block 9834376eb1SArnaud Pouliquen 2nd cell: register offset containing the deep sleep setting 9934376eb1SArnaud Pouliquen 3rd cell: register bitmask for the deep sleep bit 10034376eb1SArnaud Pouliquen maxItems: 1 10134376eb1SArnaud Pouliquen 10234376eb1SArnaud Pouliquen st,auto-boot: 10334376eb1SArnaud Pouliquen $ref: /schemas/types.yaml#/definitions/flag 10434376eb1SArnaud Pouliquen description: 10534376eb1SArnaud Pouliquen If defined, when remoteproc is probed, it loads the default firmware and 10634376eb1SArnaud Pouliquen starts the remote processor. 10734376eb1SArnaud Pouliquen 10834376eb1SArnaud Pouliquenrequired: 10934376eb1SArnaud Pouliquen - compatible 11034376eb1SArnaud Pouliquen - reg 11134376eb1SArnaud Pouliquen - resets 11234376eb1SArnaud Pouliquen - st,syscfg-holdboot 11334376eb1SArnaud Pouliquen - st,syscfg-tz 11434376eb1SArnaud Pouliquen 11534376eb1SArnaud PouliquenadditionalProperties: false 11634376eb1SArnaud Pouliquen 11734376eb1SArnaud Pouliquenexamples: 11834376eb1SArnaud Pouliquen - | 11934376eb1SArnaud Pouliquen #include <dt-bindings/reset/stm32mp1-resets.h> 12034376eb1SArnaud Pouliquen m4_rproc: m4@10000000 { 12134376eb1SArnaud Pouliquen compatible = "st,stm32mp1-m4"; 12234376eb1SArnaud Pouliquen reg = <0x10000000 0x40000>, 12334376eb1SArnaud Pouliquen <0x30000000 0x40000>, 12434376eb1SArnaud Pouliquen <0x38000000 0x10000>; 12534376eb1SArnaud Pouliquen resets = <&rcc MCU_R>; 12634376eb1SArnaud Pouliquen st,syscfg-holdboot = <&rcc 0x10C 0x1>; 12734376eb1SArnaud Pouliquen st,syscfg-tz = <&rcc 0x000 0x1>; 12834376eb1SArnaud Pouliquen }; 12934376eb1SArnaud Pouliquen 13034376eb1SArnaud Pouliquen... 131