Message ID | m3o8fjs02a.fsf@t19.piap.pl (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | RFC: dt-binding: media: document ON Semi AR0521 sensor bindings | expand |
Hi Krzysztof, Thank you for the patch. On Tue, Mar 16, 2021 at 02:25:01PM +0100, Krzysztof Hałasa wrote: > This file documents DT bindings for the AR0521 camera sensor driver. > > Signed-off-by: Krzysztof Halasa <khalasa@piap.pl> > > diff --git a/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml b/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml > new file mode 100644 > index 000000000000..f649d4cbcb37 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml > @@ -0,0 +1,76 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/onnn,ar0521.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: ON Semiconductor AR0521 MIPI CSI-2 sensor > + > +maintainers: > + - Krzysztof Halasa <khalasa@piap.pl> > + > +description: |- > + The AR0521 is a raw CMOS image sensor with MIPI CSI-2 and > + I2C-compatible control interface. > + > +properties: > + compatible: > + const: on-semi,ar0521 That's not the correct prefix for ON Semiconductor. See Documentation/devicetree/bindings/vendor-prefixes.yaml. Or just the name of this file :-) > + > + reg: > + description: I2C bus address of the sensor device You can drop this, it's implicit for I2C devices. > + maxItems: 1 > + > + clocks: > + description: reference to the xclk clock > + maxItems: 1 > + > + clock-names: > + const: xclk > + > + reset-gpios: > + description: active low reset GPIO > + maxItems: 1 > + > + port: > + type: object > + description: | > + Output video port: 1, 2 or 4 lanes. See ../video-interfaces.txt. You can use the OF graph and video interfaces schema, see commit 066a94e28a23 in mainline. > + > +required: > + - compatible > + - reg > + - clocks > + - clock-names > + - port > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + #include <dt-bindings/clock/imx6qdl-clock.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + ar0521: camera-sensor@36 { > + compatible = "onnn,ar0521"; > + reg = <0x36>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_mipi_camera>; > + > + clocks = <&clks IMX6QDL_CLK_CKO>; > + clock-names = "xclk"; > + > + reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; > + > + port { > + mipi_camera_to_mipi_csi2: endpoint { > + remote-endpoint = <&mipi_csi2_in>; > + data-lanes = <1 2 3 4>; > + }; > + }; > + }; > + };
Laurent, Laurent Pinchart <laurent.pinchart@ideasonboard.com> writes: >> + const: on-semi,ar0521 > > That's not the correct prefix for ON Semiconductor. See > Documentation/devicetree/bindings/vendor-prefixes.yaml. Or just the name > of this file :-) Right, just missed this one. Thanks for the comments.
Laurent Pinchart <laurent.pinchart@ideasonboard.com> writes: >> + reg: >> + description: I2C bus address of the sensor device > > You can drop this, it's implicit for I2C devices. Do you mean just dropping these two lines (and MaxItems: 1), and leaving "reg" in "required" and in the example? E.g.: ... required: - compatible - reg - clocks - clock-names - port additionalProperties: false examples: - | #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/clock/imx6qdl-clock.h> i2c { #address-cells = <1>; #size-cells = <0>; ar0521: camera-sensor@36 { compatible = "onnn,ar0521"; reg = <0x36>; pinctrl-names = "default"; ... It protests with: Documentation/devicetree/bindings/media/i2c/onnn,ar0521.example.dt.yaml: camera-sensor@36: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+' From schema: /usr/src/linux/imx6/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml Thus I'm currently leaving it as is.
Hi Krzysztof, On Tue, Mar 30, 2021 at 11:17:54AM +0200, Krzysztof Hałasa wrote: > Laurent Pinchart <laurent.pinchart@ideasonboard.com> writes: > > >> + reg: > >> + description: I2C bus address of the sensor device > > > > You can drop this, it's implicit for I2C devices. > > Do you mean just dropping these two lines (and MaxItems: 1), and leaving > "reg" in "required" and in the example? E.g.: I meant dropping the description, sorry. You need to keep reg: maxItems: 1 > ... > required: > - compatible > - reg > - clocks > - clock-names > - port > > additionalProperties: false > > examples: > - | > #include <dt-bindings/gpio/gpio.h> > #include <dt-bindings/clock/imx6qdl-clock.h> > > i2c { > #address-cells = <1>; > #size-cells = <0>; > > ar0521: camera-sensor@36 { > compatible = "onnn,ar0521"; > reg = <0x36>; > pinctrl-names = "default"; > > ... > > It protests with: > > Documentation/devicetree/bindings/media/i2c/onnn,ar0521.example.dt.yaml: > camera-sensor@36: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+' > From schema: /usr/src/linux/imx6/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml > > Thus I'm currently leaving it as is.
diff --git a/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml b/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml new file mode 100644 index 000000000000..f649d4cbcb37 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/onnn,ar0521.yaml @@ -0,0 +1,76 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/media/i2c/onnn,ar0521.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ON Semiconductor AR0521 MIPI CSI-2 sensor + +maintainers: + - Krzysztof Halasa <khalasa@piap.pl> + +description: |- + The AR0521 is a raw CMOS image sensor with MIPI CSI-2 and + I2C-compatible control interface. + +properties: + compatible: + const: on-semi,ar0521 + + reg: + description: I2C bus address of the sensor device + maxItems: 1 + + clocks: + description: reference to the xclk clock + maxItems: 1 + + clock-names: + const: xclk + + reset-gpios: + description: active low reset GPIO + maxItems: 1 + + port: + type: object + description: | + Output video port: 1, 2 or 4 lanes. See ../video-interfaces.txt. + +required: + - compatible + - reg + - clocks + - clock-names + - port + +additionalProperties: false + +examples: + - | + #include <dt-bindings/gpio/gpio.h> + #include <dt-bindings/clock/imx6qdl-clock.h> + + i2c { + #address-cells = <1>; + #size-cells = <0>; + + ar0521: camera-sensor@36 { + compatible = "onnn,ar0521"; + reg = <0x36>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_mipi_camera>; + + clocks = <&clks IMX6QDL_CLK_CKO>; + clock-names = "xclk"; + + reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; + + port { + mipi_camera_to_mipi_csi2: endpoint { + remote-endpoint = <&mipi_csi2_in>; + data-lanes = <1 2 3 4>; + }; + }; + }; + };
This file documents DT bindings for the AR0521 camera sensor driver. Signed-off-by: Krzysztof Halasa <khalasa@piap.pl>