All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Herring <robh@kernel.org>
To: peng.fan@oss.nxp.com
Cc: ohad@wizery.com, bjorn.andersson@linaro.org,
	mathieu.poirier@linaro.org, o.rempel@pengutronix.de,
	devicetree@vger.kernel.org, shawnguo@kernel.org,
	s.hauer@pengutronix.de, kernel@pengutronix.de,
	festevam@gmail.com, linux-imx@nxp.com,
	linux-remoteproc@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, paul@crapouillou.net,
	matthias.bgg@gmail.com, agross@kernel.org,
	patrice.chotard@st.com, Peng Fan <peng.fan@nxp.com>
Subject: Re: [PATCH V10 01/10] dt-bindings: remoteproc: convert imx rproc bindings to json-schema
Date: Wed, 10 Feb 2021 11:37:41 -0600	[thread overview]
Message-ID: <20210210173741.GA2378005@robh.at.kernel.org> (raw)
In-Reply-To: <1612774571-6134-2-git-send-email-peng.fan@oss.nxp.com>

On Mon, Feb 08, 2021 at 04:56:02PM +0800, peng.fan@oss.nxp.com wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> Convert the imx rproc binding to DT schema format using json-schema.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../bindings/remoteproc/fsl,imx-rproc.yaml    | 59 +++++++++++++++++++
>  .../bindings/remoteproc/imx-rproc.txt         | 33 -----------
>  2 files changed, 59 insertions(+), 33 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
>  delete mode 100644 Documentation/devicetree/bindings/remoteproc/imx-rproc.txt
> 
> diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> new file mode 100644
> index 000000000000..5e906fa6a39d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> @@ -0,0 +1,59 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$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
> +
> +description:
> +  This binding provides support for ARM Cortex M4 Co-processor found on some NXP iMX SoCs.
> +
> +maintainers:
> +  - Peng Fan <peng.fan@nxp.com>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - fsl,imx7d-cm4
> +      - fsl,imx6sx-cm4
> +
> +  clocks:
> +    maxItems: 1
> +
> +  syscon:
> +    $ref: /schemas/types.yaml#/definitions/phandle
> +    description:
> +      Phandle to syscon block which provide access to System Reset Controller
> +
> +  memory-region:
> +    description:
> +      If present, a phandle for a reserved memory area that used for vdev buffer,
> +      resource table, vring region and others used by remote processor.

You need to define what each one is as a schema. How does the driver 
know which one is the vring region for example? Minimally, it's:

items:
  - description: ...
  - description: ...
  - description: ...

But if what's present is variable, then it gets more complicated. If the 
OS side doesn't need to know what each region is, then you can do just:

minItems: N
maxItems: M

Rob



> +
> +required:
> +  - compatible
> +  - clocks
> +  - syscon
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/imx7d-clock.h>
> +    m4_reserved_sysmem1: cm4@80000000 {
> +      reg = <0x80000000 0x80000>;
> +    };
> +
> +    m4_reserved_sysmem2: cm4@81000000 {
> +      reg = <0x81000000 0x80000>;
> +    };
> +
> +    imx7d-cm4 {
> +      compatible	= "fsl,imx7d-cm4";
> +      memory-region	= <&m4_reserved_sysmem1>, <&m4_reserved_sysmem2>;
> +      syscon		= <&src>;
> +      clocks		= <&clks IMX7D_ARM_M4_ROOT_CLK>;
> +    };
> +
> +...
> diff --git a/Documentation/devicetree/bindings/remoteproc/imx-rproc.txt b/Documentation/devicetree/bindings/remoteproc/imx-rproc.txt
> deleted file mode 100644
> index fbcefd965dc4..000000000000
> --- a/Documentation/devicetree/bindings/remoteproc/imx-rproc.txt
> +++ /dev/null
> @@ -1,33 +0,0 @@
> -NXP iMX6SX/iMX7D Co-Processor Bindings
> -----------------------------------------
> -
> -This binding provides support for ARM Cortex M4 Co-processor found on some
> -NXP iMX SoCs.
> -
> -Required properties:
> -- compatible		Should be one of:
> -				"fsl,imx7d-cm4"
> -				"fsl,imx6sx-cm4"
> -- clocks		Clock for co-processor (See: ../clock/clock-bindings.txt)
> -- syscon		Phandle to syscon block which provide access to
> -			System Reset Controller
> -
> -Optional properties:
> -- memory-region		list of phandels to the reserved memory regions.
> -			(See: ../reserved-memory/reserved-memory.txt)
> -
> -Example:
> -	m4_reserved_sysmem1: cm4@80000000 {
> -		reg = <0x80000000 0x80000>;
> -	};
> -
> -	m4_reserved_sysmem2: cm4@81000000 {
> -		reg = <0x81000000 0x80000>;
> -	};
> -
> -	imx7d-cm4 {
> -		compatible	= "fsl,imx7d-cm4";
> -		memory-region	= <&m4_reserved_sysmem1>, <&m4_reserved_sysmem2>;
> -		syscon		= <&src>;
> -		clocks		= <&clks IMX7D_ARM_M4_ROOT_CLK>;
> -	};
> -- 
> 2.30.0
> 

WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org>
To: peng.fan@oss.nxp.com
Cc: ohad@wizery.com, devicetree@vger.kernel.org,
	Peng Fan <peng.fan@nxp.com>,
	mathieu.poirier@linaro.org, festevam@gmail.com,
	s.hauer@pengutronix.de, linux-remoteproc@vger.kernel.org,
	linux-kernel@vger.kernel.org, patrice.chotard@st.com,
	bjorn.andersson@linaro.org, paul@crapouillou.net,
	o.rempel@pengutronix.de, agross@kernel.org, linux-imx@nxp.com,
	kernel@pengutronix.de, matthias.bgg@gmail.com,
	shawnguo@kernel.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH V10 01/10] dt-bindings: remoteproc: convert imx rproc bindings to json-schema
Date: Wed, 10 Feb 2021 11:37:41 -0600	[thread overview]
Message-ID: <20210210173741.GA2378005@robh.at.kernel.org> (raw)
In-Reply-To: <1612774571-6134-2-git-send-email-peng.fan@oss.nxp.com>

On Mon, Feb 08, 2021 at 04:56:02PM +0800, peng.fan@oss.nxp.com wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> Convert the imx rproc binding to DT schema format using json-schema.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../bindings/remoteproc/fsl,imx-rproc.yaml    | 59 +++++++++++++++++++
>  .../bindings/remoteproc/imx-rproc.txt         | 33 -----------
>  2 files changed, 59 insertions(+), 33 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
>  delete mode 100644 Documentation/devicetree/bindings/remoteproc/imx-rproc.txt
> 
> diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> new file mode 100644
> index 000000000000..5e906fa6a39d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
> @@ -0,0 +1,59 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$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
> +
> +description:
> +  This binding provides support for ARM Cortex M4 Co-processor found on some NXP iMX SoCs.
> +
> +maintainers:
> +  - Peng Fan <peng.fan@nxp.com>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - fsl,imx7d-cm4
> +      - fsl,imx6sx-cm4
> +
> +  clocks:
> +    maxItems: 1
> +
> +  syscon:
> +    $ref: /schemas/types.yaml#/definitions/phandle
> +    description:
> +      Phandle to syscon block which provide access to System Reset Controller
> +
> +  memory-region:
> +    description:
> +      If present, a phandle for a reserved memory area that used for vdev buffer,
> +      resource table, vring region and others used by remote processor.

You need to define what each one is as a schema. How does the driver 
know which one is the vring region for example? Minimally, it's:

items:
  - description: ...
  - description: ...
  - description: ...

But if what's present is variable, then it gets more complicated. If the 
OS side doesn't need to know what each region is, then you can do just:

minItems: N
maxItems: M

Rob



