diff mbox series

[V3,2/5] dt-bindings: i2c: Add bindings for i2c-virtio

Message ID 4182aff2d1437b30025f3d17d11e5fdc21845239.1627273794.git.viresh.kumar@linaro.org
State Superseded
Headers show
Series virtio: Add virtio-device bindings | expand

Commit Message

Viresh Kumar July 26, 2021, 4:51 a.m. UTC
This patch adds binding for virtio I2C device, it is based on
virtio-device bindings.

Acked-by: Wolfram Sang <wsa@kernel.org>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 .../devicetree/bindings/i2c/i2c-virtio.yaml   | 51 +++++++++++++++++++
 1 file changed, 51 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/i2c/i2c-virtio.yaml

Comments

Arnd Bergmann July 26, 2021, 8:11 a.m. UTC | #1
On Mon, Jul 26, 2021 at 10:06 AM Arnd Bergmann <arnd@kernel.org> wrote:
>
> On Mon, Jul 26, 2021 at 6:52 AM Viresh Kumar <viresh.kumar@linaro.org> wrote:
> >
> > This patch adds binding for virtio I2C device, it is based on
> > virtio-device bindings.
> >
> > Acked-by: Wolfram Sang <wsa@kernel.org>
> > Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
>
> Reviewed-by: Arnd Bergmann <arnd@arndb.de>

Too quick, after seeing the same issue in the gpio binding I saw it here too:

> +        i2c-virtio {
> +            compatible = "virtio,22";

The node name "i2c-virtio" looks wrong. According to
https://github.com/devicetree-org/dt-schema/blob/master/schemas/i2c/i2c-controller.yaml,
this needs to be plain "i2c".

       Arnd
Rob Herring July 26, 2021, 3:06 p.m. UTC | #2
On Sun, Jul 25, 2021 at 10:52 PM Viresh Kumar <viresh.kumar@linaro.org> wrote:
>
> This patch adds binding for virtio I2C device, it is based on
> virtio-device bindings.
>
> Acked-by: Wolfram Sang <wsa@kernel.org>
> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
> ---
>  .../devicetree/bindings/i2c/i2c-virtio.yaml   | 51 +++++++++++++++++++
>  1 file changed, 51 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/i2c/i2c-virtio.yaml
>
> diff --git a/Documentation/devicetree/bindings/i2c/i2c-virtio.yaml b/Documentation/devicetree/bindings/i2c/i2c-virtio.yaml
> new file mode 100644
> index 000000000000..0381d9065287
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/i2c/i2c-virtio.yaml
> @@ -0,0 +1,51 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/i2c/i2c-virtio.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Virtio I2C Adapter
> +
> +maintainers:
> +  - Viresh Kumar <viresh.kumar@linaro.org>
> +
> +allOf:
> +  - $ref: /schemas/i2c/i2c-controller.yaml#
> +  - $ref: /schemas/virtio/virtio-device.yaml#
> +
> +description:
> +  Virtio I2C device, see /schemas/virtio/virtio-device.yaml for more details.
> +
> +properties:
> +  $nodename:
> +    pattern: '^i2c-virtio(-[a-z0-9]+)?$'

i2c-controller.yaml already defines the node name. In this case
though, it can be restricted a bit more to be just 'i2c' as there's
only a single instance.

> +
> +  compatible:
> +    const: virtio,22
> +
> +required:
> +  - compatible
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    virtio@3000 {
> +        compatible = "virtio,mmio";
> +        reg = <0x3000 0x100>;
> +        interrupts = <41>;
> +
> +        i2c-virtio {
> +            compatible = "virtio,22";
> +
> +            #address-cells = <1>;
> +            #size-cells = <0>;
> +
> +            light-sensor@1c {
> +                compatible = "dynaimage,al3320a";
> +                reg = <0x20>;
> +            };
> +        };
> +    };
> +
> +...
> --
> 2.31.1.272.g89b43f80a514
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/i2c/i2c-virtio.yaml b/Documentation/devicetree/bindings/i2c/i2c-virtio.yaml
new file mode 100644
index 000000000000..0381d9065287
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/i2c-virtio.yaml
@@ -0,0 +1,51 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/i2c/i2c-virtio.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Virtio I2C Adapter
+
+maintainers:
+  - Viresh Kumar <viresh.kumar@linaro.org>
+
+allOf:
+  - $ref: /schemas/i2c/i2c-controller.yaml#
+  - $ref: /schemas/virtio/virtio-device.yaml#
+
+description:
+  Virtio I2C device, see /schemas/virtio/virtio-device.yaml for more details.
+
+properties:
+  $nodename:
+    pattern: '^i2c-virtio(-[a-z0-9]+)?$'
+
+  compatible:
+    const: virtio,22
+
+required:
+  - compatible
+
+unevaluatedProperties: false
+
+examples:
+  - |
+    virtio@3000 {
+        compatible = "virtio,mmio";
+        reg = <0x3000 0x100>;
+        interrupts = <41>;
+
+        i2c-virtio {
+            compatible = "virtio,22";
+
+            #address-cells = <1>;
+            #size-cells = <0>;
+
+            light-sensor@1c {
+                compatible = "dynaimage,al3320a";
+                reg = <0x20>;
+            };
+        };
+    };
+
+...