On Mon, Sep 6, 2021 at 12:30 PM Martin Kepplinger <martin.kepplinger@xxxxxxx> wrote: > Document the bindings used for the SK Hynix Hi-846 CMOS camera driver. > > Signed-off-by: Martin Kepplinger <martin.kepplinger@xxxxxxx> > Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> > Reviewed-by: Rob Herring <robh@xxxxxxxxxx> > --- > .../bindings/media/i2c/hynix,hi846.yaml | 120 ++++++++++++++++++ > 1 file changed, 120 insertions(+) > create mode 100644 Documentation/devicetree/bindings/media/i2c/hynix,hi846.yaml > > diff --git a/Documentation/devicetree/bindings/media/i2c/hynix,hi846.yaml b/Documentation/devicetree/bindings/media/i2c/hynix,hi846.yaml > new file mode 100644 > index 000000000000..85a8877c2f38 > --- /dev/null > +++ b/Documentation/devicetree/bindings/media/i2c/hynix,hi846.yaml > @@ -0,0 +1,120 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/media/i2c/hynix,hi846.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: SK Hynix Hi-846 1/4" 8M Pixel MIPI CSI-2 sensor > + > +maintainers: > + - Martin Kepplinger <martin.kepplinger@xxxxxxx> > + > +description: |- > + The Hi-846 is a raw image sensor with an MIPI CSI-2 image data > + interface and CCI (I2C compatible) control bus. The output format > + is raw Bayer. > + > +properties: > + compatible: > + const: hynix,hi846 > + > + reg: > + maxItems: 1 > + > + clocks: > + items: > + - description: Reference to the mclk clock. > + > + assigned-clocks: > + maxItems: 1 > + > + assigned-clock-rates: > + maxItems: 1 > + > + reset-gpios: > + description: Reference to the GPIO connected to the RESETB pin. Active low. > + maxItems: 1 > + > + shutdown-gpios: > + description: Reference to the GPIO connected to the XSHUTDOWN pin. Active low. > + maxItems: 1 > + > + vddio-supply: > + description: Definition of the regulator used for the VDDIO power supply. > + > + vdda-supply: > + description: Definition of the regulator used for the VDDA power supply. > + > + vddd-supply: > + description: Definition of the regulator used for the VDDD power supply. > + > + port: > + $ref: /schemas/graph.yaml#/properties/port > + > + properties: > + endpoint: > + $ref: /schemas/media/video-interfaces.yaml# > + unevaluatedProperties: false > + > + properties: > + data-lanes: > + oneOf: > + - items: > + - const: 1 > + - const: 2 > + - const: 3 > + - const: 4 > + - items: > + - const: 1 > + - const: 2 > + > + required: > + - data-lanes > + > +required: > + - compatible > + - reg > + - clocks > + - assigned-clocks > + - assigned-clock-rates > + - vddio-supply > + - vdda-supply > + - vddd-supply > + - port > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/gpio/gpio.h> > + > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + hi846: camera@20 { > + compatible = "hynix,hi846"; > + reg = <0x20>; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_csi1>; > + clocks = <&clk 0>; > + assigned-clocks = <&clk 0>; > + assigned-clock-rates = <25000000>; > + vdda-supply = <®_camera_vdda>; > + vddd-supply = <®_camera_vddd>; > + vddio-supply = <®_camera_vddio>; > + reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; > + shutdown-gpios = <&gpio5 4 GPIO_ACTIVE_LOW>; > + > + port { > + camera_out: endpoint { > + remote-endpoint = <&csi1_ep1>; > + link-frequencies = /bits/ 64 > + <80000000 200000000>; > + data-lanes = <1 2>; "make dt_binding_check": Documentation/devicetree/bindings/media/i2c/hynix,hi846.example.dt.yaml: camera@20: port:endpoint: Unevaluated properties are not allowed ('link-frequencies', 'data-lanes' were unexpected) From schema: Documentation/devicetree/bindings/media/i2c/hynix,hi846.yaml > + }; > + }; > + }; > + }; Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds