mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Rishikesh Donadkar <r-donadkar@ti.com>
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	tomi.valkeinen@ideasonboard.com, mchehab@kernel.org,
	robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org,
	nm@ti.com, vigneshr@ti.com, kristo@kernel.org,
	sakari.ailus@linux.intel.com, mripard@kernel.org,
	jai.luthra@linux.dev, jai.luthra@ideasonboard.com,
	devarsht@ti.com, y-abhilashchandra@ti.com,
	mirela.rabulea@nxp.com
Subject: Re: [RFC PATCH 7/8] arm64: dts: ti: k3-am62a7: FPDLink overlays for LI OV2312
Date: Sat, 26 Sep 2026 17:57:15 +0300	[thread overview]
Message-ID: <20260926145715.GF764757@killaraus.ideasonboard.com> (raw)
In-Reply-To: <20260925133001.2780868-8-r-donadkar@ti.com>

On Fri, Sep 25, 2026 at 07:00:00PM +0530, Rishikesh Donadkar wrote:
> From: Jai Luthra <j-luthra@ti.com>
> 
> OV2312 is a raw (4x4 RGB-IR bayer) sensor, the LI-OV2312-FPDLinkIII-110H
> module [1] packages it with an FPDLink-III serializer (DS90UB953) for
> use with sensor fusion setups using FPDLink-III deserializer boards.
> 
> Link: https://www.leopardimaging.com/product/autonomous-camera/ti-fpdlinkiii-cameras/li-ov2312-fpdlinkiii/li-ov2312-fpdlinkiii-110h/ [1]
> Signed-off-by: Jai Luthra <j-luthra@ti.com>
> Signed-off-by: Rishikesh Donadkar <r-donadkar@ti.com>
> ---
>  arch/arm64/boot/dts/ti/Makefile               |  6 ++
>  .../boot/dts/ti/k3-fpdlink-ov2312-0-0.dtso    | 89 +++++++++++++++++++
>  .../boot/dts/ti/k3-fpdlink-ov2312-0-1.dtso    | 89 +++++++++++++++++++
>  .../boot/dts/ti/k3-fpdlink-ov2312-0-2.dtso    | 89 +++++++++++++++++++
>  .../boot/dts/ti/k3-fpdlink-ov2312-0-3.dtso    | 89 +++++++++++++++++++

