diff mbox series

[1/2] media: dt-bindings: Add OmniVision OV64A40

Message ID 20231010151208.29564-2-jacopo.mondi@ideasonboard.com
State Superseded
Headers show
Series media: i2c: Add driver for OmniVision OV64A40 | expand

Commit Message

Jacopo Mondi Oct. 10, 2023, 3:12 p.m. UTC
Add bindings for OmniVision OV64A40.

Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Lee Jackson <lee.jackson@arducam.com>
---
 .../bindings/media/i2c/ovti,ov64a40.yaml      | 97 +++++++++++++++++++
 MAINTAINERS                                   |  7 ++
 2 files changed, 104 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml

--
2.42.0

Comments

Conor Dooley Oct. 11, 2023, 3:53 p.m. UTC | #1
Hey,

On Tue, Oct 10, 2023 at 05:12:07PM +0200, Jacopo Mondi wrote:
> Add bindings for OmniVision OV64A40.
> 
> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> Signed-off-by: Lee Jackson <lee.jackson@arducam.com>

What does Lee's SoB indicate here?

> diff --git a/MAINTAINERS b/MAINTAINERS
> index b19995690904..df089d68b58c 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -15821,6 +15821,13 @@ S:	Maintained
>  T:	git git://linuxtv.org/media_tree.git
>  F:	drivers/media/i2c/ov5695.c
> 
> +OMNIVISION OV64A40 SENSOR DRIVER
> +M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
> +L:	linux-media@vger.kernel.org
> +S:	Maintained
> +T:	git git://linuxtv.org/media_tree.git

Binding looks fine to me, my question is here. Usually having a tree
here means that you apply the patches yourself. Do you?

Cheers,
Conor.

> +F:	Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml
> +
>  OMNIVISION OV7670 SENSOR DRIVER
>  L:	linux-media@vger.kernel.org
>  S:	Orphan
> --
> 2.42.0
>
Jacopo Mondi Oct. 11, 2023, 4:12 p.m. UTC | #2
On Wed, Oct 11, 2023 at 04:53:34PM +0100, Conor Dooley wrote:
> Hey,
>
> On Tue, Oct 10, 2023 at 05:12:07PM +0200, Jacopo Mondi wrote:
> > Add bindings for OmniVision OV64A40.
> >
> > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> > Signed-off-by: Lee Jackson <lee.jackson@arducam.com>
>
> What does Lee's SoB indicate here?
>

Lee has contributed to the development of the driver and validation of
bindings.

> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index b19995690904..df089d68b58c 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -15821,6 +15821,13 @@ S:	Maintained
> >  T:	git git://linuxtv.org/media_tree.git
> >  F:	drivers/media/i2c/ov5695.c
> >
> > +OMNIVISION OV64A40 SENSOR DRIVER
> > +M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
> > +L:	linux-media@vger.kernel.org
> > +S:	Maintained
> > +T:	git git://linuxtv.org/media_tree.git
>
> Binding looks fine to me, my question is here. Usually having a tree
> here means that you apply the patches yourself. Do you?
>

No, and only Mauro has commit rights on the media tree.

All i2c sensor drivers have a tree listed, regardless who commits
there. What should I put there ?

> Cheers,
> Conor.
>
> > +F:	Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml
> > +
> >  OMNIVISION OV7670 SENSOR DRIVER
> >  L:	linux-media@vger.kernel.org
> >  S:	Orphan
> > --
> > 2.42.0
> >
Conor Dooley Oct. 11, 2023, 4:16 p.m. UTC | #3
On Wed, Oct 11, 2023 at 06:12:28PM +0200, Jacopo Mondi wrote:
> On Wed, Oct 11, 2023 at 04:53:34PM +0100, Conor Dooley wrote:
> > Hey,
> >
> > On Tue, Oct 10, 2023 at 05:12:07PM +0200, Jacopo Mondi wrote:
> > > Add bindings for OmniVision OV64A40.
> > >
> > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> > > Signed-off-by: Lee Jackson <lee.jackson@arducam.com>
> >
> > What does Lee's SoB indicate here?
> >
> 
> Lee has contributed to the development of the driver and validation of
> bindings.

Then you're missing a Co-developed-by: from Lee :)

> > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > index b19995690904..df089d68b58c 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -15821,6 +15821,13 @@ S:	Maintained
> > >  T:	git git://linuxtv.org/media_tree.git
> > >  F:	drivers/media/i2c/ov5695.c
> > >
> > > +OMNIVISION OV64A40 SENSOR DRIVER
> > > +M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
> > > +L:	linux-media@vger.kernel.org
> > > +S:	Maintained
> > > +T:	git git://linuxtv.org/media_tree.git
> >
> > Binding looks fine to me, my question is here. Usually having a tree
> > here means that you apply the patches yourself. Do you?
> >
> 
> No, and only Mauro has commit rights on the media tree.
> 
> All i2c sensor drivers have a tree listed, regardless who commits
> there. What should I put there ?

IMO, nothing. The media tree entry should cover the parent directory,
no?

Thanks,
Conor.
Laurent Pinchart Oct. 11, 2023, 4:24 p.m. UTC | #4
On Wed, Oct 11, 2023 at 05:16:50PM +0100, Conor Dooley wrote:
> On Wed, Oct 11, 2023 at 06:12:28PM +0200, Jacopo Mondi wrote:
> > On Wed, Oct 11, 2023 at 04:53:34PM +0100, Conor Dooley wrote:
> > > On Tue, Oct 10, 2023 at 05:12:07PM +0200, Jacopo Mondi wrote:
> > > > Add bindings for OmniVision OV64A40.
> > > >
> > > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> > > > Signed-off-by: Lee Jackson <lee.jackson@arducam.com>
> > >
> > > What does Lee's SoB indicate here?
> > 
> > Lee has contributed to the development of the driver and validation of
> > bindings.
> 
> Then you're missing a Co-developed-by: from Lee :)
> 
> > > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > > index b19995690904..df089d68b58c 100644
> > > > --- a/MAINTAINERS
> > > > +++ b/MAINTAINERS
> > > > @@ -15821,6 +15821,13 @@ S:	Maintained
> > > >  T:	git git://linuxtv.org/media_tree.git
> > > >  F:	drivers/media/i2c/ov5695.c
> > > >
> > > > +OMNIVISION OV64A40 SENSOR DRIVER
> > > > +M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
> > > > +L:	linux-media@vger.kernel.org
> > > > +S:	Maintained
> > > > +T:	git git://linuxtv.org/media_tree.git
> > >
> > > Binding looks fine to me, my question is here. Usually having a tree
> > > here means that you apply the patches yourself. Do you?
> > >
> > 
> > No, and only Mauro has commit rights on the media tree.
> > 
> > All i2c sensor drivers have a tree listed, regardless who commits
> > there. What should I put there ?
> 
> IMO, nothing. The media tree entry should cover the parent directory,
> no?

There's little documentation for the T: tag. In MAINTAINERS, we have

        T: *SCM* tree type and location.
           Type is one of: git, hg, quilt, stgit, topgit

which doesn't tell much. In Documentation/sbumitting-patches.rst,
there's ona additional paragraph:

  Note, however, that you may not want to develop against the mainline
  tree directly.  Most subsystem maintainers run their own trees and
  want to see patches prepared against those trees.  See the **T:**
  entry for the subsystem in the MAINTAINERS file to find that tree, or
  simply ask the maintainer if the tree is not listed there.

