linux-renesas-soc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] dt-bindings: adv7180: Convert bindings to json-schema
@ 2020-07-04 16:06 Niklas Söderlund
  2020-07-04 16:06 ` [PATCH 1/2] " Niklas Söderlund
  2020-07-04 16:06 ` [PATCH 2/2] MAINTAINERS: Add ADV7180 bindings documentation Niklas Söderlund
  0 siblings, 2 replies; 4+ messages in thread
From: Niklas Söderlund @ 2020-07-04 16:06 UTC (permalink / raw)
  To: Lars-Peter Clausen, Rob Herring
  Cc: devicetree, linux-renesas-soc, Niklas Söderlund

Hello Lars,

This series converts the ADV7180 bindings to YAML and lists the new file 
under MAINTAINERS. I have used the schema to validate the usage of the 
bindings and found some issues with some Renesas boards [1].

1. [PATCH 0/2] ARM: dts: renesas: Cleanup ADV7180 bindings

Niklas Söderlund (2):
  dt-bindings: adv7180: Convert bindings to json-schema
  MAINTAINERS: Add ADV7180 bindings documentation

 .../devicetree/bindings/media/i2c/adv7180.txt |  49 -----
 .../bindings/media/i2c/adv7180.yaml           | 184 ++++++++++++++++++
 MAINTAINERS                                   |   1 +
 3 files changed, 185 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/media/i2c/adv7180.txt
 create mode 100644 Documentation/devicetree/bindings/media/i2c/adv7180.yaml

-- 
2.27.0


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

* [PATCH 1/2] dt-bindings: adv7180: Convert bindings to json-schema
  2020-07-04 16:06 [PATCH 0/2] dt-bindings: adv7180: Convert bindings to json-schema Niklas Söderlund
@ 2020-07-04 16:06 ` Niklas Söderlund
  2020-07-09 20:47   ` Rob Herring
  2020-07-04 16:06 ` [PATCH 2/2] MAINTAINERS: Add ADV7180 bindings documentation Niklas Söderlund
  1 sibling, 1 reply; 4+ messages in thread
From: Niklas Söderlund @ 2020-07-04 16:06 UTC (permalink / raw)
  To: Lars-Peter Clausen, Rob Herring
  Cc: devicetree, linux-renesas-soc, Niklas Söderlund

Convert ADV7180 analog video decoder documentation to json-schema.

As the examples in the bindings can be tested add another example to
test the more advance adv7180cp binding description.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
 .../devicetree/bindings/media/i2c/adv7180.txt |  49 -----
 .../bindings/media/i2c/adv7180.yaml           | 184 ++++++++++++++++++
 2 files changed, 184 insertions(+), 49 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/media/i2c/adv7180.txt
 create mode 100644 Documentation/devicetree/bindings/media/i2c/adv7180.yaml

diff --git a/Documentation/devicetree/bindings/media/i2c/adv7180.txt b/Documentation/devicetree/bindings/media/i2c/adv7180.txt
deleted file mode 100644
index 552b6a82cb1f0ed4..0000000000000000
--- a/Documentation/devicetree/bindings/media/i2c/adv7180.txt
+++ /dev/null
@@ -1,49 +0,0 @@
-* Analog Devices ADV7180 analog video decoder family
-
-The adv7180 family devices are used to capture analog video to different
-digital interfaces like MIPI CSI-2 or parallel video.
-
-Required Properties :
-- compatible : value must be one of
-		"adi,adv7180"
-		"adi,adv7180cp"
-		"adi,adv7180st"
-		"adi,adv7182"
-		"adi,adv7280"
-		"adi,adv7280-m"
-		"adi,adv7281"
-		"adi,adv7281-m"
-		"adi,adv7281-ma"
-		"adi,adv7282"
-		"adi,adv7282-m"
-
-Device nodes of "adi,adv7180cp" and "adi,adv7180st" must contain one
-'port' child node per device input and output port, in accordance with the
-video interface bindings defined in
-Documentation/devicetree/bindings/media/video-interfaces.txt. The port
-nodes are numbered as follows.
-
-  Port		adv7180cp	adv7180st
--------------------------------------------------------------------
-  Input		0-2		0-5
-  Output	3		6
-
-The digital output port node must contain at least one endpoint.
-
-Optional Properties :
-- powerdown-gpios: reference to the GPIO connected to the powerdown pin,
-  if any.
-
-
-Example:
-
-	i2c0@1c22000 {
-		...
-		...
-		adv7180@21 {
-			compatible = "adi,adv7180";
-			reg = <0x21>;
-		};
-		...
-	};
-
diff --git a/Documentation/devicetree/bindings/media/i2c/adv7180.yaml b/Documentation/devicetree/bindings/media/i2c/adv7180.yaml
new file mode 100644
index 0000000000000000..e0084b272b25a194
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/adv7180.yaml
@@ -0,0 +1,184 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/i2c/adv7180.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Analog Devices ADV7180 analog video decoder family
+
+maintainers:
+  - Lars-Peter Clausen <lars@metafoo.de>
+
+description:
+  The adv7180 family devices are used to capture analog video to different
+  digital interfaces like MIPI CSI-2 or parallel video.
+
+properties:
+  compatible:
+    items:
+      - enum:
+        - adi,adv7180
+        - adi,adv7180cp
+        - adi,adv7180st
+        - adi,adv7182
+        - adi,adv7280
+        - adi,adv7280-m
+        - adi,adv7281
+        - adi,adv7281-m
+        - adi,adv7281-ma
+        - adi,adv7282
+        - adi,adv7282-m
+
+  reg:
+    maxItems: 1
+
+  powerdown-gpios:
+    maxItems: 1
+
+  port:
+    type: object
+    description:
+      A node containing a single endpoint as doucmented in
+      Documentation/devicetree/bindings/media/video-interfaces.txt
+
+  ports:
+    type: object
+    description:
+      A node containing input and output port nodes with endpoint definitions
+      as documented in
+      Documentation/devicetree/bindings/media/video-interfaces.txt
+
+additionalProperties: false
+
+required:
+  - compatible
+  - reg
+
+allOf:
+  - if:
+      properties:
+        compatible:
+          items:
+            - enum:
+              - adi,adv7180
+              - adi,adv7182
+              - adi,adv7280
+              - adi,adv7280-m
+              - adi,adv7281
+              - adi,adv7281-m
+              - adi,adv7281-ma
+              - adi,adv7282
+              - adi,adv7282-m
+    then:
+      required:
+        - port
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: adi,adv7180cp
+    then:
+      properties:
+        ports:
+          properties:
+            '#address-cells':
+              const: 1
+            '#size-cells':
+              const: 0
+            port@3:
+              type: object
+              description: Output port
+
+          patternProperties:
+            "^port@[0-2]$":
+              type: object
+              description: Input port
+
+          required:
+            - port@3
+
+          additionalProperties: false
+
+      required:
+        - ports
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: adi,adv7180st
+    then:
+      properties:
+        ports:
+          properties:
+            '#address-cells':
+              const: 1
+            '#size-cells':
+              const: 0
+            port@6:
+              type: object
+              description: Output port
+
+          patternProperties:
+            "^port@[0-5]$":
+              type: object
+              description: Input port
+
+          required:
+            - port@6
+
+          additionalProperties: false
+
+      required:
+        - ports
+
+examples:
+  - |
+    i2c {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            composite-in@20 {
+                    compatible = "adi,adv7180";
+                    reg = <0x20>;
+
+                    port {
+                            adv7180: endpoint {
+                                    bus-width = <8>;
+                                    remote-endpoint = <&vin1ep>;
+                            };
+                    };
+            };
+
+    };
+
+  - |
+    i2c {
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            composite-in@20 {
+                    compatible = "adi,adv7180cp";
+                    reg = <0x20>;
+
+                    ports {
+                            #address-cells = <1>;
+                            #size-cells = <0>;
+
+                            port@0 {
+                                    reg = <0>;
+                                    adv7180_in: endpoint {
+                                            remote-endpoint = <&composite_con_in>;
+                                    };
+                            };
+
+                            port@3 {
+                                    reg = <3>;
+                                    adv7180_out: endpoint {
+                                            remote-endpoint = <&vin4_in>;
+                                    };
+                            };
+                    };
+            };
+    };
-- 
2.27.0


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

* [PATCH 2/2] MAINTAINERS: Add ADV7180 bindings documentation
  2020-07-04 16:06 [PATCH 0/2] dt-bindings: adv7180: Convert bindings to json-schema Niklas Söderlund
  2020-07-04 16:06 ` [PATCH 1/2] " Niklas Söderlund
