All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rui Miguel Silva <rmfrfs@gmail.com>
To: Jacopo Mondi <jacopo@jmondi.org>
Cc: Rob Herring <robh+dt@kernel.org>,
	sakari.ailus@linux.intel.com, Hans Verkuil <hverkuil@xs4all.nl>,
	linux-media@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v2 1/3] dt-bindings: ov2680: convert bindings to yaml
Date: Fri, 16 Oct 2020 15:42:04 +0100	[thread overview]
Message-ID: <20201016144204.3viee7spmvwtms5i@arch-thunder.localdomain> (raw)
In-Reply-To: <20201015144905.4b23k5uy7ycuhvlo@uno.localdomain>

Hey Jacopo,
Thanks for the review.

On Thu, Oct 15, 2020 at 04:49:05PM +0200, Jacopo Mondi wrote:
> Hi Rui,
> 
> On Wed, Oct 14, 2020 at 03:27:57PM +0100, Rui Miguel Silva wrote:
> > Convert ov2680 sensor bindings documentation to yaml schema, remove
> > the textual bindings document and update MAINTAINERS entry.
> >
> > Signed-off-by: Rui Miguel Silva <rmfrfs@gmail.com>
> > ---
> >
> > v1 -> v2:
> >   Sakari Ailus - Patch 1/3:
> >   https://lore.kernel.org/linux-media/20201013160908.GC13341@paasikivi.fi.intel.com/
> >   - omit remote-endpoint
> >   - remove not needed clock-lanes and data-lanes
> >
> >  .../devicetree/bindings/media/i2c/ov2680.txt  |  46 --------
> >  .../devicetree/bindings/media/i2c/ov2680.yaml | 109 ++++++++++++++++++
> >  MAINTAINERS                                   |   2 +-
> >  3 files changed, 110 insertions(+), 47 deletions(-)
> >  delete mode 100644 Documentation/devicetree/bindings/media/i2c/ov2680.txt
> >  create mode 100644 Documentation/devicetree/bindings/media/i2c/ov2680.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/media/i2c/ov2680.txt b/Documentation/devicetree/bindings/media/i2c/ov2680.txt
> > deleted file mode 100644
> > index 11e925ed9dad..000000000000
> > --- a/Documentation/devicetree/bindings/media/i2c/ov2680.txt
> > +++ /dev/null
> > @@ -1,46 +0,0 @@
> > -* Omnivision OV2680 MIPI CSI-2 sensor
> > -
> > -Required Properties:
> > -- compatible: should be "ovti,ov2680".
> > -- clocks: reference to the xvclk input clock.
> > -- clock-names: should be "xvclk".
> > -- DOVDD-supply: Digital I/O voltage supply.
> > -- DVDD-supply: Digital core voltage supply.
> > -- AVDD-supply: Analog voltage supply.
> > -
> > -Optional Properties:
> > -- reset-gpios: reference to the GPIO connected to the powerdown/reset pin,
> > -               if any. This is an active low signal to the OV2680.
> > -
> > -The device node must contain one 'port' child node for its digital output
> > -video port, and this port must have a single endpoint in accordance with
> > - the video interface bindings defined in
> > -Documentation/devicetree/bindings/media/video-interfaces.txt.
> > -
> > -Endpoint node required properties for CSI-2 connection are:
> > -- remote-endpoint: a phandle to the bus receiver's endpoint node.
> > -- clock-lanes: should be set to <0> (clock lane on hardware lane 0).
> > -- data-lanes: should be set to <1> (one CSI-2 lane supported).
> > -
> > -Example:
> > -
> > -&i2c2 {
> > -	ov2680: camera-sensor@36 {
> > -		compatible = "ovti,ov2680";
> > -		reg = <0x36>;
> > -		clocks = <&osc>;
> > -		clock-names = "xvclk";
> > -		reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>;
> > -		DOVDD-supply = <&sw2_reg>;
> > -		DVDD-supply = <&sw2_reg>;
> > -		AVDD-supply = <&reg_peri_3p15v>;
> > -
> > -		port {
> > -			ov2680_to_mipi: endpoint {
> > -				remote-endpoint = <&mipi_from_sensor>;
> > -				clock-lanes = <0>;
> > -				data-lanes = <1>;
> > -			};
> > -		};
> > -	};
> > -};
> > diff --git a/Documentation/devicetree/bindings/media/i2c/ov2680.yaml b/Documentation/devicetree/bindings/media/i2c/ov2680.yaml
> 
> Might this be a good occasion to rename the file to ovti,ov2680.yaml ?

