diff mbox

[v2] ARM: dts: sbc-t3x: add DVI display data

Message ID 1414927198-7127-1-git-send-email-lifshitz@compulab.co.il (mailing list archive)
State New, archived
Headers show

Commit Message

Dmitry Lifshitz Nov. 2, 2014, 11:19 a.m. UTC
Add DSS related pinmux and display data nodes required to support
DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.

Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
---
v2:  * Make use of OMAP3_WKUP_IOPAD() macro
     * Move common DSS pinmux of CM-T3517 and CM-T3530
       into omap3-cm-t3x.dtsi.

 arch/arm/boot/dts/omap3-cm-t3517.dts  |   11 +++++++
 arch/arm/boot/dts/omap3-cm-t3530.dts  |   11 +++++++
 arch/arm/boot/dts/omap3-cm-t3730.dts  |   24 ++++++++++++++++
 arch/arm/boot/dts/omap3-cm-t3x.dtsi   |   39 ++++++++++++++++++++++++++
 arch/arm/boot/dts/omap3-sb-t35.dtsi   |   49 +++++++++++++++++++++++++++++++++
 arch/arm/boot/dts/omap3-sbc-t3517.dts |   14 +++++++++
 arch/arm/boot/dts/omap3-sbc-t3530.dts |   14 +++++++++
 arch/arm/boot/dts/omap3-sbc-t3730.dts |   14 +++++++++
 8 files changed, 176 insertions(+), 0 deletions(-)

Comments

Igor Grinberg Nov. 2, 2014, 12:06 p.m. UTC | #1
On 11/02/14 13:19, Dmitry Lifshitz wrote:
> Add DSS related pinmux and display data nodes required to support
> DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.
> 
> Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>

Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Tony Lindgren Nov. 10, 2014, 5:48 p.m. UTC | #2
* Igor Grinberg <grinberg@compulab.co.il> [141102 04:08]:
> On 11/02/14 13:19, Dmitry Lifshitz wrote:
> > Add DSS related pinmux and display data nodes required to support
> > DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.
> > 
> > Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
> 
> Acked-by: Igor Grinberg <grinberg@compulab.co.il>

Thanks applying into omap-for-v3.19/dt.

Are we now ready to drop the board-cm-*.c files?

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Igor Grinberg Nov. 11, 2014, 12:02 p.m. UTC | #3
Hi Tony,

On 11/10/14 19:48, Tony Lindgren wrote:
> * Igor Grinberg <grinberg@compulab.co.il> [141102 04:08]:
>> On 11/02/14 13:19, Dmitry Lifshitz wrote:
>>> Add DSS related pinmux and display data nodes required to support
>>> DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.
>>>
>>> Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
>>
>> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
> 
> Thanks applying into omap-for-v3.19/dt.
> 
> Are we now ready to drop the board-cm-*.c files?

Let's see, below is a list of things that are yet to be
supported in DT boot:
NAND, TV, LCD, Touchscreen, Audio (CM-T3x30), RTC (CM-T3517), CAN (CM-3517).

We're rc4 now, so hopefully, we will be able to get all this in for 3.19
and then have the board files removed for 3.20.
This way we can have 3.19 with both ways supported and do last checks.

Are you ok with this?
Tony Lindgren Nov. 11, 2014, 2:49 p.m. UTC | #4
* Igor Grinberg <grinberg@compulab.co.il> [141111 04:04]:
> Hi Tony,
> 
> On 11/10/14 19:48, Tony Lindgren wrote:
> > * Igor Grinberg <grinberg@compulab.co.il> [141102 04:08]:
> >> On 11/02/14 13:19, Dmitry Lifshitz wrote:
> >>> Add DSS related pinmux and display data nodes required to support
> >>> DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.
> >>>
> >>> Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
> >>
> >> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
> > 
> > Thanks applying into omap-for-v3.19/dt.
> > 
> > Are we now ready to drop the board-cm-*.c files?
> 
> Let's see, below is a list of things that are yet to be
> supported in DT boot:
> NAND, TV, LCD, Touchscreen, Audio (CM-T3x30), RTC (CM-T3517), CAN (CM-3517).