If the purpose of the T: tag is to tell which tree patches for this
driver should be developed against, the above tree seems right.
Conor Dooley Oct. 12, 2023, 3:33 p.m. UTC | #5
On Wed, Oct 11, 2023 at 07:24:54PM +0300, Laurent Pinchart wrote:
> On Wed, Oct 11, 2023 at 05:16:50PM +0100, Conor Dooley wrote:
> > On Wed, Oct 11, 2023 at 06:12:28PM +0200, Jacopo Mondi wrote:
> > > On Wed, Oct 11, 2023 at 04:53:34PM +0100, Conor Dooley wrote:
> > > > On Tue, Oct 10, 2023 at 05:12:07PM +0200, Jacopo Mondi wrote:
> > > > > Add bindings for OmniVision OV64A40.
> > > > >
> > > > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> > > > > Signed-off-by: Lee Jackson <lee.jackson@arducam.com>
> > > >
> > > > What does Lee's SoB indicate here?
> > > 
> > > Lee has contributed to the development of the driver and validation of
> > > bindings.
> > 
> > Then you're missing a Co-developed-by: from Lee :)
> > 
> > > > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > > > index b19995690904..df089d68b58c 100644
> > > > > --- a/MAINTAINERS
> > > > > +++ b/MAINTAINERS
> > > > > @@ -15821,6 +15821,13 @@ S:	Maintained
> > > > >  T:	git git://linuxtv.org/media_tree.git
> > > > >  F:	drivers/media/i2c/ov5695.c
> > > > >
> > > > > +OMNIVISION OV64A40 SENSOR DRIVER
> > > > > +M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
> > > > > +L:	linux-media@vger.kernel.org
> > > > > +S:	Maintained
> > > > > +T:	git git://linuxtv.org/media_tree.git
> > > >
> > > > Binding looks fine to me, my question is here. Usually having a tree
> > > > here means that you apply the patches yourself. Do you?
> > > >
> > > 
> > > No, and only Mauro has commit rights on the media tree.
> > > 
> > > All i2c sensor drivers have a tree listed, regardless who commits
> > > there. What should I put there ?
> > 
> > IMO, nothing. The media tree entry should cover the parent directory,
> > no?
> 
> There's little documentation for the T: tag. In MAINTAINERS, we have
> 
>         T: *SCM* tree type and location.
>            Type is one of: git, hg, quilt, stgit, topgit
> 
> which doesn't tell much. In Documentation/sbumitting-patches.rst,
> there's ona additional paragraph:
> 
>   Note, however, that you may not want to develop against the mainline
>   tree directly.  Most subsystem maintainers run their own trees and
>   want to see patches prepared against those trees.  See the **T:**
>   entry for the subsystem in the MAINTAINERS file to find that tree, or
>   simply ask the maintainer if the tree is not listed there.
> 
> If the purpose of the T: tag is to tell which tree patches for this
> driver should be developed against, the above tree seems right.

I suppose media has a different interpretation than is common elsewhere.
With the fixed attribution,
Acked-by: Conor Dooley <conor.dooley@microchip.com>

Thanks,
Conor.
Rob Herring (Arm) Oct. 12, 2023, 3:37 p.m. UTC | #6
On Wed, Oct 11, 2023 at 07:24:54PM +0300, Laurent Pinchart wrote:
> On Wed, Oct 11, 2023 at 05:16:50PM +0100, Conor Dooley wrote:
> > On Wed, Oct 11, 2023 at 06:12:28PM +0200, Jacopo Mondi wrote:
> > > On Wed, Oct 11, 2023 at 04:53:34PM +0100, Conor Dooley wrote:
> > > > On Tue, Oct 10, 2023 at 05:12:07PM +0200, Jacopo Mondi wrote:
> > > > > Add bindings for OmniVision OV64A40.
> > > > >
> > > > > Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> > > > > Signed-off-by: Lee Jackson <lee.jackson@arducam.com>
> > > >
> > > > What does Lee's SoB indicate here?
> > > 
> > > Lee has contributed to the development of the driver and validation of
> > > bindings.
> > 
> > Then you're missing a Co-developed-by: from Lee :)
> > 
> > > > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > > > index b19995690904..df089d68b58c 100644
> > > > > --- a/MAINTAINERS
> > > > > +++ b/MAINTAINERS
> > > > > @@ -15821,6 +15821,13 @@ S:	Maintained
> > > > >  T:	git git://linuxtv.org/media_tree.git
> > > > >  F:	drivers/media/i2c/ov5695.c
> > > > >
> > > > > +OMNIVISION OV64A40 SENSOR DRIVER
> > > > > +M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
> > > > > +L:	linux-media@vger.kernel.org
> > > > > +S:	Maintained
> > > > > +T:	git git://linuxtv.org/media_tree.git
> > > >
> > > > Binding looks fine to me, my question is here. Usually having a tree
> > > > here means that you apply the patches yourself. Do you?
> > > >
> > > 
> > > No, and only Mauro has commit rights on the media tree.
> > > 
> > > All i2c sensor drivers have a tree listed, regardless who commits
> > > there. What should I put there ?
> > 
> > IMO, nothing. The media tree entry should cover the parent directory,
> > no?
> 
> There's little documentation for the T: tag. In MAINTAINERS, we have
> 
>         T: *SCM* tree type and location.
>            Type is one of: git, hg, quilt, stgit, topgit
> 
> which doesn't tell much. In Documentation/sbumitting-patches.rst,
> there's ona additional paragraph:
> 
>   Note, however, that you may not want to develop against the mainline
>   tree directly.  Most subsystem maintainers run their own trees and
>   want to see patches prepared against those trees.  See the **T:**
>   entry for the subsystem in the MAINTAINERS file to find that tree, or
>   simply ask the maintainer if the tree is not listed there.
> 
> If the purpose of the T: tag is to tell which tree patches for this
> driver should be developed against, the above tree seems right.

