Hi Sakari, On Fri 30 Oct 20, 18:37, Sakari Ailus wrote: > On Fri, Oct 23, 2020 at 07:49:43PM +0200, Paul Kocialkowski wrote: > > This introduces YAML bindings documentation for the OV5648 > > image sensor. > > > > Signed-off-by: Paul Kocialkowski > > --- > > .../bindings/media/i2c/ovti,ov5648.yaml | 115 ++++++++++++++++++ > > 1 file changed, 115 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ov5648.yaml > > > > diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ov5648.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ov5648.yaml > > new file mode 100644 > > index 000000000000..347af925b450 > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ov5648.yaml > > @@ -0,0 +1,115 @@ > > +# SPDX-License-Identifier: GPL-2.0 > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/media/i2c/ovti,ov5648.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: OmniVision OV5648 Image Sensor Device Tree Bindings > > + > > +maintainers: > > + - Paul Kocialkowski > > + > > +properties: > > + compatible: > > + const: ovti,ov5648 > > + > > + reg: > > + maxItems: 1 > > + > > + clocks: > > + items: > > + - description: XVCLK Clock > > + > > + clock-names: > > + items: > > + - const: xvclk > > + > > + dvdd-supply: > > + description: Digital Domain Power Supply > > + > > + avdd-supply: > > + description: Analog Domain Power Supply (internal AVDD is used if missing) > > + > > + dovdd-supply: > > + description: I/O Domain Power Supply > > + > > + powerdown-gpios: > > + maxItems: 1 > > + description: Power Down Pin GPIO Control (active low) > > + > > + reset-gpios: > > + maxItems: 1 > > + description: Reset Pin GPIO Control (active low) > > + > > + port: > > + type: object > > + description: Input port, connect to a MIPI CSI-2 receiver > > "Input"? I'd describe this as output. > > How about e.g. "MIPI CSI-2 transmitter port"? Woops, that's definitely a mistake. Your suggestion sounds good, thanks! > > + > > + properties: > > + endpoint: > > + type: object > > + > > + properties: > > + remote-endpoint: true > > + > > + bus-type: > > + const: 4 > > + > > + clock-lanes: > > + maxItems: 1 > > You can drop the two as they're always the same. See my reply to the same comment on the other series. Cheers, Paul > > + > > + data-lanes: > > + minItems: 1 > > + maxItems: 2 > > + > > + required: > > + - bus-type > > + - data-lanes > > + - remote-endpoint > > + > > + additionalProperties: false > > + > > + required: > > + - endpoint > > + > > +required: > > + - compatible > > + - reg > > + - clocks > > + - clock-names > > + - dvdd-supply > > + - dovdd-supply > > + - port > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + #include > > + #include > > + > > + i2c0 { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + ov5648: camera@36 { > > + compatible = "ovti,ov5648"; > > + reg = <0x36>; > > + > > + dvdd-supply = <&ov5648_dvdd>; > > + avdd-supply = <&ov5648_avdd>; > > + dovdd-supply = <&ov5648_dovdd>; > > + clocks = <&ov5648_xvclk 0>; > > + clock-names = "xvclk"; > > + > > + ov5648_out: port { > > + ov5648_out_mipi_csi2: endpoint { > > + bus-type = <4>; /* MIPI CSI-2 D-PHY */ > > + clock-lanes = <0>; > > + data-lanes = <1 2>; > > + > > + remote-endpoint = <&mipi_csi2_in_ov5648>; > > + }; > > + }; > > + }; > > + }; > > -- > Sakari Ailus -- Paul Kocialkowski, Bootlin Embedded Linux and kernel engineering https://bootlin.com