[PATCH V12 02/10] dt-bindings: remoteproc: imx_rproc: add i.MX8MQ/M support

Rob Herring robh at kernel.org
Fri Mar 5 22:39:03 GMT 2021


On Thu, Feb 18, 2021 at 09:24:52AM +0800, peng.fan at oss.nxp.com wrote:
> From: Peng Fan <peng.fan at nxp.com>
> 
> Add i.MX8MQ/M support, also include mailbox for rpmsg/virtio usage.
> 
> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> ---
>  .../bindings/remoteproc/fsl,imx-rproc.yaml    | 51 ++++++++++++++++++-
>  1 file changed, 50 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> index 54d2456530a6..52c8e523506d 100644
> --- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> @@ -4,7 +4,7 @@
>  $id: "http://devicetree.org/schemas/remoteproc/fsl,imx-rproc.yaml#"
>  $schema: "http://devicetree.org/meta-schemas/core.yaml#"
>  
> -title: NXP iMX6SX/iMX7D Co-Processor Bindings
> +title: NXP i.MX Co-Processor Bindings
>  
>  description:
>    This binding provides support for ARM Cortex M4 Co-processor found on some NXP iMX SoCs.
> @@ -15,6 +15,8 @@ maintainers:
>  properties:
>    compatible:
>      enum:
> +      - fsl,imx8mq-cm4
> +      - fsl,imx8mm-cm4
>        - fsl,imx7d-cm4
>        - fsl,imx6sx-cm4
>  
> @@ -26,6 +28,20 @@ properties:
>      description:
>        Phandle to syscon block which provide access to System Reset Controller
>  
> +  mbox-names:
> +    items:
> +      - const: tx
> +      - const: rx
> +      - const: rxdb
> +
> +  mboxes:
> +    description:
> +      This property is required only if the rpmsg/virtio functionality is used.
> +      List of <&phandle type channel> - 1 channel for TX, 1 channel for RX, 1 channel for RXDB.
> +      (see mailbox/fsl,mu.yaml)
> +    minItems: 1
> +    maxItems: 3
> +
>    memory-region:
>      description:
>        If present, a phandle for a reserved memory area that used for vdev buffer,
> @@ -58,4 +74,37 @@ examples:
>        clocks		= <&clks IMX7D_ARM_M4_ROOT_CLK>;
>      };
>  
> +  - |
> +    #include <dt-bindings/clock/imx8mm-clock.h>
> +    rsc_table: rsc_table at 550ff000 {
> +      no-map;
> +      reg = <0x550ff000 0x1000>;
> +    };
> +
> +    vdev0vring0: vdev0vring0 at 55000000 {
> +      no-map;
> +      reg = <0x55000000 0x8000>;
> +    };
> +
> +    vdev0vring1: vdev0vring1 at 55008000 {
> +      reg = <0x55008000 0x8000>;
> +      no-map;
> +    };
> +
> +    vdev0buffer: vdev0buffer at 55400000 {
> +      compatible = "shared-dma-pool";
> +      reg = <0x55400000 0x100000>;
> +      no-map;
> +    };

These all go in /reserved-memory, right? Best to omit them from the 
example.

> +
> +    imx8mm-cm4 {
> +      compatible = "fsl,imx8mm-cm4";
> +      clocks = <&clk IMX8MM_CLK_M4_DIV>;
> +      mbox-names = "tx", "rx", "rxdb";
> +      mboxes = <&mu 0 1
> +                &mu 1 1
> +                &mu 3 1>;
> +      memory-region = <&vdev0buffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>;
> +      syscon = <&src>;
> +    };
>  ...
> -- 
> 2.30.0
> 



More information about the linux-arm-kernel mailing list