Message ID | 20220712141925.678595-2-mike.rudenko@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Add Omnivision OV4689 image sensor driver | expand |
On 12/07/2022 16:19, Mikhail Rudenko wrote: > Add device-tree binding documentation for OV4689 image sensor driver, > and the relevant MAINTAINERS entries. > > Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> > --- > .../bindings/media/i2c/ovti,ov4689.yaml | 122 ++++++++++++++++++ > MAINTAINERS | 7 + > 2 files changed, 129 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > new file mode 100644 > index 000000000000..6bdebe5862b4 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > @@ -0,0 +1,122 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/ovti,ov4689.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Omnivision OV4689 CMOS Sensor Device Tree Bindings s/Device Tree Bindings// > + > +maintainers: > + - Mikhail Rudenko <mike.rudenko@gmail.com> > + > +description: |- No need for - > + The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel > + image sensor. Ihis chip supports high frame rate speeds up to 90 fps > + at 2688x1520 resolution. It is programmable through an I2C > + interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2 > + connection. > + > +allOf: > + - $ref: /schemas/media/video-interface-devices.yaml# > + > +properties: > + compatible: > + const: ovti,ov4689 > + > + reg: > + maxItems: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + description: > + External clock for the sensor. This goes to clocks instead. > + items: > + - const: xclk No need for clock-names for such case. > + > + dovdd-supply: > + description: > + Definition of the regulator used as Digital I/O voltage supply. s/Definition of the regulator used as // It's redundant... > + > + avdd-supply: > + description: > + Definition of the regulator used as Analog voltage supply. Ditto > + > + dvdd-supply: > + description: > + Definition of the regulator used as Digital core voltage supply. Ditto > + > + powerdown-gpios: > + maxItems: 1 > + description: > + Reference to the GPIO connected to the powerdown pin (active low). s/Reference to the// > + > + reset-gpios: > + maxItems: 1 > + description: > + Reference to the GPIO connected to the reset pin (active low). The same. > + > + orientation: true > + > + rotation: true > + > + port: > + $ref: /schemas/graph.yaml#/$defs/port-base > + additionalProperties: false > + description: > + Output port node, single endpoint describing the CSI-2 transmitter. > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false > + Best regards, Krzysztof
Hi Krzysztof, On 2022-07-12 at 17:12 +02, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > On 12/07/2022 16:19, Mikhail Rudenko wrote: >> Add device-tree binding documentation for OV4689 image sensor driver, >> and the relevant MAINTAINERS entries. >> >> Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> >> --- >> .../bindings/media/i2c/ovti,ov4689.yaml | 122 ++++++++++++++++++ >> MAINTAINERS | 7 + >> 2 files changed, 129 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> >> diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> new file mode 100644 >> index 000000000000..6bdebe5862b4 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> @@ -0,0 +1,122 @@ >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/media/i2c/ovti,ov4689.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Omnivision OV4689 CMOS Sensor Device Tree Bindings > > s/Device Tree Bindings// Ack, will fix in v2. >> + >> +maintainers: >> + - Mikhail Rudenko <mike.rudenko@gmail.com> >> + >> +description: |- > > No need for - > Ack >> + The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel >> + image sensor. Ihis chip supports high frame rate speeds up to 90 fps >> + at 2688x1520 resolution. It is programmable through an I2C >> + interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2 >> + connection. >> + >> +allOf: >> + - $ref: /schemas/media/video-interface-devices.yaml# >> + >> +properties: >> + compatible: >> + const: ovti,ov4689 >> + >> + reg: >> + maxItems: 1 >> + >> + clocks: >> + maxItems: 1 >> + >> + clock-names: >> + description: >> + External clock for the sensor. > > This goes to clocks instead. > Ack >> + items: >> + - const: xclk > > No need for clock-names for such case. > Ack >> + >> + dovdd-supply: >> + description: >> + Definition of the regulator used as Digital I/O voltage supply. > > s/Definition of the regulator used as // > > It's redundant... > Ack >> + >> + avdd-supply: >> + description: >> + Definition of the regulator used as Analog voltage supply. > > Ditto > Ack >> + >> + dvdd-supply: >> + description: >> + Definition of the regulator used as Digital core voltage supply. > > Ditto > Ack >> + >> + powerdown-gpios: >> + maxItems: 1 >> + description: >> + Reference to the GPIO connected to the powerdown pin (active low). > > s/Reference to the// > Ack >> + >> + reset-gpios: >> + maxItems: 1 >> + description: >> + Reference to the GPIO connected to the reset pin (active low). > > The same. > Ack >> + >> + orientation: true >> + >> + rotation: true >> + >> + port: >> + $ref: /schemas/graph.yaml#/$defs/port-base >> + additionalProperties: false >> + description: >> + Output port node, single endpoint describing the CSI-2 transmitter. >> + >> + properties: >> + endpoint: >> + $ref: /schemas/media/video-interfaces.yaml# >> + unevaluatedProperties: false >> + > > Best regards, > Krzysztof Thanks for review! By the way, I used an existing schema for a similar sensor ("ovti,ov02a10.yaml", specifically) as an example, and your notes apply to it too. Looks like it should also be fixed... -- Best regards, Mikhail Rudenko
Hi Mikhail, Thanks for the patch. On Tue, Jul 12, 2022 at 05:19:09PM +0300, Mikhail Rudenko wrote: > Add device-tree binding documentation for OV4689 image sensor driver, > and the relevant MAINTAINERS entries. > > Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> > --- > .../bindings/media/i2c/ovti,ov4689.yaml | 122 ++++++++++++++++++ > MAINTAINERS | 7 + > 2 files changed, 129 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > new file mode 100644 > index 000000000000..6bdebe5862b4 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > @@ -0,0 +1,122 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/ovti,ov4689.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Omnivision OV4689 CMOS Sensor Device Tree Bindings > + > +maintainers: > + - Mikhail Rudenko <mike.rudenko@gmail.com> > + > +description: |- > + The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel > + image sensor. Ihis chip supports high frame rate speeds up to 90 fps > + at 2688x1520 resolution. It is programmable through an I2C > + interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2 > + connection. > + > +allOf: > + - $ref: /schemas/media/video-interface-devices.yaml# > + > +properties: > + compatible: > + const: ovti,ov4689 > + > + reg: > + maxItems: 1 > + > + clocks: > + maxItems: 1 > + > + clock-names: > + description: > + External clock for the sensor. > + items: > + - const: xclk > + > + dovdd-supply: > + description: > + Definition of the regulator used as Digital I/O voltage supply. > + > + avdd-supply: > + description: > + Definition of the regulator used as Analog voltage supply. > + > + dvdd-supply: > + description: > + Definition of the regulator used as Digital core voltage supply. > + > + powerdown-gpios: > + maxItems: 1 > + description: > + Reference to the GPIO connected to the powerdown pin (active low). > + > + reset-gpios: > + maxItems: 1 > + description: > + Reference to the GPIO connected to the reset pin (active low). > + > + orientation: true > + > + rotation: true > + > + port: > + $ref: /schemas/graph.yaml#/$defs/port-base > + additionalProperties: false > + description: > + Output port node, single endpoint describing the CSI-2 transmitter. > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false The number of lanes is needed, please require data-lanes property here (as well as add it to the example). > + > +required: > + - compatible > + - reg > + - clocks > + - clock-names > + - dovdd-supply > + - avdd-supply > + - dvdd-supply > + - powerdown-gpios > + - reset-gpios > + - port > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + ov4689: camera@36 { > + compatible = "ovti,ov4689"; > + reg = <0x36>; > + > + clocks = <&ov4689_clk>; > + clock-names = "xclk"; > + > + avdd-supply = <&ov4689_avdd>; > + dovdd-supply = <&ov4689_dovdd>; > + dvdd-supply = <&ov4689_dvdd>; > + > + powerdown-gpios = <&pio 107 GPIO_ACTIVE_LOW>; > + reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>; > + > + orientation = <2>; > + rotation = <0>; > + > + port { > + wcam_out: endpoint { > + remote-endpoint = <&mipi_in_wcam>; > + }; > + }; > + }; > + }; > + > +... > diff --git a/MAINTAINERS b/MAINTAINERS > index f468864fd268..63c4844f26e6 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -14523,6 +14523,13 @@ S: Maintained > T: git git://linuxtv.org/media_tree.git > F: drivers/media/i2c/ov2740.c > > +OMNIVISION OV4689 SENSOR DRIVER > +M: Mikhail Rudenko <mike.rudenko@gmail.com> > +L: linux-media@vger.kernel.org > +S: Maintained > +T: git git://linuxtv.org/media_tree.git > +F: Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml > + > OMNIVISION OV5640 SENSOR DRIVER > M: Steve Longerbeam <slongerbeam@gmail.com> > L: linux-media@vger.kernel.org
On 2022-07-15 at 00:11 +03, Sakari Ailus <sakari.ailus@iki.fi> wrote: > Hi Mikhail, > > Thanks for the patch. > > On Tue, Jul 12, 2022 at 05:19:09PM +0300, Mikhail Rudenko wrote: >> Add device-tree binding documentation for OV4689 image sensor driver, >> and the relevant MAINTAINERS entries. >> >> Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> >> --- >> .../bindings/media/i2c/ovti,ov4689.yaml | 122 ++++++++++++++++++ >> MAINTAINERS | 7 + >> 2 files changed, 129 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> >> diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> new file mode 100644 >> index 000000000000..6bdebe5862b4 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> @@ -0,0 +1,122 @@ >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/media/i2c/ovti,ov4689.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Omnivision OV4689 CMOS Sensor Device Tree Bindings >> + >> +maintainers: >> + - Mikhail Rudenko <mike.rudenko@gmail.com> >> + >> +description: |- >> + The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel >> + image sensor. Ihis chip supports high frame rate speeds up to 90 fps >> + at 2688x1520 resolution. It is programmable through an I2C >> + interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2 >> + connection. >> + >> +allOf: >> + - $ref: /schemas/media/video-interface-devices.yaml# >> + >> +properties: >> + compatible: >> + const: ovti,ov4689 >> + >> + reg: >> + maxItems: 1 >> + >> + clocks: >> + maxItems: 1 >> + >> + clock-names: >> + description: >> + External clock for the sensor. >> + items: >> + - const: xclk >> + >> + dovdd-supply: >> + description: >> + Definition of the regulator used as Digital I/O voltage supply. >> + >> + avdd-supply: >> + description: >> + Definition of the regulator used as Analog voltage supply. >> + >> + dvdd-supply: >> + description: >> + Definition of the regulator used as Digital core voltage supply. >> + >> + powerdown-gpios: >> + maxItems: 1 >> + description: >> + Reference to the GPIO connected to the powerdown pin (active low). >> + >> + reset-gpios: >> + maxItems: 1 >> + description: >> + Reference to the GPIO connected to the reset pin (active low). >> + >> + orientation: true >> + >> + rotation: true >> + >> + port: >> + $ref: /schemas/graph.yaml#/$defs/port-base >> + additionalProperties: false >> + description: >> + Output port node, single endpoint describing the CSI-2 transmitter. >> + >> + properties: >> + endpoint: >> + $ref: /schemas/media/video-interfaces.yaml# >> + unevaluatedProperties: false > > The number of lanes is needed, please require data-lanes property here (as > well as add it to the example). Thanks for review, will fix in v2 >> + >> +required: >> + - compatible >> + - reg >> + - clocks >> + - clock-names >> + - dovdd-supply >> + - avdd-supply >> + - dvdd-supply >> + - powerdown-gpios >> + - reset-gpios >> + - port >> + >> +additionalProperties: false >> + >> +examples: >> + - | >> + #include <dt-bindings/gpio/gpio.h> >> + >> + i2c { >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + ov4689: camera@36 { >> + compatible = "ovti,ov4689"; >> + reg = <0x36>; >> + >> + clocks = <&ov4689_clk>; >> + clock-names = "xclk"; >> + >> + avdd-supply = <&ov4689_avdd>; >> + dovdd-supply = <&ov4689_dovdd>; >> + dvdd-supply = <&ov4689_dvdd>; >> + >> + powerdown-gpios = <&pio 107 GPIO_ACTIVE_LOW>; >> + reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>; >> + >> + orientation = <2>; >> + rotation = <0>; >> + >> + port { >> + wcam_out: endpoint { >> + remote-endpoint = <&mipi_in_wcam>; >> + }; >> + }; >> + }; >> + }; >> + >> +... >> diff --git a/MAINTAINERS b/MAINTAINERS >> index f468864fd268..63c4844f26e6 100644 >> --- a/MAINTAINERS >> +++ b/MAINTAINERS >> @@ -14523,6 +14523,13 @@ S: Maintained >> T: git git://linuxtv.org/media_tree.git >> F: drivers/media/i2c/ov2740.c >> >> +OMNIVISION OV4689 SENSOR DRIVER >> +M: Mikhail Rudenko <mike.rudenko@gmail.com> >> +L: linux-media@vger.kernel.org >> +S: Maintained >> +T: git git://linuxtv.org/media_tree.git >> +F: Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml >> + >> OMNIVISION OV5640 SENSOR DRIVER >> M: Steve Longerbeam <slongerbeam@gmail.com> >> L: linux-media@vger.kernel.org -- Best regards, Mikhail Rudenko
diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml new file mode 100644 index 000000000000..6bdebe5862b4 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml @@ -0,0 +1,122 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/ovti,ov4689.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Omnivision OV4689 CMOS Sensor Device Tree Bindings + +maintainers: + - Mikhail Rudenko <mike.rudenko@gmail.com> + +description: |- + The Omnivision OV4689 is a high performance, 1/3-inch, 4 megapixel + image sensor. Ihis chip supports high frame rate speeds up to 90 fps + at 2688x1520 resolution. It is programmable through an I2C + interface, and sensor output is sent via 1/2/4 lane MIPI CSI-2 + connection. + +allOf: + - $ref: /schemas/media/video-interface-devices.yaml# + +properties: + compatible: + const: ovti,ov4689 + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + description: + External clock for the sensor. + items: + - const: xclk + + dovdd-supply: + description: + Definition of the regulator used as Digital I/O voltage supply. + + avdd-supply: + description: + Definition of the regulator used as Analog voltage supply. + + dvdd-supply: + description: + Definition of the regulator used as Digital core voltage supply. + + powerdown-gpios: + maxItems: 1 + description: + Reference to the GPIO connected to the powerdown pin (active low). + + reset-gpios: + maxItems: 1 + description: + Reference to the GPIO connected to the reset pin (active low). + + orientation: true + + rotation: true + + port: + $ref: /schemas/graph.yaml#/$defs/port-base + additionalProperties: false + description: + Output port node, single endpoint describing the CSI-2 transmitter. + + properties: + endpoint: + $ref: /schemas/media/video-interfaces.yaml# + unevaluatedProperties: false + +required: + - compatible + - reg + - clocks + - clock-names + - dovdd-supply + - avdd-supply + - dvdd-supply + - powerdown-gpios + - reset-gpios + - port + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ov4689: camera@36 { + compatible = "ovti,ov4689"; + reg = <0x36>; + + clocks = <&ov4689_clk>; + clock-names = "xclk"; + + avdd-supply = <&ov4689_avdd>; + dovdd-supply = <&ov4689_dovdd>; + dvdd-supply = <&ov4689_dvdd>; + + powerdown-gpios = <&pio 107 GPIO_ACTIVE_LOW>; + reset-gpios = <&pio 109 GPIO_ACTIVE_LOW>; + + orientation = <2>; + rotation = <0>; + + port { + wcam_out: endpoint { + remote-endpoint = <&mipi_in_wcam>; + }; + }; + }; + }; + +... diff --git a/MAINTAINERS b/MAINTAINERS index f468864fd268..63c4844f26e6 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -14523,6 +14523,13 @@ S: Maintained T: git git://linuxtv.org/media_tree.git F: drivers/media/i2c/ov2740.c +OMNIVISION OV4689 SENSOR DRIVER +M: Mikhail Rudenko <mike.rudenko@gmail.com> +L: linux-media@vger.kernel.org +S: Maintained +T: git git://linuxtv.org/media_tree.git +F: Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml + OMNIVISION OV5640 SENSOR DRIVER M: Steve Longerbeam <slongerbeam@gmail.com> L: linux-media@vger.kernel.org
Add device-tree binding documentation for OV4689 image sensor driver, and the relevant MAINTAINERS entries. Signed-off-by: Mikhail Rudenko <mike.rudenko@gmail.com> --- .../bindings/media/i2c/ovti,ov4689.yaml | 122 ++++++++++++++++++ MAINTAINERS | 7 + 2 files changed, 129 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov4689.yaml