@ 2020-07-04 16:06 ` Niklas Söderlund
  1 sibling, 0 replies; 4+ messages in thread
From: Niklas Söderlund @ 2020-07-04 16:06 UTC (permalink / raw)
  To: Lars-Peter Clausen, Rob Herring
  Cc: devicetree, linux-renesas-soc, Niklas Söderlund

Add the YAML dt-bindings document for ADV7180.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
---
 MAINTAINERS | 1 +
 1 file changed, 1 insertion(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index 496fd4eafb68cccc..9f1902fb961d8ad3 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1073,6 +1073,7 @@ L:	linux-media@vger.kernel.org
 S:	Supported
 W:	http://ez.analog.com/community/linux-device-drivers
 F:	drivers/media/i2c/adv7180.c
+F:	Documentation/devicetree/bindings/media/i2c/adv7180.yaml
 
 ANALOG DEVICES INC ADV748X DRIVER
 M:	Kieran Bingham <kieran.bingham@ideasonboard.com>
-- 
2.27.0


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

* Re: [PATCH 1/2] dt-bindings: adv7180: Convert bindings to json-schema
  2020-07-04 16:06 ` [PATCH 1/2] " Niklas Söderlund
@ 2020-07-09 20:47   ` Rob Herring
  0 siblings, 0 replies; 4+ messages in thread
From: Rob Herring @ 2020-07-09 20:47 UTC (permalink / raw)
  To: Niklas Söderlund
  Cc: devicetree, Rob Herring, linux-renesas-soc, Lars-Peter Clausen

On Sat, 04 Jul 2020 18:06:43 +0200, Niklas Söderlund wrote:
> Convert ADV7180 analog video decoder documentation to json-schema.
> 
> As the examples in the bindings can be tested add another example to
> test the more advance adv7180cp binding description.
> 
> Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
> ---
>  .../devicetree/bindings/media/i2c/adv7180.txt |  49 -----
>  .../bindings/media/i2c/adv7180.yaml           | 184 ++++++++++++++++++
>  2 files changed, 184 insertions(+), 49 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/media/i2c/adv7180.txt
>  create mode 100644 Documentation/devicetree/bindings/media/i2c/adv7180.yaml
> 

Applied, thanks!

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

end of thread, other threads:[~2020-07-09 20:47 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-04 16:06 [PATCH 0/2] dt-bindings: adv7180: Convert bindings to json-schema Niklas Söderlund
2020-07-04 16:06 ` [PATCH 1/2] " Niklas Söderlund
2020-07-09 20:47   ` Rob Herring
2020-07-04 16:06 ` [PATCH 2/2] MAINTAINERS: Add ADV7180 bindings documentation Niklas Söderlund

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).