Yeah, was just following your precedent in ov5647 and the other ov
already ported to yaml in the directory. But I agree that it makes
sense to rename the files.

> 
> > new file mode 100644
> > index 000000000000..ef2b45b03dcc
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/media/i2c/ov2680.yaml
> > @@ -0,0 +1,109 @@
> > +# SPDX-License-Identifier: GPL-2.0
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/media/i2c/ov2680.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Omnivision OV2680 CMOS Sensor
> > +
> > +maintainers:
> > +  - Rui Miguel Silva <rmfrfs@gmail.com>
> > +
> > +description: |-
> > +  The OV2680 color sensor is a low voltage, high performance 1/5 inch UXGA (2
> > +  megapixel) CMOS image sensor that provides a single-chip UXGA (1600 x 1200)
> > +  camera. It provides full-frame, sub-sampled, or windowed 10-bit images in
> > +  various formats via the control of the Serial Camera Control Bus (SCCB)
> > +  interface.  The OV2680 has an image array capable of operating at up to 30
>                 ^ double space
> 
> > +  frames per second (fps) in UXGA resolution.
> > +
> > +properties:
> > +  compatible:
> > +    const: ovti,ov2680
> > +
> > +  reg:
> > +    maxItems: 1
> > +
> > +  clocks:
> > +    maxItems: 1
> > +
> > +  clock-names:
> > +    description:
> 
> I'll never get yaml right, doesn't breaking lines require '|' after
> the semicolon ? The validator does not complain, so I guess not.

I also had that idea, but looking also to other cases, and also in the
examlpe-schema where you have both cases, looks like it is not needed.

> 
> > +      Input clock for the sensor.
> > +    items:
> > +      - const: xvclk
> > +
> > +  reset-gpios:
> > +    description:
> > +      The phandle and specifier for the GPIO that controls sensor reset.
> > +      This corresponds to the hardware pin XSHUTDOWN which is physically
> > +      active low.
> > +
> > +  dovdd-supply:
> > +    description:
> > +      Definition of the regulator used as interface power supply.
> > +
> > +  avdd-supply:
> > +    description:
> > +      Definition of the regulator used as analog power supply.
> > +
> > +  dvdd-supply:
> > +    description:
> > +      Definition of the regulator used as digital power supply.
> > +
> > +  port:
> > +    type: object
> > +    additionalProperties: false
> > +    description:
> > +      A node containing an output port node with an endpoint definition
> > +      as documented in
> > +      Documentation/devicetree/bindings/media/video-interfaces.txt
> > +
> > +    properties:
> > +      endpoint:
> > +        type: object
> > +
> > +    required:
> > +      - endpoint
> 
> If no endpoint properties are specified, the last 6 lines here can be
> omitted. The rationale is that 'port' will be validated against a
> forthcoming 'of-graph.yaml' schema. So just:
> 
>    port:
>      type: object
>      additionalProperties: false
>      description:
>        A node containing an output port node with an endpoint definition
>        as documented in
>        Documentation/devicetree/bindings/media/video-interfaces.txt
> 
> With 'port' listed as mandatory, as you do already.

you are right, will fix this.