OK great, hopefully that's mostly just configuring the .dts
files.
 
> We're rc4 now, so hopefully, we will be able to get all this in for 3.19
> and then have the board files removed for 3.20.

Yes something like that sounds good to me. We should allow at
least one release for people to change over.

> This way we can have 3.19 with both ways supported and do last checks.
> 
> Are you ok with this?

Sure if you get the changes posted before -rc6, otherwise
it will be too late for v3.19.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Igor Grinberg Nov. 11, 2014, 4:39 p.m. UTC | #5
On 11/11/14 16:49, Tony Lindgren wrote:
> * Igor Grinberg <grinberg@compulab.co.il> [141111 04:04]:
>> Hi Tony,
>>
>> On 11/10/14 19:48, Tony Lindgren wrote:
>>> * Igor Grinberg <grinberg@compulab.co.il> [141102 04:08]:
>>>> On 11/02/14 13:19, Dmitry Lifshitz wrote:
>>>>> Add DSS related pinmux and display data nodes required to support
>>>>> DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.
>>>>>
>>>>> Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
>>>>
>>>> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
>>>
>>> Thanks applying into omap-for-v3.19/dt.
>>>
>>> Are we now ready to drop the board-cm-*.c files?
>>
>> Let's see, below is a list of things that are yet to be
>> supported in DT boot:
>> NAND, TV, LCD, Touchscreen, Audio (CM-T3x30), RTC (CM-T3517), CAN (CM-3517).
> 
> OK great, hopefully that's mostly just configuring the .dts
> files.

Well, mostly... but not all of it.

The LCD, RTC and CAN require bindings/drivers work.

>  
>> We're rc4 now, so hopefully, we will be able to get all this in for 3.19
>> and then have the board files removed for 3.20.
> 
> Yes something like that sounds good to me. We should allow at
> least one release for people to change over.
> 
>> This way we can have 3.19 with both ways supported and do last checks.
>>
>> Are you ok with this?
> 
> Sure if you get the changes posted before -rc6, otherwise
> it will be too late for v3.19.

I think, I was too optimistic about 3.19, but we can try.
Since drivers will require adaptation, I'm not sure
it will be merged for 3.19...
If we really want to make the DT boot for 3.19, we could work and
post the drivers adaptation patches and in parallel (to keep thing
going for board files removal) prepare patches for adding the
problematic stuff via quirks. This way we can keep only the DT missing
functionality in quirks and remove the board files. Once the drivers
are adjusted with new bindings, we can remove the quirks.

Or if we are fine with keeping the board files for a little more, then
just add the DT functionality that is ready and keep working on drivers
until they are ready (hopefully, 1 - 2 releases).

What do you think?
Tony Lindgren Nov. 11, 2014, 4:51 p.m. UTC | #6
* Igor Grinberg <grinberg@compulab.co.il> [141111 08:41]:
> On 11/11/14 16:49, Tony Lindgren wrote:
> > * Igor Grinberg <grinberg@compulab.co.il> [141111 04:04]:
> >> Hi Tony,
> >>
> >> On 11/10/14 19:48, Tony Lindgren wrote:
> >>> * Igor Grinberg <grinberg@compulab.co.il> [141102 04:08]:
> >>>> On 11/02/14 13:19, Dmitry Lifshitz wrote:
> >>>>> Add DSS related pinmux and display data nodes required to support
> >>>>> DVI video out on SBC-T3530, SBC-T3730 and SBC-T3517.
> >>>>>
> >>>>> Signed-off-by: Dmitry Lifshitz <lifshitz@compulab.co.il>
> >>>>
> >>>> Acked-by: Igor Grinberg <grinberg@compulab.co.il>
> >>>
> >>> Thanks applying into omap-for-v3.19/dt.
> >>>
> >>> Are we now ready to drop the board-cm-*.c files?
> >>
> >> Let's see, below is a list of things that are yet to be
> >> supported in DT boot:
> >> NAND, TV, LCD, Touchscreen, Audio (CM-T3x30), RTC (CM-T3517), CAN (CM-3517).
> > 
> > OK great, hopefully that's mostly just configuring the .dts
> > files.
> 
> Well, mostly... but not all of it.
> 
> The LCD, RTC and CAN require bindings/drivers work.

