3d21a46093
json-schema versions draft7 and earlier have a weird behavior in that any keywords combined with a '$ref' are ignored (silently). The correct form was to put a '$ref' under an 'allOf'. This behavior is now changed in the 2019-09 json-schema spec and '$ref' can be mixed with other keywords. The json-schema library doesn't yet support this, but the tooling now does a fixup for this and either way works. This has been a constant source of review comments, so let's change this treewide so everyone copies the simpler syntax. Scripted with ruamel.yaml with some manual fixups. Some minor whitespace changes from the script. Signed-off-by: Rob Herring <robh@kernel.org> Acked-by: Maxime Ripard <mripard@kernel.org> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-By: Vinod Koul <vkoul@kernel.org> Acked-by: Mark Brown <broonie@kernel.org> Acked-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Acked-by: Wolfram Sang <wsa@the-dreams.de> # for I2C Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> #for-iio Reviewed-by: Stephen Boyd <sboyd@kernel.org> # clock Signed-off-by: Rob Herring <robh@kernel.org>
128 lines
3.6 KiB
YAML
128 lines
3.6 KiB
YAML
# 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:
|
|
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.
|
|
$ref: "/schemas/types.yaml#/definitions/phandle-array"
|
|
maxItems: 1
|
|
|
|
st,syscfg-tz:
|
|
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.
|
|
$ref: "/schemas/types.yaml#/definitions/phandle-array"
|
|
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:
|
|
$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>;
|
|
};
|
|
|
|
...
|