This seems to be a very strong candidate for the new DT addons
(https://bootlin.com/blog/device-tree-addons-describing-non-discoverable-addon-boards-and-connectors/).
It would help getting this feature merged if you could give it a try.

>  5 files changed, 362 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-0.dtso
>  create mode 100644 arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-1.dtso
>  create mode 100644 arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-2.dtso
>  create mode 100644 arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-3.dtso
> 
> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
> index 795978e962ee..8d608e244087 100644
> --- a/arch/arm64/boot/dts/ti/Makefile
> +++ b/arch/arm64/boot/dts/ti/Makefile
> @@ -508,5 +508,11 @@ dtb- += k3-am625-beagleplay-csi2-ov5640.dtb \
>  	k3-j784s4-evm-usb0-type-a.dtb \
>  	k3-j784s4-evm-usxgmii-exp1-exp2.dtb
>  
> +# FPDLink Sensors
> +dtb-$(CONFIG_ARCH_K3) += k3-fpdlink-ov2312-0-0.dtbo \
> +			 k3-fpdlink-ov2312-0-1.dtbo \
> +			 k3-fpdlink-ov2312-0-2.dtbo \
> +			 k3-fpdlink-ov2312-0-3.dtbo
> +
>  # Enable support for device-tree overlays
>  DTC_FLAGS := -@
> diff --git a/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-0.dtso b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-0.dtso
> new file mode 100644
> index 000000000000..0829f01a0f90
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-0.dtso
> @@ -0,0 +1,89 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * IMX390 FPD-Link 3 Camera Module
> + * Copyright (c) 2023 Texas Instruments Incorporated - http://www.ti.com/
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +
> +&deserializer_0_ports {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* FPDLink RX 0 */
> +	port@0 {
> +		reg = <0>;
> +
> +		ub960_fpd3_1_in: endpoint {
> +			remote-endpoint = <&ub953_1_out>;
> +		};
> +	};
> +};
> +
> +&deserializer_0_links {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	link@0 {
> +		reg = <0>;
> +		i2c-alias = <0x44>;
> +
> +		ti,rx-mode = <3>;
> +
> +		serializer: serializer {
> +			compatible = "ti,ds90ub953-q1";
> +			gpio-controller;
> +			#gpio-cells = <2>;
> +
> +			#clock-cells = <0>;
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					ub953_1_in: endpoint {
> +						data-lanes = <1 2>;
> +						/*clock-noncontinuous;*/
> +						remote-endpoint = <&sensor_1_out>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +
> +					ub953_1_out: endpoint {
> +						remote-endpoint = <&ub960_fpd3_1_in>;
> +					};
> +				};
> +			};
> +
> +			i2c {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				sensor@60 {
> +					compatible = "ovti,ov2312";
> +					reg = <0x60>;
> +
> +					clocks = <&serializer>;
> +					clock-names = "xvclk";
> +					assigned-clocks = <&serializer>;
> +					assigned-clock-rates = <24000000>;
> +
> +					reset-gpios = <&serializer 2 GPIO_ACTIVE_HIGH>;
> +
> +					port {
> +						sensor_1_out: endpoint {
> +							remote-endpoint = <&ub953_1_in>;
> +						};
> +					};
> +				};
> +			};
> +		};
> +	};
> +};
> diff --git a/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-1.dtso b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-1.dtso
> new file mode 100644
> index 000000000000..06cba8c7397f
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-1.dtso
> @@ -0,0 +1,89 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * IMX390 FPD-Link 3 Camera Module
> + * Copyright (c) 2023 Texas Instruments Incorporated - http://www.ti.com/
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +
> +&deserializer_0_ports {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* FPDLink RX 1 */
> +	port@1 {
> +		reg = <1>;
> +
> +		ub960_fpd3_1_in: endpoint {
> +			remote-endpoint = <&ub953_1_out>;
> +		};
> +	};
> +};
> +
> +&deserializer_0_links {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	link@1 {
> +		reg = <1>;
> +		i2c-alias = <0x45>;
> +
> +		ti,rx-mode = <3>;
> +
> +		serializer: serializer {
> +			compatible = "ti,ds90ub953-q1";
> +			gpio-controller;
> +			#gpio-cells = <2>;
> +
> +			#clock-cells = <0>;
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					ub953_1_in: endpoint {
> +						data-lanes = <1 2>;
> +						/*clock-noncontinuous;*/
> +						remote-endpoint = <&sensor_1_out>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +
> +					ub953_1_out: endpoint {
> +						remote-endpoint = <&ub960_fpd3_1_in>;
> +					};
> +				};
> +			};
> +
> +			i2c {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				sensor@60 {
> +					compatible = "ovti,ov2312";
> +					reg = <0x60>;
> +
> +					clocks = <&serializer>;
> +					clock-names = "xvclk";
> +					assigned-clocks = <&serializer>;
> +					assigned-clock-rates = <24000000>;
> +
> +					reset-gpios = <&serializer 2 GPIO_ACTIVE_HIGH>;
> +
> +					port {
> +						sensor_1_out: endpoint {
> +							remote-endpoint = <&ub953_1_in>;
> +						};
> +					};
> +				};
> +			};
> +		};
> +	};
> +};
> diff --git a/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-2.dtso b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-2.dtso
> new file mode 100644
> index 000000000000..7d377dbe5bbf
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-2.dtso
> @@ -0,0 +1,89 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * IMX390 FPD-Link 3 Camera Module
> + * Copyright (c) 2023 Texas Instruments Incorporated - http://www.ti.com/
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +
> +&deserializer_0_ports {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* FPDLink RX 2 */
> +	port@2 {
> +		reg = <2>;
> +
> +		ub960_fpd3_1_in: endpoint {
> +			remote-endpoint = <&ub953_1_out>;
> +		};
> +	};
> +};
> +
> +&deserializer_0_links {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	link@2 {
> +		reg = <2>;
> +		i2c-alias = <0x46>;
> +
> +		ti,rx-mode = <3>;
> +
> +		serializer: serializer {
> +			compatible = "ti,ds90ub953-q1";
> +			gpio-controller;
> +			#gpio-cells = <2>;
> +
> +			#clock-cells = <0>;
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					ub953_1_in: endpoint {
> +						data-lanes = <1 2>;
> +						/*clock-noncontinuous;*/
> +						remote-endpoint = <&sensor_1_out>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +
> +					ub953_1_out: endpoint {
> +						remote-endpoint = <&ub960_fpd3_1_in>;
> +					};
> +				};
> +			};
> +
> +			i2c {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				sensor@60 {
> +					compatible = "ovti,ov2312";
> +					reg = <0x60>;
> +
> +					clocks = <&serializer>;
> +					clock-names = "xvclk";
> +					assigned-clocks = <&serializer>;
> +					assigned-clock-rates = <24000000>;
> +
> +					reset-gpios = <&serializer 2 GPIO_ACTIVE_HIGH>;
> +
> +					port {
> +						sensor_1_out: endpoint {
> +							remote-endpoint = <&ub953_1_in>;
> +						};
> +					};
> +				};
> +			};
> +		};
> +	};
> +};
> diff --git a/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-3.dtso b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-3.dtso
> new file mode 100644
> index 000000000000..f74bff5f12b0
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-fpdlink-ov2312-0-3.dtso
> @@ -0,0 +1,89 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * IMX390 FPD-Link 3 Camera Module
> + * Copyright (c) 2023 Texas Instruments Incorporated - http://www.ti.com/
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +
> +&deserializer_0_ports {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	/* FPDLink RX 3 */
> +	port@3 {
> +		reg = <3>;
> +
> +		ub960_fpd3_1_in: endpoint {
> +			remote-endpoint = <&ub953_1_out>;
> +		};
> +	};
> +};
> +
> +&deserializer_0_links {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	link@3 {
> +		reg = <3>;
> +		i2c-alias = <0x47>;
> +
> +		ti,rx-mode = <3>;
> +
> +		serializer: serializer {
> +			compatible = "ti,ds90ub953-q1";
> +			gpio-controller;
> +			#gpio-cells = <2>;
> +
> +			#clock-cells = <0>;
> +
> +			ports {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				port@0 {
> +					reg = <0>;
> +					ub953_1_in: endpoint {
> +						data-lanes = <1 2>;
> +						/*clock-noncontinuous;*/
> +						remote-endpoint = <&sensor_1_out>;
> +					};
> +				};
> +
> +				port@1 {
> +					reg = <1>;
> +
> +					ub953_1_out: endpoint {
> +						remote-endpoint = <&ub960_fpd3_1_in>;
> +					};
> +				};
> +			};
> +
> +			i2c {
> +				#address-cells = <1>;
> +				#size-cells = <0>;
> +
> +				sensor@60 {
> +					compatible = "ovti,ov2312";
> +					reg = <0x60>;
> +
> +					clocks = <&serializer>;
> +					clock-names = "xvclk";
> +					assigned-clocks = <&serializer>;
> +					assigned-clock-rates = <24000000>;
> +
> +					reset-gpios = <&serializer 2 GPIO_ACTIVE_HIGH>;
> +
> +					port {
> +						sensor_1_out: endpoint {
> +							remote-endpoint = <&ub953_1_in>;
> +						};
> +					};
> +				};
> +			};
> +		};
> +	};
> +};