OK 
  
> >> We're rc4 now, so hopefully, we will be able to get all this in for 3.19
> >> and then have the board files removed for 3.20.
> > 
> > Yes something like that sounds good to me. We should allow at
> > least one release for people to change over.
> > 
> >> This way we can have 3.19 with both ways supported and do last checks.
> >>
> >> Are you ok with this?
> > 
> > Sure if you get the changes posted before -rc6, otherwise
> > it will be too late for v3.19.
> 
> I think, I was too optimistic about 3.19, but we can try.
> Since drivers will require adaptation, I'm not sure
> it will be merged for 3.19...

Yes it might be a bit late for that, but if the changes are trivial,
maybe not.

> If we really want to make the DT boot for 3.19, we could work and
> post the drivers adaptation patches and in parallel (to keep thing
> going for board files removal) prepare patches for adding the
> problematic stuff via quirks. This way we can keep only the DT missing
> functionality in quirks and remove the board files. Once the drivers
> are adjusted with new bindings, we can remove the quirks.

Yes that's what we can do for sure.
 
> Or if we are fine with keeping the board files for a little more, then
> just add the DT functionality that is ready and keep working on drivers
> until they are ready (hopefully, 1 - 2 releases).
> 
> What do you think?

It seems we can do both in parallel: We can use quirks for now, then
remove the quirks when drivers have bindings. That removes a dependency
between board-*.c files and the remaining few drivers.

Regards,

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/omap3-cm-t3517.dts b/arch/arm/boot/dts/omap3-cm-t3517.dts
index d00502f..0ab748c 100644
--- a/arch/arm/boot/dts/omap3-cm-t3517.dts
+++ b/arch/arm/boot/dts/omap3-cm-t3517.dts
@@ -134,3 +134,14 @@ 
 	bus-width = <4>;
 	cap-power-off-card;
 };
+
+&dss {
+	status = "ok";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <
+		&dss_dpi_pins_common
+		&dss_dpi_pins_cm_t35x
+	>;
+};
+
diff --git a/arch/arm/boot/dts/omap3-cm-t3530.dts b/arch/arm/boot/dts/omap3-cm-t3530.dts
index d145849..8dd14fc 100644
--- a/arch/arm/boot/dts/omap3-cm-t3530.dts
+++ b/arch/arm/boot/dts/omap3-cm-t3530.dts
@@ -46,3 +46,14 @@ 
 	bus-width = <4>;
 	cap-power-off-card;
 };
+
+&dss {
+	status = "ok";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <
+		&dss_dpi_pins_common
+		&dss_dpi_pins_cm_t35x
+	>;
+};
+
diff --git a/arch/arm/boot/dts/omap3-cm-t3730.dts b/arch/arm/boot/dts/omap3-cm-t3730.dts
index b3f9a50..46eadb2 100644
--- a/arch/arm/boot/dts/omap3-cm-t3730.dts
+++ b/arch/arm/boot/dts/omap3-cm-t3730.dts
@@ -31,6 +31,19 @@ 
 	};
 };
 