No, it says 'T' would be in the subsystem entry, not the driver entry.

It is somewhat frequently suggested to use 'T' entries as the way to 
find maintainers who apply patches vs. maintainers for a file. I would 
like something more explicit, but that's what we have ATM.

Rob
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml
new file mode 100644
index 000000000000..e6c9d540a2dd
--- /dev/null
+++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml
@@ -0,0 +1,97 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/media/i2c/ovti,ov64a40.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: OmniVision OV64A40 Image Sensor
+
+maintainers:
+  - Jacopo Mondi <jacopo.mondi@ideasonboard.com>
+
+allOf:
+  - $ref: /schemas/media/video-interface-devices.yaml#
+
+properties:
+  compatible:
+    const: ovti,ov64a40
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+
+  avdd-supply:
+    description: Analog voltage supply, 2.8 volts
+
+  dvdd-supply:
+    description: Digital core voltage supply, 1.1 volts
+
+  dovdd-supply:
+    description: Digital I/O voltage supply, 1.8 volts
+
+  powerdown-gpios:
+    maxItems: 1
+
+  reset-gpios:
+    maxItems: 1
+
+  port:
+    $ref: /schemas/graph.yaml#/$defs/port-base
+    additionalProperties: false
+
+    properties:
+      endpoint:
+        $ref: /schemas/media/video-interfaces.yaml#
+        additionalProperties: false
+
+        properties:
+          bus-type:
+            enum:
+              - 1 # MIPI CSI-2 C-PHY
+              - 4 # MIPI CSI-2 D-PHY
+          data-lanes: true
+          link-frequencies: true
+          clock-noncontinuous: true
+          remote-endpoint: true
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - port
+
+unevaluatedProperties: false
+
+examples:
+  - |
+      #include <dt-bindings/gpio/gpio.h>
+
+      i2c {
+          #address-cells = <1>;
+          #size-cells = <0>;
+
+          camera@36 {
+              compatible = "ovti,ov64a40";
+              reg = <0x36>;
+              clocks = <&camera_clk>;
+              dovdd-supply = <&vgen4_reg>;
+              avdd-supply = <&vgen3_reg>;
+              dvdd-supply = <&vgen2_reg>;
+              powerdown-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
+              reset-gpios = <&gpio1 10 GPIO_ACTIVE_LOW>;
+              rotation = <180>;
+              orientation = <2>;
+
+              port {
+                  endpoint {
+                      remote-endpoint = <&mipi_csi2_in>;
+                      bus-type = <4>;
+                      data-lanes = <1 2 3 4>;
+                  };
+              };
+          };
+      };
+
+...
diff --git a/MAINTAINERS b/MAINTAINERS
index b19995690904..df089d68b58c 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -15821,6 +15821,13 @@  S:	Maintained
 T:	git git://linuxtv.org/media_tree.git
 F:	drivers/media/i2c/ov5695.c

+OMNIVISION OV64A40 SENSOR DRIVER
+M:	Jacopo Mondi <jacopo.mondi@ideasonboard.org>
+L:	linux-media@vger.kernel.org
+S:	Maintained
+T:	git git://linuxtv.org/media_tree.git
+F:	Documentation/devicetree/bindings/media/i2c/ovti,ov64a40.yaml
+
 OMNIVISION OV7670 SENSOR DRIVER
 L:	linux-media@vger.kernel.org
 S:	Orphan