-- 
Regards,

Laurent Pinchart

  reply	other threads:[~2026-09-26 14:57 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-25 13:29 [RFC PATCH 0/8] Add OmniVision OV2312 RGB-IR sensor driver Rishikesh Donadkar
2026-09-25 13:29 ` [RFC PATCH 1/8] dt-bindings: media: Add bindings for Omnivision OV2312 Rishikesh Donadkar
2026-09-26 14:51   ` Laurent Pinchart
2026-09-25 13:29 ` [RFC PATCH 2/8] media: v4l: Add 10-bit RGBIr formats Rishikesh Donadkar
2026-09-26 14:30   ` Sakari Ailus
2026-09-26 14:40     ` Laurent Pinchart
2026-09-25 13:29 ` [RFC PATCH 3/8] media: i2c: ds90ub960: " Rishikesh Donadkar
2026-09-25 13:29 ` [RFC PATCH 4/8] media: cadence: csi2rx: Add RAW10 " Rishikesh Donadkar
2026-09-26 14:52   ` Laurent Pinchart
2026-09-25 13:29 ` [RFC PATCH 5/8] media: ti: j721e-csi2rx: " Rishikesh Donadkar
2026-09-25 13:29 ` [RFC PATCH 6/8] media: i2c: ov2312: add Omnivison OV2312 driver Rishikesh Donadkar
2026-09-25 13:30 ` [RFC PATCH 7/8] arm64: dts: ti: k3-am62a7: FPDLink overlays for LI OV2312 Rishikesh Donadkar
2026-09-26 14:57   ` Laurent Pinchart [this message]
2026-09-25 13:30 ` [RFC PATCH 8/8] arm64: defconfig: Enable OV2312 Rishikesh Donadkar
2026-09-26 14:55   ` Laurent Pinchart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260926145715.GF764757@killaraus.ideasonboard.com \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=conor+dt@kernel.org \
    --cc=devarsht@ti.com \
    --cc=devicetree@vger.kernel.org \
    --cc=jai.luthra@ideasonboard.com \
    --cc=jai.luthra@linux.dev \
    --cc=kristo@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=mirela.rabulea@nxp.com \
    --cc=mripard@kernel.org \
    --cc=nm@ti.com \
    --cc=r-donadkar@ti.com \
    --cc=robh@kernel.org \
    --cc=sakari.ailus@linux.intel.com \
    --cc=tomi.valkeinen@ideasonboard.com \
    --cc=vigneshr@ti.com \
    --cc=y-abhilashchandra@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®