Re: [PATCH v3 1/2] dt-bindings: media: i2c: add galaxycore,gc2145 DVP bus support

From: Sakari Ailus
Date: Wed May 22 2024 - 08:11:54 EST


Hi Andrey,

On Sat, May 04, 2024 at 07:41:14PM +0300, Andrey Skvortsov wrote:
> Signed-off-by: Andrey Skvortsov <andrej.skvortzov@xxxxxxxxx>
> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
> ---
> .../bindings/media/i2c/galaxycore,gc2145.yaml | 65 ++++++++++++++++++-
> 1 file changed, 64 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc2145.yaml b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc2145.yaml
> index 1726ecca4c77..3ca5bb94502d 100644
> --- a/Documentation/devicetree/bindings/media/i2c/galaxycore,gc2145.yaml
> +++ b/Documentation/devicetree/bindings/media/i2c/galaxycore,gc2145.yaml
> @@ -61,8 +61,38 @@ properties:
> properties:
> link-frequencies: true
>
> + bus-type:
> + enum:
> + - 4 # CSI-2 D-PHY
> + - 5 # Parallel
> + default: 4
> +
> + bus-width:
> + const: 8
> +
> + hsync-active:
> + enum: [0, 1]
> + default: 1
> +
> + vsync-active:
> + enum: [0, 1]
> + default: 1
> +
> + pclk-sample:
> + enum: [0, 1]
> + default: 1

These are relevant for bus-type 5 only.

> +
> required:
> - - link-frequencies
> + - bus-type
> +
> + allOf:
> + - if:
> + properties:
> + bus-type:
> + const: 4
> + then:
> + required:
> + - link-frequencies

I think I'd keep the link-frequencies for DVP as well.

>
> required:
> - endpoint
> @@ -84,6 +114,7 @@ additionalProperties: false
>
> examples:
> - |
> + #include <dt-bindings/media/video-interfaces.h>
> #include <dt-bindings/gpio/gpio.h>
>
> i2c {
> @@ -103,6 +134,7 @@ examples:
> port {
> endpoint {
> remote-endpoint = <&mipid02_0>;
> + bus-type = <MEDIA_BUS_TYPE_CSI2_DPHY>;
> data-lanes = <1 2>;
> link-frequencies = /bits/ 64 <120000000 192000000 240000000>;
> };
> @@ -110,4 +142,35 @@ examples:
> };
> };
>
> + - |
> + #include <dt-bindings/media/video-interfaces.h>
> + #include <dt-bindings/gpio/gpio.h>
> +
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + camera@3c {
> + compatible = "galaxycore,gc2145";
> + reg = <0x3c>;
> + clocks = <&clk_ext_camera>;
> + iovdd-supply = <&scmi_v3v3_sw>;
> + avdd-supply = <&scmi_v3v3_sw>;
> + dvdd-supply = <&scmi_v3v3_sw>;
> + powerdown-gpios = <&mcp23017 3 (GPIO_ACTIVE_LOW | GPIO_PUSH_PULL)>;
> + reset-gpios = <&mcp23017 4 (GPIO_ACTIVE_LOW | GPIO_PUSH_PULL)>;
> +
> + port {
> + endpoint {
> + remote-endpoint = <&parallel_from_gc2145>;
> + bus-type = <MEDIA_BUS_TYPE_PARALLEL>;
> + bus-width = <8>;
> + hsync-active = <1>;
> + vsync-active = <1>;
> + pclk-sample = <1>;
> + };
> + };
> + };
> + };
> +
> ...

--
Kind regards,

Sakari Ailus