All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Jacopo Mondi <jacopo@jmondi.org>
Cc: Jacopo Mondi <jacopo+renesas@jmondi.org>,
	robh+dt@kernel.org, devicetree@vger.kernel.org,
	linux-media@vger.kernel.org, "Lad,
	Prabhakar" <prabhakar.csengg@gmail.com>,
	mchehab@kernel.org, sakari.ailus@linux.intel.com,
	hverkuil-cisco@xs4all.nl, linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH 1/3] dt-bindings: media: ov772x: Convert to json-schema
Date: Mon, 24 Aug 2020 14:34:40 +0300	[thread overview]
Message-ID: <20200824113440.GC6002@pendragon.ideasonboard.com> (raw)
In-Reply-To: <20200824083211.u2zm4o6f4wrxlu6k@uno.localdomain>

Hi Jacopo,

On Mon, Aug 24, 2020 at 10:32:11AM +0200, Jacopo Mondi wrote:
> On Wed, Aug 19, 2020 at 04:52:04PM +0300, Laurent Pinchart wrote:
> > On Tue, Aug 18, 2020 at 02:20:10PM +0200, Jacopo Mondi wrote:
> > > Convert the ov772x binding document to json-schema and update
> > > the MAINTAINERS file accordingly.
> > >
> > > Signed-off-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
> > > ---
> > >  .../devicetree/bindings/media/i2c/ov772x.txt  | 40 ---------
> > >  .../devicetree/bindings/media/i2c/ov772x.yaml | 84 +++++++++++++++++++
> >
> > Could yuo rename this to ovti,ov772x.yaml ?
> >
> > >  MAINTAINERS                                   |  2 +-
> > >  3 files changed, 85 insertions(+), 41 deletions(-)
> > >  delete mode 100644 Documentation/devicetree/bindings/media/i2c/ov772x.txt
> > >  create mode 100644 Documentation/devicetree/bindings/media/i2c/ov772x.yaml
> > >
> > > diff --git a/Documentation/devicetree/bindings/media/i2c/ov772x.txt b/Documentation/devicetree/bindings/media/i2c/ov772x.txt
> > > deleted file mode 100644
> > > index 0b3ede5b8e6a..000000000000
> > > --- a/Documentation/devicetree/bindings/media/i2c/ov772x.txt
> > > +++ /dev/null
> > > @@ -1,40 +0,0 @@
> > > -* Omnivision OV7720/OV7725 CMOS sensor
> > > -
> > > -The Omnivision OV7720/OV7725 sensor supports multiple resolutions output,
> > > -such as VGA, QVGA, and any size scaling down from CIF to 40x30. It also can
> > > -support the YUV422, RGB565/555/444, GRB422 or raw RGB output formats.
> > > -
> > > -Required Properties:
> > > -- compatible: shall be one of
> > > -	"ovti,ov7720"
> > > -	"ovti,ov7725"
> > > -- clocks: reference to the xclk input clock.
> > > -
> > > -Optional Properties:
> > > -- reset-gpios: reference to the GPIO connected to the RSTB pin which is
> > > -  active low, if any.
> > > -- powerdown-gpios: reference to the GPIO connected to the PWDN pin which is
> > > -  active high, if any.
> > > -
> > > -The device node shall contain one 'port' child node with one child 'endpoint'
> > > -subnode for its digital output video port, in accordance with the video
> > > -interface bindings defined in Documentation/devicetree/bindings/media/
> > > -video-interfaces.txt.
> > > -
> > > -Example:
> > > -
> > > -&i2c0 {
> > > -	ov772x: camera@21 {
> > > -		compatible = "ovti,ov7725";
> > > -		reg = <0x21>;
> > > -		reset-gpios = <&axi_gpio_0 0 GPIO_ACTIVE_LOW>;
> > > -		powerdown-gpios = <&axi_gpio_0 1 GPIO_ACTIVE_LOW>;
> > > -		clocks = <&xclk>;
> > > -
> > > -		port {
> > > -			ov772x_0: endpoint {
> > > -				remote-endpoint = <&vcap1_in0>;
> > > -			};
> > > -		};
> > > -	};
> > > -};
> > > diff --git a/Documentation/devicetree/bindings/media/i2c/ov772x.yaml b/Documentation/devicetree/bindings/media/i2c/ov772x.yaml
> > > new file mode 100644
> > > index 000000000000..2b84fefeb4aa
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/media/i2c/ov772x.yaml
> > > @@ -0,0 +1,84 @@
> > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/media/i2c/ov772x.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title:  Omnivision OV7720/OV7725 CMOS sensor
> > > +
> > > +maintainers:
> > > +  - Jacopo Mondi <jacopo@jmondi.org>
> > > +
> > > +description: -|
> > > +  The Omnivision OV7720/OV7725 sensor supports multiple resolutions output,
> > > +  such as VGA, QVGA, and any size scaling down from CIF to 40x30. It also can
> > > +  support the YUV422, RGB565/555/444, GRB422 or raw RGB output formats.
> > > +
> > > +properties:
> > > +  compatible:
> > > +    enum:
> > > +      - ovti,ov7720
> > > +      - ovti,ov7725
> > > +
> > > +  reg:
> > > +    maxItems: 1
> > > +
> > > +  clocks:
> > > +    maxItems: 1
> > > +
> > > +  reset-gpios:
> > > +    description: -|
> > > +      Reference to the GPIO connected to the RSTB pin which is active low.
> > > +    maxItems: 1
> > > +
> > > +  powerdown-gpios:
> > > +    description: -|
> > > +      Reference to the GPIO connected to the PWDN pin which is active high.
> > > +    maxItems: 1
> > > +
> > > +  port:
> > > +    type: object
> > > +    description: |
> > > +      The device node must contain one 'port' child node for its digital output
> > > +      video port, in accordance with the video interface bindings defined in
> > > +      Documentation/devicetree/bindings/media/video-interfaces.txt.
> >
> > You can simply write
> >
> >       Digital input video port. See ../video-interfaces.txt.
> >
> > > +
> > > +    properties:
> > > +      endpoint:
> > > +        type: object
> > > +        properties:
> > > +          remote-endpoint:
> > > +            description: A phandle to the bus receiver's endpoint node.
> >
> >            required:
> > 	     - remote-endpoint
> >
> >            additionalProperties: false
> 
> I receveied a reply to you on previous json-schema conversion attempt
> where you suggested to not set remote-endpoint as required, as we
> allow empty ones to be later filled in in, maybe with an overlay.
> 
> Which Laurent should I listen to ? I tend to agree with the one that
> said to drop remote-endpoint from the required properties list.

