151 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/remoteproc/fsl,imx-rproc.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: NXP i.MX Co-Processor8 9description:10 This binding provides support for ARM Cortex M4 Co-processor found on some NXP iMX SoCs.11 12maintainers:13 - Peng Fan <peng.fan@nxp.com>14 15properties:16 compatible:17 enum:18 - fsl,imx6sx-cm419 - fsl,imx7d-cm420 - fsl,imx7ulp-cm421 - fsl,imx8mm-cm422 - fsl,imx8mn-cm723 - fsl,imx8mn-cm7-mmio24 - fsl,imx8mp-cm725 - fsl,imx8mp-cm7-mmio26 - fsl,imx8mq-cm427 - fsl,imx8qm-cm428 - fsl,imx8qxp-cm429 - fsl,imx8ulp-cm3330 - fsl,imx93-cm3331 32 clocks:33 maxItems: 134 35 syscon:36 $ref: /schemas/types.yaml#/definitions/phandle37 description:38 Phandle to syscon block which provide access to System Reset Controller39 40 mbox-names:41 items:42 - const: tx43 - const: rx44 - const: rxdb45 46 mboxes:47 description:48 This property is required only if the rpmsg/virtio functionality is used.49 List of <&phandle type channel> - 1 channel for TX, 1 channel for RX, 1 channel for RXDB.50 (see mailbox/fsl,mu.yaml)51 minItems: 152 maxItems: 353 54 memory-region:55 description:56 If present, a phandle for a reserved memory area that used for vdev buffer,57 resource table, vring region and others used by remote processor.58 minItems: 159 maxItems: 3260 61 power-domains:62 minItems: 263 maxItems: 864 65 fsl,auto-boot:66 $ref: /schemas/types.yaml#/definitions/flag67 description:68 Indicate whether need to load the default firmware and start the remote69 processor automatically.70 71 fsl,entry-address:72 $ref: /schemas/types.yaml#/definitions/uint3273 description:74 Specify CPU entry address for SCU enabled processor.75 76 fsl,iomuxc-gpr:77 $ref: /schemas/types.yaml#/definitions/phandle78 description:79 Phandle to IOMUXC GPR block which provide access to CM7 CPUWAIT bit.80 81 fsl,resource-id:82 $ref: /schemas/types.yaml#/definitions/uint3283 description:84 This property is to specify the resource id of the remote processor in SoC85 which supports SCFW86 87required:88 - compatible89 90allOf:91 - if:92 properties:93 compatible:94 not:95 contains:96 enum:97 - fsl,imx8mn-cm7-mmio98 - fsl,imx8mp-cm7-mmio99 then:100 properties:101 fsl,iomuxc-gpr: false102 103 - if:104 properties:105 compatible:106 contains:107 enum:108 - fsl,imx8qxp-cm4109 - fsl,imx8qm-cm4110 then:111 required:112 - power-domains113 else:114 properties:115 power-domains: false116 117additionalProperties: false118 119examples:120 - |121 #include <dt-bindings/clock/imx7d-clock.h>122 m4_reserved_sysmem1: cm4@80000000 {123 reg = <0x80000000 0x80000>;124 };125 126 m4_reserved_sysmem2: cm4@81000000 {127 reg = <0x81000000 0x80000>;128 };129 130 imx7d-cm4 {131 compatible = "fsl,imx7d-cm4";132 memory-region = <&m4_reserved_sysmem1>, <&m4_reserved_sysmem2>;133 syscon = <&src>;134 clocks = <&clks IMX7D_ARM_M4_ROOT_CLK>;135 };136 137 - |138 #include <dt-bindings/clock/imx8mm-clock.h>139 140 imx8mm-cm4 {141 compatible = "fsl,imx8mm-cm4";142 clocks = <&clk IMX8MM_CLK_M4_DIV>;143 mbox-names = "tx", "rx", "rxdb";144 mboxes = <&mu 0 1145 &mu 1 1146 &mu 3 1>;147 memory-region = <&vdev0buffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>;148 syscon = <&src>;149 };150...151