+&omap3_pmx_wkup {
+	dss_dpi_pins_cm_t3730: pinmux_dss_dpi_pins_cm_t3730 {
+		pinctrl-single,pins = <
+			OMAP3_WKUP_IOPAD(0x2a08, PIN_OUTPUT | MUX_MODE3)   /* sys_boot0.dss_data18 */
+			OMAP3_WKUP_IOPAD(0x2a0c, PIN_OUTPUT | MUX_MODE3)   /* sys_boot1.dss_data19 */
+			OMAP3_WKUP_IOPAD(0x2a10, PIN_OUTPUT | MUX_MODE3)   /* sys_boot3.dss_data20 */
+			OMAP3_WKUP_IOPAD(0x2a12, PIN_OUTPUT | MUX_MODE3)   /* sys_boot4.dss_data21 */
+			OMAP3_WKUP_IOPAD(0x2a14, PIN_OUTPUT | MUX_MODE3)   /* sys_boot5.dss_data22 */
+			OMAP3_WKUP_IOPAD(0x2a16, PIN_OUTPUT | MUX_MODE3)   /* sys_boot6.dss_data23 */
+		>;
+	};
+};
+
 &omap3_pmx_core {
 
 	mmc2_pins: pinmux_mmc2_pins {
@@ -61,3 +74,14 @@ 
 	bus-width = <4>;
 	cap-power-off-card;
 };
+
+&dss {
+	status = "ok";
+
+	pinctrl-names = "default";
+	pinctrl-0 = <
+		&dss_dpi_pins_common
+		&dss_dpi_pins_cm_t3730
+	>;
+};
+
diff --git a/arch/arm/boot/dts/omap3-cm-t3x.dtsi b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
index c671a22..b074673 100644
--- a/arch/arm/boot/dts/omap3-cm-t3x.dtsi
+++ b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
@@ -76,6 +76,45 @@ 
 			OMAP3_CORE1_IOPAD(0x21e2, PIN_OUTPUT | MUX_MODE4)	/* sys_clkout2.gpio_186 */
 		>;
 	};