Maybe I recall incorrectly, didn't I say that endpoint shouldn't be
mandatory ? Ports should be mandatory as they describe the hardware,
endpoints describe a connection, and within a connection, I'm not sure
to see a use-case for not setting remote-endpoint. Maybe I need to look
better ? :-)

> > Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> >
> > > +
> > > +    additionalProperties: false
> > > +
> > > +required:
> > > +  - compatible
> > > +  - reg
> > > +  - clocks
> > > +  - reset-gpios
> > > +  - powerdown-gpios
> > > +
> > > +examples:
> > > +  - |
> > > +    #include <dt-bindings/gpio/gpio.h>
> > > +
> > > +    i2c0 {
> > > +        #address-cells = <1>;
> > > +        #size-cells = <0>;
> > > +        ov772x: camera@21 {
> > > +            compatible = "ovti,ov7725";
> > > +            reg = <0x21>;
> > > +            reset-gpios = <&axi_gpio_0 0 GPIO_ACTIVE_LOW>;
> > > +            powerdown-gpios = <&axi_gpio_0 1 GPIO_ACTIVE_LOW>;
> > > +            clocks = <&xclk>;
> > > +
> > > +            port {
> > > +                ov772x_0: endpoint {
> > > +                    remote-endpoint = <&vcap1_in0>;
> > > +                };
> > > +            };
> > > +        };
> > > +    };
> > > +
> > > +...
> > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > index d1a6173d3b64..d0a20214eaaf 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -12666,7 +12666,7 @@ M:	Jacopo Mondi <jacopo@jmondi.org>
> > >  L:	linux-media@vger.kernel.org
> > >  S:	Odd fixes
> > >  T:	git git://linuxtv.org/media_tree.git
> > > -F:	Documentation/devicetree/bindings/media/i2c/ov772x.txt
> > > +F:	Documentation/devicetree/bindings/media/i2c/ov772x.yaml
> > >  F:	drivers/media/i2c/ov772x.c
> > >  F:	include/media/i2c/ov772x.h
> > >

-- 
Regards,

Laurent Pinchart

  reply	other threads:[~2020-08-24 11:36 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-18 12:20 [PATCH 0/3] dt-bindings: media: ov772x: Convert to json-schama Jacopo Mondi
2020-08-18 12:20 ` [PATCH 1/3] dt-bindings: media: ov772x: Convert to json-schema Jacopo Mondi
2020-08-19 13:52   ` Laurent Pinchart
2020-08-24  8:32     ` Jacopo Mondi
2020-08-24 11:34       ` Laurent Pinchart [this message]
2020-08-24 12:15         ` Jacopo Mondi
2020-08-24 12:14           ` Laurent Pinchart
2020-08-25 20:55             ` Rob Herring
2020-08-25 21:41               ` Laurent Pinchart
2020-08-21 11:26   ` Lad, Prabhakar
2020-08-25 21:03   ` Rob Herring
2020-08-18 12:20 ` [PATCH 2/3] dt-bindings: media: ov772x: Make bus-type mandatory Jacopo Mondi
2020-08-19 13:52   ` Laurent Pinchart
2020-08-21 11:29   ` Lad, Prabhakar
2020-08-25 21:06   ` Rob Herring
2020-08-18 12:20 ` [PATCH 3/3] dt-bindings: media: ov772x: Document endpoint props Jacopo Mondi
2020-08-19 13:54   ` Laurent Pinchart
2020-08-21 11:37     ` Lad, Prabhakar
2020-08-22  1:35       ` Laurent Pinchart
2020-08-26  8:42         ` Lad, Prabhakar
2020-08-24  8:35       ` Jacopo Mondi
2020-08-26  8:47         ` Lad, Prabhakar
  -- strict thread matches above, loose matches on Subject: below --
2020-08-17 15:59 [PATCH 0/3] dt-bindings: media: ov772x: Convert to json-schama Jacopo Mondi
2020-08-17 15:59 ` [PATCH 1/3] dt-bindings: media: ov772x: Convert to json-schema Jacopo Mondi

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=20200824113440.GC6002@pendragon.ideasonboard.com \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=devicetree@vger.kernel.org \
    --cc=hverkuil-cisco@xs4all.nl \
    --cc=jacopo+renesas@jmondi.org \
    --cc=jacopo@jmondi.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=prabhakar.csengg@gmail.com \
    --cc=robh+dt@kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    /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.