> 
> > +
> > +required:
> > +  - compatible
> > +  - reg
> > +  - clocks
> > +  - clock-names
> > +  - dovdd-supply
> > +  - avdd-supply
> > +  - dvdd-supply
> > +  - reset-gpios
> > +  - port
> > +
> > +unevaluatedProperties: false
> 
> 'additionalProperties: false' too ?

instead.

> 
> > +
> > +examples:
> > +  - |
> > +    #include <dt-bindings/gpio/gpio.h>
> > +
> > +    i2c {
> > +        #address-cells = <1>;
> > +        #size-cells = <0>;
> > +
> > +        ov2680: camera-sensor@36 {
> > +                compatible = "ovti,ov2680";
> > +                reg = <0x36>;
> > +                clocks = <&osc>;
> > +                clock-names = "xvclk";
> > +                reset-gpios = <&gpio1 3 GPIO_ACTIVE_LOW>;
> > +
> > +                dovdd-supply = <&sw2_reg>;
> > +                dvdd-supply = <&sw2_reg>;
> > +                avdd-supply = <&reg_peri_3p15v>;
> > +
> > +                port {
> > +                        ov2680_to_mipi: endpoint {
> > +                                remote-endpoint = <&mipi_from_sensor>;
> > +                        };
> > +                };
> > +        };
> > +    };
> > +...
> > +
> 
> Applying the patch gives me:
> .git/rebase-apply/patch:182: new blank line at EOF.
> 
> I see most bindings have an empty line before '...'
> 
> With this small issues fixed:
> Reviewed-by: Jacopo Mondi <jacopo+renesas@jmondi.org>
 
 Thanks again Jacopo.

 Cheers,
    Rui
> 
> Thanks
>    j
> 
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 2e85e114c9c3..926dcdc4794c 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -12775,7 +12775,7 @@ M:	Rui Miguel Silva <rmfrfs@gmail.com>
> >  L:	linux-media@vger.kernel.org
> >  S:	Maintained
> >  T:	git git://linuxtv.org/media_tree.git
> > -F:	Documentation/devicetree/bindings/media/i2c/ov2680.txt
> > +F:	Documentation/devicetree/bindings/media/i2c/ov2680.yaml
> >  F:	drivers/media/i2c/ov2680.c
> >
> >  OMNIVISION OV2685 SENSOR DRIVER
> > --
> > 2.28.0
> >

  reply	other threads:[~2020-10-16 14:42 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-14 14:27 [PATCH v2 0/3] dt-bindings: media: imx7 and ov2680 updates to yaml Rui Miguel Silva
2020-10-14 14:27 ` [PATCH v2 1/3] dt-bindings: ov2680: convert bindings " Rui Miguel Silva
2020-10-15 14:49   ` Jacopo Mondi
2020-10-16 14:42     ` Rui Miguel Silva [this message]
2020-10-19 20:33       ` Rob Herring
2020-10-21 15:52         ` Jacopo Mondi
2020-12-01 22:44           ` Rob Herring
2020-10-19 20:39   ` Rob Herring
2020-10-20  9:09     ` Rui Miguel Silva
2020-10-14 14:27 ` [PATCH v2 2/3] dt-bindings: imx7-csi: " Rui Miguel Silva
2020-10-15 15:25   ` Jacopo Mondi
2020-10-16 14:44     ` Rui Miguel Silva
2020-10-14 14:27 ` [PATCH v2 3/3] dt-bindings: imx7-mipi-csi2: " Rui Miguel Silva
2020-10-15 15:52   ` Jacopo Mondi
2020-10-16 14:51     ` Rui Miguel Silva
2020-10-16 18:02       ` Jacopo Mondi
2020-10-19 14:29         ` Rui Miguel Silva
2020-10-16 15:45   ` Rob Herring

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=20201016144204.3viee7spmvwtms5i@arch-thunder.localdomain \
    --to=rmfrfs@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=hverkuil@xs4all.nl \
    --cc=jacopo@jmondi.org \
    --cc=linux-media@vger.kernel.org \
    --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.