linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] dt-bindings: mailbox: zynqmp_ipi: convert to yaml
@ 2021-11-12  8:46 Shubhrajyoti Datta
  2021-11-12 13:48 ` Rob Herring
  2021-11-29  1:46 ` Rob Herring
  0 siblings, 2 replies; 3+ messages in thread
From: Shubhrajyoti Datta @ 2021-11-12  8:46 UTC (permalink / raw)
  To: devicetree; +Cc: linux-kernel, robh+dt, michal.simek, Shubhrajyoti Datta

Convert the ipi doc to yaml.

Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
---
v2:
Fix the warnings reported by Rob

 .../mailbox/xlnx,zynqmp-ipi-mailbox.txt       | 127 ------------------
 .../mailbox/xlnx,zynqmp-ipi-mailbox.yaml      |  63 +++++++++
 2 files changed, 63 insertions(+), 127 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
 create mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml

diff --git a/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt b/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
deleted file mode 100644
index ad76edccf881..000000000000
--- a/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
+++ /dev/null
@@ -1,127 +0,0 @@
-Xilinx IPI Mailbox Controller
-========================================
-
-The Xilinx IPI(Inter Processor Interrupt) mailbox controller is to manage
-messaging between two Xilinx Zynq UltraScale+ MPSoC IPI agents. Each IPI
-agent owns registers used for notification and buffers for message.
-
-               +-------------------------------------+
-               | Xilinx ZynqMP IPI Controller        |
-               +-------------------------------------+
-    +--------------------------------------------------+
-ATF                    |                     |
-                       |                     |
-                       |                     |
-    +--------------------------+             |
-                       |                     |
-                       |                     |
-    +--------------------------------------------------+
-            +------------------------------------------+
-            |  +----------------+   +----------------+ |
-Hardware    |  |  IPI Agent     |   |  IPI Buffers   | |
-            |  |  Registers     |   |                | |
-            |  |                |   |                | |
-            |  +----------------+   +----------------+ |
-            |                                          |
-            | Xilinx IPI Agent Block                   |
-            +------------------------------------------+
-
-
-Controller Device Node:
-===========================
-Required properties:
---------------------
-IPI agent node:
-- compatible:		Shall be: "xlnx,zynqmp-ipi-mailbox"
-- interrupt-parent:	Phandle for the interrupt controller
-- interrupts:		Interrupt information corresponding to the
-			interrupt-names property.
-- xlnx,ipi-id:		local Xilinx IPI agent ID
-- #address-cells:	number of address cells of internal IPI mailbox nodes
-- #size-cells:		number of size cells of internal IPI mailbox nodes
-
-Internal IPI mailbox node:
-- reg:			IPI buffers address ranges
-- reg-names:		Names of the reg resources. It should have:
-			* local_request_region
-			  - IPI request msg buffer written by local and read
-			    by remote
-			* local_response_region
-			  - IPI response msg buffer written by local and read
-			    by remote
-			* remote_request_region
-			  - IPI request msg buffer written by remote and read
-			    by local
-			* remote_response_region
-			  - IPI response msg buffer written by remote and read
-			    by local
-- #mbox-cells:		Shall be 1. It contains:
-			* tx(0) or rx(1) channel
-- xlnx,ipi-id:		remote Xilinx IPI agent ID of which the mailbox is
-			connected to.
-
-Optional properties:
---------------------
-- method:              The method of accessing the IPI agent registers.
-                       Permitted values are: "smc" and "hvc". Default is
-                       "smc".
-
-Client Device Node:
-===========================
-Required properties:
---------------------
-- mboxes:		Standard property to specify a mailbox
-			(See ./mailbox.txt)
-- mbox-names:		List of identifier  strings for each mailbox
-			channel.
-
-Example:
-===========================
-	zynqmp_ipi {
-		compatible = "xlnx,zynqmp-ipi-mailbox";
-		interrupt-parent = <&gic>;
-		interrupts = <0 29 4>;
-		xlnx,ipi-id = <0>;
-		#address-cells = <1>;
-		#size-cells = <1>;
-		ranges;
-
-		/* APU<->RPU0 IPI mailbox controller */
-		ipi_mailbox_rpu0: mailbox@ff990400 {
-			reg = <0xff990400 0x20>,
-			      <0xff990420 0x20>,
-			      <0xff990080 0x20>,
-			      <0xff9900a0 0x20>;
-			reg-names = "local_request_region",
-				    "local_response_region",
-				    "remote_request_region",
-				    "remote_response_region";
-			#mbox-cells = <1>;
-			xlnx,ipi-id = <1>;
-		};
-		/* APU<->RPU1 IPI mailbox controller */
-		ipi_mailbox_rpu1: mailbox@ff990440 {
-			reg = <0xff990440 0x20>,
-			      <0xff990460 0x20>,
-			      <0xff990280 0x20>,
-			      <0xff9902a0 0x20>;
-			reg-names = "local_request_region",
-				    "local_response_region",
-				    "remote_request_region",
-				    "remote_response_region";
-			#mbox-cells = <1>;
-			xlnx,ipi-id = <2>;
-		};
-	};
-	rpu0 {
-		...
-		mboxes = <&ipi_mailbox_rpu0 0>,
-			 <&ipi_mailbox_rpu0 1>;
-		mbox-names = "tx", "rx";
-	};
-	rpu1 {
-		...
-		mboxes = <&ipi_mailbox_rpu1 0>,
-			 <&ipi_mailbox_rpu1 1>;
-		mbox-names = "tx", "rx";
-	};
diff --git a/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml b/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
new file mode 100644
index 000000000000..8019a7b294ef
--- /dev/null
+++ b/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
@@ -0,0 +1,63 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/mailbox/xlnx,zynqmp-ipi-mailbox.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Xilinx IPI Mailbox controller bindings
+
+description:
+  The Xilinx IPI(Inter Processor Interrupt) mailbox controller is to manage
+  messaging between two Xilinx Zynq UltraScale+ MPSoC IPI agents. Each IPI
+  agent owns registers used for notification and buffers for message.
+
+maintainers:
+  - Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
+
+properties:
+  compatible:
+    const: xlnx,zynqmp-ipi-mailbox
+
+  reg:
+    maxItems: 4
+
+  interrupts:
+    maxItems: 1
+
+  "#mbox-cells":
+    const: 1
+
+  xlnx,ipi-id:
+    description: Xilinx IPI agent id
+    $ref: /schemas/types.yaml#/definitions/uint32
+
+required:
+  - compatible
+  - xlnx,ipi-id
+  - interrupts
+
+additionalProperties: false
+
+examples:
+  - |
+     zynqmp_ipi {
+          compatible = "xlnx,zynqmp-ipi-mailbox";
+          interrupt-parent = <&gic>;
+          interrupts = <0 29 4>;
+          xlnx,ipi-id = <0>;
+     };
+
+          /* Client node APU<->RPU0 IPI mailbox controller */
+          ipi_mailbox_rpu0: mailbox@ff990400 {
+               reg = <0xff990400 0x20>,
+                     <0xff990420 0x20>,
+                     <0xff990080 0x20>,
+                     <0xff9900a0 0x20>;
+               reg-names = "local_request_region",
+                        "local_response_region",
+                        "remote_request_region",
+                        "remote_response_region";
+               #mbox-cells = <1>;
+               xlnx,ipi-id = <1>;
+          };
+...
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] dt-bindings: mailbox: zynqmp_ipi: convert to yaml
  2021-11-12  8:46 [PATCH v2] dt-bindings: mailbox: zynqmp_ipi: convert to yaml Shubhrajyoti Datta
