[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aGAz-TA7fjI-m76N@valkosipuli.retiisi.eu>
Date: Sat, 28 Jun 2025 18:27:05 +0000
From: Sakari Ailus <sakari.ailus@....fi>
To: Mirela Rabulea <mirela.rabulea@....com>
Cc: mchehab@...nel.org, sakari.ailus@...ux.intel.com,
hverkuil-cisco@...all.nl, laurent.pinchart+renesas@...asonboard.com,
robh@...nel.org, krzk+dt@...nel.org, bryan.odonoghue@...aro.org,
laurentiu.palcu@....com, robert.chiras@....com,
linux-media@...r.kernel.org, linux-kernel@...r.kernel.org,
LnxRevLi@....com, kieran.bingham@...asonboard.com,
hdegoede@...hat.com, dave.stevenson@...pberrypi.com,
mike.rudenko@...il.com, alain.volmat@...s.st.com,
devicetree@...r.kernel.org, conor+dt@...nel.org,
alexander.stein@...tq-group.com, umang.jain@...asonboard.com,
zhi.mao@...iatek.com, festevam@...x.de, julien.vuillaumier@....com
Subject: Re: [PATCH v4 1/4] dt-bindings: media: i2c: Add OX05B1S sensor
Hi Mirela,
On Wed, Mar 05, 2025 at 11:43:56AM +0200, Mirela Rabulea wrote:
> Add bindings for Omnivision OX05B1S sensor.
> Also add compatible for Omnivision OS08A20 sensor.
>
> Signed-off-by: Mirela Rabulea <mirela.rabulea@....com>
> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@...aro.org>
> ---
>
> Changes in v4:
> Collect Reviewed-by
>
> Changes in v3:
> Use unevaluatedProperties: false and drop orientation/rotation
> Drop items and keep alphabetical order in compatible property
> Shorten the description for reset_gpio
> Make the supplies required.
> Use generic node name (camera instead of ox05b1s)
>
> Changes in v2:
> Small updates on description
> Update subject, drop "bindings" and "driver"
> Just one binding patch (squash os08a20 bindings)
> Re-flow to 80 columns.
> Drop clock name (not needed in case of single clock)
> Make the clock required property, strictly from sensor module point of view, it is mandatory (will use a fixed clock for nxp board)
> Add regulators: avdd, dvdd, dovdd
> Add $ref: /schemas/media/video-interface-devices.yaml
> Drop assigned-clock* properties (defined in clocks.yaml)
> Keep "additionalProperties : false" and orientation/rotation (unevaluatedProperties: false was suggested, but only orientation/rotation are needed from video-interface-devices.yaml)
> Include assigned-clock* in the example, for completeness sake (although it was also suggested to omit them)
>
> .../bindings/media/i2c/ovti,ox05b1s.yaml | 119 ++++++++++++++++++
> 1 file changed, 119 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ox05b1s.yaml
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/ovti,ox05b1s.yaml b/Documentation/devicetree/bindings/media/i2c/ovti,ox05b1s.yaml
> new file mode 100644
> index 000000000000..9f35b4e67bea
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/media/i2c/ovti,ox05b1s.yaml
> @@ -0,0 +1,119 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +# Copyright (C) 2024 NXP
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/media/i2c/ovti,ox05b1s.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Omnivision OX05B1S Image Sensor
> +
> +maintainers:
> + - Mirela Rabulea <mirela.rabulea@....com>
> +
> +description:
> + The Omnivision OX05B1S is a 1/2.5-Inch CMOS image sensor with an active
> + array size of 2592 x 1944. It is programmable through I2C interface.
> + Image data is available via MIPI CSI-2 serial data output.
> +
> +allOf:
> + - $ref: /schemas/media/video-interface-devices.yaml#
> +
> +properties:
> + compatible:
> + enum:
> + - ovti,os08a20
> + - ovti,ox05b1s
The bindings only describe ox05b1s. How are the two different?
> +
> + reg:
> + maxItems: 1
> +
> + clocks:
> + description: Input clock (24 MHz)
> + maxItems: 1
Is this really a hardware limitation, or what the driver is currently
limited to? In the former case, I'd include the range.
> +
> + reset-gpios:
> + description: Active low XSHUTDOWN pin
> + maxItems: 1
> +
> + avdd-supply:
> + description: Power for analog circuit (2.8V)
> +
> + dovdd-supply:
> + description: Power for I/O circuit (1.8V)
> +
> + dvdd-supply:
> + description: Power for digital circuit (1.2V)
> +
> + port:
> + $ref: /schemas/graph.yaml#/$defs/port-base
> + additionalProperties: false
> + description: MIPI CSI-2 transmitter port
> +
> + properties:
> + endpoint:
> + $ref: /schemas/media/video-interfaces.yaml#
> + unevaluatedProperties: false
> +
> + properties:
> + data-lanes:
> + anyOf:
> + - items:
> + - const: 1
> + - const: 2
> + - items:
> + - const: 1
> + - const: 2
> + - const: 3
> + - const: 4
> + required:
> + - data-lanes
> +
> + required:
> + - endpoint
> +
> +required:
> + - compatible
> + - reg
> + - clocks
> + - port
> + - avdd-supply
> + - dovdd-supply
> + - dvdd-supply
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + #include <dt-bindings/gpio/gpio.h>
> +
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + camera@36 {
> + compatible = "ovti,ox05b1s";
> + reg = <0x36>;
> + clocks = <&ox05b1s_clk>;
> +
> + assigned-clocks = <&ox05b1s_clk>;
> + assigned-clock-parents = <&ox05b1s_clk_parent>;
> + assigned-clock-rates = <24000000>;
> +
> + reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
> +
> + avdd-supply = <&camera_avdd_2v8>;
> + dovdd-supply = <&camera_dovdd_1v8>;
> + dvdd-supply = <&camera_dvdd_1v2>;
> +
> + orientation = <2>;
> + rotation = <0>;
> +
> + port {
> + ox05b1s_mipi_0_ep: endpoint {
> + remote-endpoint = <&mipi_csi0_ep>;
> + data-lanes = <1 2 3 4>;
> + };
> + };
> + };
> + };
> +...
--
Kind regards,
Sakari Ailus
Powered by blists - more mailing lists