> +
> +required:
> +  - compatible
> +  - clocks
> +  - syscon
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/imx7d-clock.h>
> +    m4_reserved_sysmem1: cm4@80000000 {
> +      reg = <0x80000000 0x80000>;
> +    };
> +
> +    m4_reserved_sysmem2: cm4@81000000 {
> +      reg = <0x81000000 0x80000>;
> +    };
> +
> +    imx7d-cm4 {
> +      compatible	= "fsl,imx7d-cm4";
> +      memory-region	= <&m4_reserved_sysmem1>, <&m4_reserved_sysmem2>;
> +      syscon		= <&src>;
> +      clocks		= <&clks IMX7D_ARM_M4_ROOT_CLK>;
> +    };
> +
> +...
> diff --git a/Documentation/devicetree/bindings/remoteproc/imx-rproc.txt b/Documentation/devicetree/bindings/remoteproc/imx-rproc.txt
> deleted file mode 100644
> index fbcefd965dc4..000000000000
> --- a/Documentation/devicetree/bindings/remoteproc/imx-rproc.txt
> +++ /dev/null
> @@ -1,33 +0,0 @@
> -NXP iMX6SX/iMX7D Co-Processor Bindings
> -----------------------------------------
> -
> -This binding provides support for ARM Cortex M4 Co-processor found on some
> -NXP iMX SoCs.
> -
> -Required properties:
> -- compatible		Should be one of:
> -				"fsl,imx7d-cm4"
> -				"fsl,imx6sx-cm4"
> -- clocks		Clock for co-processor (See: ../clock/clock-bindings.txt)
> -- syscon		Phandle to syscon block which provide access to
> -			System Reset Controller
> -
> -Optional properties:
> -- memory-region		list of phandels to the reserved memory regions.
> -			(See: ../reserved-memory/reserved-memory.txt)
> -
> -Example:
> -	m4_reserved_sysmem1: cm4@80000000 {
> -		reg = <0x80000000 0x80000>;
> -	};
> -
> -	m4_reserved_sysmem2: cm4@81000000 {
> -		reg = <0x81000000 0x80000>;
> -	};
> -
> -	imx7d-cm4 {
> -		compatible	= "fsl,imx7d-cm4";
> -		memory-region	= <&m4_reserved_sysmem1>, <&m4_reserved_sysmem2>;
> -		syscon		= <&src>;
> -		clocks		= <&clks IMX7D_ARM_M4_ROOT_CLK>;
> -	};
> -- 
> 2.30.0
> 

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2021-02-10 17:39 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-08  8:56 [PATCH V10 00/10] remoteproc: imx_rproc: support iMX8MQ/M peng.fan
2021-02-08  8:56 ` peng.fan
2021-02-08  8:56 ` [PATCH V10 01/10] dt-bindings: remoteproc: convert imx rproc bindings to json-schema peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-10 17:37   ` Rob Herring [this message]
2021-02-10 17:37     ` Rob Herring
2021-02-13 11:26     ` Peng Fan
2021-02-13 11:26       ` Peng Fan
2021-02-08  8:56 ` [PATCH V10 02/10] dt-bindings: remoteproc: imx_rproc: add i.MX8MQ/M support peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 03/10] remoteproc: introduce is_iomem to rproc_mem_entry peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 04/10] remoteproc: add is_iomem to da_to_va peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-09  6:30   ` kernel test robot
2021-02-09  6:30     ` kernel test robot
2021-02-08  8:56 ` [PATCH V10 05/10] remoteproc: imx_rproc: correct err message peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 06/10] remoteproc: imx_rproc: use devm_ioremap peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 07/10] remoteproc: imx_rproc: add i.MX specific parse fw hook peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 08/10] remoteproc: imx_rproc: support i.MX8MQ/M peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 09/10] remoteproc: imx_rproc: ignore mapping vdev regions peng.fan
2021-02-08  8:56   ` peng.fan
2021-02-08  8:56 ` [PATCH V10 10/10] remoteproc: imx_proc: enable virtio/mailbox peng.fan
2021-02-08  8:56   ` peng.fan
  -- strict thread matches above, loose matches on Subject: below --
2021-02-15 12:34 [PATCH V10 00/10] remoteproc: imx_rproc: support iMX8MQ/M peng.fan
2021-02-15 12:34 ` [PATCH V10 01/10] dt-bindings: remoteproc: convert imx rproc bindings to json-schema peng.fan
2021-02-15 12:34   ` peng.fan
2021-02-17 20:24   ` Rob Herring
2021-02-17 20:24     ` Rob Herring

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210210173741.GA2378005@robh.at.kernel.org \
    --to=robh@kernel.org \
    --cc=agross@kernel.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=festevam@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=mathieu.poirier@linaro.org \
    --cc=matthias.bgg@gmail.com \
    --cc=o.rempel@pengutronix.de \
    --cc=ohad@wizery.com \
    --cc=patrice.chotard@st.com \
    --cc=paul@crapouillou.net \
    --cc=peng.fan@nxp.com \
    --cc=peng.fan@oss.nxp.com \
    --cc=s.hauer@pengutronix.de \
    --cc=shawnguo@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.