+
+	dss_dpi_pins_common: pinmux_dss_dpi_pins_common {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x20d4, PIN_OUTPUT | MUX_MODE0)	/* dss_pclk.dss_pclk */
+			OMAP3_CORE1_IOPAD(0x20d6, PIN_OUTPUT | MUX_MODE0)	/* dss_hsync.dss_hsync */
+			OMAP3_CORE1_IOPAD(0x20d8, PIN_OUTPUT | MUX_MODE0)	/* dss_vsync.dss_vsync */
+			OMAP3_CORE1_IOPAD(0x20da, PIN_OUTPUT | MUX_MODE0)	/* dss_acbias.dss_acbias */
+
+			OMAP3_CORE1_IOPAD(0x20e8, PIN_OUTPUT | MUX_MODE0)	/* dss_data6.dss_data6 */
+			OMAP3_CORE1_IOPAD(0x20ea, PIN_OUTPUT | MUX_MODE0)	/* dss_data7.dss_data7 */
+			OMAP3_CORE1_IOPAD(0x20ec, PIN_OUTPUT | MUX_MODE0)	/* dss_data8.dss_data8 */
+			OMAP3_CORE1_IOPAD(0x20ee, PIN_OUTPUT | MUX_MODE0)	/* dss_data9.dss_data9 */
+			OMAP3_CORE1_IOPAD(0x20f0, PIN_OUTPUT | MUX_MODE0)	/* dss_data10.dss_data10 */
+			OMAP3_CORE1_IOPAD(0x20f2, PIN_OUTPUT | MUX_MODE0)	/* dss_data11.dss_data11 */
+			OMAP3_CORE1_IOPAD(0x20f4, PIN_OUTPUT | MUX_MODE0)	/* dss_data12.dss_data12 */
+			OMAP3_CORE1_IOPAD(0x20f6, PIN_OUTPUT | MUX_MODE0)	/* dss_data13.dss_data13 */
+			OMAP3_CORE1_IOPAD(0x20f8, PIN_OUTPUT | MUX_MODE0)	/* dss_data14.dss_data14 */
+			OMAP3_CORE1_IOPAD(0x20fa, PIN_OUTPUT | MUX_MODE0)	/* dss_data15.dss_data15 */
+			OMAP3_CORE1_IOPAD(0x20fc, PIN_OUTPUT | MUX_MODE0)	/* dss_data16.dss_data16 */
+			OMAP3_CORE1_IOPAD(0x20fe, PIN_OUTPUT | MUX_MODE0)	/* dss_data17.dss_data17 */
+			OMAP3_CORE1_IOPAD(0x2100, PIN_OUTPUT | MUX_MODE0)	/* dss_data18.dss_data18 */
+			OMAP3_CORE1_IOPAD(0x2102, PIN_OUTPUT | MUX_MODE0)	/* dss_data19.dss_data19 */
+			OMAP3_CORE1_IOPAD(0x2104, PIN_OUTPUT | MUX_MODE0)	/* dss_data20.dss_data20 */
+			OMAP3_CORE1_IOPAD(0x2106, PIN_OUTPUT | MUX_MODE0)	/* dss_data21.dss_data21 */
+			OMAP3_CORE1_IOPAD(0x2108, PIN_OUTPUT | MUX_MODE0)	/* dss_data22.dss_data22 */
+			OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE0)	/* dss_data23.dss_data23 */
+		>;
+	};
+
+	dss_dpi_pins_cm_t35x: pinmux_dss_dpi_pins_cm_t35x {
+		pinctrl-single,pins = <
+			OMAP3_CORE1_IOPAD(0x20dc, PIN_OUTPUT | MUX_MODE0)		/* dss_data0.dss_data0 */
+			OMAP3_CORE1_IOPAD(0x20de, PIN_OUTPUT | MUX_MODE0)		/* dss_data1.dss_data1 */
+			OMAP3_CORE1_IOPAD(0x20e0, PIN_OUTPUT | MUX_MODE0)		/* dss_data2.dss_data2 */
+			OMAP3_CORE1_IOPAD(0x20e2, PIN_OUTPUT | MUX_MODE0)		/* dss_data3.dss_data3 */
+			OMAP3_CORE1_IOPAD(0x20e4, PIN_OUTPUT | MUX_MODE0)		/* dss_data4.dss_data4 */
+			OMAP3_CORE1_IOPAD(0x20e6, PIN_OUTPUT | MUX_MODE0)		/* dss_data5.dss_data5 */
+		>;
+	};
 };
 
 &uart3 {
diff --git a/arch/arm/boot/dts/omap3-sb-t35.dtsi b/arch/arm/boot/dts/omap3-sb-t35.dtsi
index d59e3de..34704bb 100644
--- a/arch/arm/boot/dts/omap3-sb-t35.dtsi
+++ b/arch/arm/boot/dts/omap3-sb-t35.dtsi
@@ -2,6 +2,49 @@ 
  * Common support for CompuLab SB-T35 used on SBC-T3530, SBC-T3517 and SBC-T3730
  */
 
+/ {
+	tfp410: encoder@0 {
+		compatible = "ti,tfp410";
+
+		powerdown-gpios = <&gpio2 22 GPIO_ACTIVE_LOW>;  /* gpio_54 */
+
+		pinctrl-names = "default";
+		pinctrl-0 = <&tfp410_pins>;
+
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+
+			port@0 {
+				reg = <0>;
+
+				tfp410_in: endpoint@0 {
+					remote-endpoint = <&dpi_out>;
+				};
+			};
+
+			port@1 {
+				reg = <1>;
+
+				tfp410_out: endpoint@0 {
+					remote-endpoint = <&dvi_connector_in>;
+				};
+			};
+		};
+	};
+
+	dvi0: connector@0 {
+		compatible = "dvi-connector";
+		label = "dvi";
+
+		port {
+			dvi_connector_in: endpoint {
+				remote-endpoint = <&tfp410_out>;
+			};
+		};
+	};
+};
+
 &omap3_pmx_core {
 	smsc2_pins: pinmux_smsc2_pins {
 		pinctrl-single,pins = <
@@ -9,6 +52,12 @@ 
 			OMAP3_CORE1_IOPAD(0x20d2, PIN_INPUT_PULLUP | MUX_MODE4)	/* gpmc_wait3.gpio_65 */
 		>;
 	};
+
+        tfp410_pins: pinmux_tfp410_pins {
+                pinctrl-single,pins = <
+                        OMAP3_CORE1_IOPAD(0x20b4, PIN_OUTPUT | MUX_MODE4)	/* gpmc_ncs3.gpio_54 */
+                >;
+        };
 };
 
 &gpmc {
diff --git a/arch/arm/boot/dts/omap3-sbc-t3517.dts b/arch/arm/boot/dts/omap3-sbc-t3517.dts
index 42189b6..4ec5d86 100644
--- a/arch/arm/boot/dts/omap3-sbc-t3517.dts
+++ b/arch/arm/boot/dts/omap3-sbc-t3517.dts
@@ -9,6 +9,10 @@ 
 	model = "CompuLab SBC-T3517 with CM-T3517";
 	compatible = "compulab,omap3-sbc-t3517", "compulab,omap3-cm-t3517", "ti,am3517", "ti,omap3";
 
+	aliases {
+		display0 = &dvi0;
+	};
+
 	/* Only one GPMC smsc9220 on SBC-T3517, CM-T3517 uses am35x Ethernet */
 	vddvario: regulator-vddvario-sb-t35 {
 		compatible = "regulator-fixed";
@@ -54,3 +58,13 @@ 
 	wp-gpios =  <&gpio2 27 GPIO_ACTIVE_HIGH>; /* gpio_59  */
 	cd-gpios =  <&gpio5 16 GPIO_ACTIVE_HIGH>; /* gpio_144 */
 };
+
+&dss {
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&tfp410_in>;
+			data-lines = <24>;
+		};
+	};
+};
+
diff --git a/arch/arm/boot/dts/omap3-sbc-t3530.dts b/arch/arm/boot/dts/omap3-sbc-t3530.dts
index bbbeea6..8dfc1df 100644
--- a/arch/arm/boot/dts/omap3-sbc-t3530.dts
+++ b/arch/arm/boot/dts/omap3-sbc-t3530.dts
@@ -8,6 +8,10 @@ 
 / {
 	model = "CompuLab SBC-T3530 with CM-T3530";
 	compatible = "compulab,omap3-sbc-t3530", "compulab,omap3-cm-t3530", "ti,omap34xx", "ti,omap3";
+
+	aliases {
+		display0 = &dvi0;
+	};
 };
 
 &omap3_pmx_core {
@@ -34,3 +38,13 @@ 
 &mmc1 {
 	cd-gpios =  <&twl_gpio 0 GPIO_ACTIVE_HIGH>;
 };
+
+&dss {
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&tfp410_in>;
+			data-lines = <24>;
+		};
+	};
+};
+
diff --git a/arch/arm/boot/dts/omap3-sbc-t3730.dts b/arch/arm/boot/dts/omap3-sbc-t3730.dts
index 08e4a70..6b69864 100644
--- a/arch/arm/boot/dts/omap3-sbc-t3730.dts
+++ b/arch/arm/boot/dts/omap3-sbc-t3730.dts
@@ -8,6 +8,10 @@ 
 / {
 	model = "CompuLab SBC-T3730 with CM-T3730";
 	compatible = "compulab,omap3-sbc-t3730", "compulab,omap3-cm-t3730", "ti,omap36xx", "ti,omap3";
+
+	aliases {
+		display0 = &dvi0;
+	};
 };
 
 &omap3_pmx_core {
@@ -25,3 +29,13 @@ 
 	ranges = <5 0 0x2c000000 0x01000000>,
 		 <4 0 0x2d000000 0x01000000>;
 };
+
+&dss {
+	port {
+		dpi_out: endpoint {
+			remote-endpoint = <&tfp410_in>;
+			data-lines = <24>;
+		};
+	};
+};
+