Re: [PATCH 1/2] dt-bindings: media: i2c: Add OV5648 bindings documentation

Sakari Ailus
2020-10-30T17:09:23Z

Hi Paul,

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 <paul.kocialkowski@bootlin.com>
> ---
> .../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 <paul.kocialkowski@bootlin.com>
> +
> +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"?

> +
> + 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.

> +
> + 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 <dt-bindings/clock/sun8i-v3s-ccu.h>
> + #include <dt-bindings/gpio/gpio.h>
> +
> + 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