@ 2021-11-12 13:48 ` Rob Herring
  2021-11-29  1:46 ` Rob Herring
  1 sibling, 0 replies; 3+ messages in thread
From: Rob Herring @ 2021-11-12 13:48 UTC (permalink / raw)
  To: Shubhrajyoti Datta; +Cc: michal.simek, devicetree, robh+dt, linux-kernel

On Fri, 12 Nov 2021 14:16:05 +0530, Shubhrajyoti Datta wrote:
> Convert the ipi doc to yaml.
> 
> Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
> ---
> v2:
> Fix the warnings reported by Rob
> 
>  .../mailbox/xlnx,zynqmp-ipi-mailbox.txt       | 127 ------------------
>  .../mailbox/xlnx,zynqmp-ipi-mailbox.yaml      |  63 +++++++++
>  2 files changed, 63 insertions(+), 127 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
>  create mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/1554211


zynqmp_ipi: '#address-cells', '#size-cells', 'mailbox@ff990400', 'ranges' do not match any of the regexes: 'pinctrl-[0-9]+'
	arch/arm64/boot/dts/xilinx/avnet-ultra96-rev1.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1232-revA.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1254-revA.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1275-revA.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm015-dc1.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm016-dc2.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm017-dc3.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm018-dc4.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm019-dc5.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev1.0.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-revA.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-revB.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revC.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu106-revA.dt.yaml
	arch/arm64/boot/dts/xilinx/zynqmp-zcu111-revA.dt.yaml


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] dt-bindings: mailbox: zynqmp_ipi: convert to yaml
  2021-11-12  8:46 [PATCH v2] dt-bindings: mailbox: zynqmp_ipi: convert to yaml Shubhrajyoti Datta
  2021-11-12 13:48 ` Rob Herring
@ 2021-11-29  1:46 ` Rob Herring
  1 sibling, 0 replies; 3+ messages in thread
From: Rob Herring @ 2021-11-29  1:46 UTC (permalink / raw)
  To: Shubhrajyoti Datta; +Cc: devicetree, linux-kernel, michal.simek

On Fri, Nov 12, 2021 at 02:16:05PM +0530, Shubhrajyoti Datta wrote:
> Convert the ipi doc to yaml.
> 
> Signed-off-by: Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
> ---
> v2:
> Fix the warnings reported by Rob
> 
>  .../mailbox/xlnx,zynqmp-ipi-mailbox.txt       | 127 ------------------
>  .../mailbox/xlnx,zynqmp-ipi-mailbox.yaml      |  63 +++++++++
>  2 files changed, 63 insertions(+), 127 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
>  create mode 100644 Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
> 
> diff --git a/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt b/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
> deleted file mode 100644
> index ad76edccf881..000000000000
> --- a/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt
> +++ /dev/null
> @@ -1,127 +0,0 @@
> -Xilinx IPI Mailbox Controller
> -========================================
> -
> -The Xilinx IPI(Inter Processor Interrupt) mailbox controller is to manage
> -messaging between two Xilinx Zynq UltraScale+ MPSoC IPI agents. Each IPI
> -agent owns registers used for notification and buffers for message.
> -
> -               +-------------------------------------+
> -               | Xilinx ZynqMP IPI Controller        |
> -               +-------------------------------------+
> -    +--------------------------------------------------+
> -ATF                    |                     |
> -                       |                     |
> -                       |                     |
> -    +--------------------------+             |
> -                       |                     |
> -                       |                     |
> -    +--------------------------------------------------+
> -            +------------------------------------------+
> -            |  +----------------+   +----------------+ |
> -Hardware    |  |  IPI Agent     |   |  IPI Buffers   | |
> -            |  |  Registers     |   |                | |
> -            |  |                |   |                | |
> -            |  +----------------+   +----------------+ |
> -            |                                          |
> -            | Xilinx IPI Agent Block                   |
> -            +------------------------------------------+
> -
> -
> -Controller Device Node:
> -===========================
> -Required properties:
> ---------------------
> -IPI agent node:
> -- compatible:		Shall be: "xlnx,zynqmp-ipi-mailbox"
> -- interrupt-parent:	Phandle for the interrupt controller
> -- interrupts:		Interrupt information corresponding to the
> -			interrupt-names property.
> -- xlnx,ipi-id:		local Xilinx IPI agent ID
> -- #address-cells:	number of address cells of internal IPI mailbox nodes
> -- #size-cells:		number of size cells of internal IPI mailbox nodes
> -
> -Internal IPI mailbox node:
> -- reg:			IPI buffers address ranges
> -- reg-names:		Names of the reg resources. It should have:
> -			* local_request_region
> -			  - IPI request msg buffer written by local and read
> -			    by remote
> -			* local_response_region
> -			  - IPI response msg buffer written by local and read
> -			    by remote
> -			* remote_request_region
> -			  - IPI request msg buffer written by remote and read
> -			    by local
> -			* remote_response_region
> -			  - IPI response msg buffer written by remote and read
> -			    by local
> -- #mbox-cells:		Shall be 1. It contains:
> -			* tx(0) or rx(1) channel
> -- xlnx,ipi-id:		remote Xilinx IPI agent ID of which the mailbox is
> -			connected to.
> -
> -Optional properties:
> ---------------------
> -- method:              The method of accessing the IPI agent registers.
> -                       Permitted values are: "smc" and "hvc". Default is
> -                       "smc".
> -
> -Client Device Node:
> -===========================
> -Required properties:
> ---------------------
> -- mboxes:		Standard property to specify a mailbox
> -			(See ./mailbox.txt)
> -- mbox-names:		List of identifier  strings for each mailbox
> -			channel.
> -
> -Example:
> -===========================
> -	zynqmp_ipi {
> -		compatible = "xlnx,zynqmp-ipi-mailbox";
> -		interrupt-parent = <&gic>;
> -		interrupts = <0 29 4>;
> -		xlnx,ipi-id = <0>;
> -		#address-cells = <1>;
> -		#size-cells = <1>;
> -		ranges;
> -
> -		/* APU<->RPU0 IPI mailbox controller */
> -		ipi_mailbox_rpu0: mailbox@ff990400 {
> -			reg = <0xff990400 0x20>,
> -			      <0xff990420 0x20>,
> -			      <0xff990080 0x20>,
> -			      <0xff9900a0 0x20>;
> -			reg-names = "local_request_region",
> -				    "local_response_region",
> -				    "remote_request_region",
> -				    "remote_response_region";
> -			#mbox-cells = <1>;
> -			xlnx,ipi-id = <1>;
> -		};
> -		/* APU<->RPU1 IPI mailbox controller */
> -		ipi_mailbox_rpu1: mailbox@ff990440 {
> -			reg = <0xff990440 0x20>,
> -			      <0xff990460 0x20>,
> -			      <0xff990280 0x20>,
> -			      <0xff9902a0 0x20>;
> -			reg-names = "local_request_region",
> -				    "local_response_region",
> -				    "remote_request_region",
> -				    "remote_response_region";
> -			#mbox-cells = <1>;
> -			xlnx,ipi-id = <2>;
> -		};
> -	};
> -	rpu0 {
> -		...
> -		mboxes = <&ipi_mailbox_rpu0 0>,
> -			 <&ipi_mailbox_rpu0 1>;
> -		mbox-names = "tx", "rx";
> -	};
> -	rpu1 {
> -		...
> -		mboxes = <&ipi_mailbox_rpu1 0>,
> -			 <&ipi_mailbox_rpu1 1>;
> -		mbox-names = "tx", "rx";
> -	};
> diff --git a/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml b/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
> new file mode 100644
> index 000000000000..8019a7b294ef
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.yaml
> @@ -0,0 +1,63 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/mailbox/xlnx,zynqmp-ipi-mailbox.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Xilinx IPI Mailbox controller bindings
> +
> +description:
> +  The Xilinx IPI(Inter Processor Interrupt) mailbox controller is to manage
> +  messaging between two Xilinx Zynq UltraScale+ MPSoC IPI agents. Each IPI
> +  agent owns registers used for notification and buffers for message.
> +
> +maintainers:
> +  - Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
> +
> +properties:
> +  compatible:
> +    const: xlnx,zynqmp-ipi-mailbox
> +
> +  reg:
> +    maxItems: 4
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  "#mbox-cells":
> +    const: 1
> +
> +  xlnx,ipi-id:
> +    description: Xilinx IPI agent id
> +    $ref: /schemas/types.yaml#/definitions/uint32
> +
> +required:
> +  - compatible
> +  - xlnx,ipi-id
> +  - interrupts
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +     zynqmp_ipi {
> +          compatible = "xlnx,zynqmp-ipi-mailbox";
> +          interrupt-parent = <&gic>;
> +          interrupts = <0 29 4>;
> +          xlnx,ipi-id = <0>;
> +     };
> +
> +          /* Client node APU<->RPU0 IPI mailbox controller */
> +          ipi_mailbox_rpu0: mailbox@ff990400 {
> +               reg = <0xff990400 0x20>,
> +                     <0xff990420 0x20>,
> +                     <0xff990080 0x20>,
> +                     <0xff9900a0 0x20>;
> +               reg-names = "local_request_region",
> +                        "local_response_region",
> +                        "remote_request_region",
> +                        "remote_response_region";
> +               #mbox-cells = <1>;
> +               xlnx,ipi-id = <1>;
> +          };

This doesn't match the original example nor the schema. And also the 
actual dts files based on dtbs_check...

Rob

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-11-29  1:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-12  8:46 [PATCH v2] dt-bindings: mailbox: zynqmp_ipi: convert to yaml Shubhrajyoti Datta
2021-11-12 13:48 ` Rob Herring
2021-11-29  1:46 ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).