[PATCH 4/4] arm64: dts: ti: k3-am625-sk: Add DSS ports, HDMI tx & peripherals

From: Aradhya Bhatia
Date: Wed Apr 27 2022 - 05:10:17 EST


Add DT nodes for sil9022 HDMI transmitter (tx), HDMI connector and the
HDMI fixed master clock on the am625-sk board.

Additionally, add and connect output port for DSS (vp2), input and output
ports for the sil9022 HDMI tx and the input port for the HDMI connector.

The sil9022 HDMI tx is connected on the i2c1 bus. The HDMI connector on
the board is of type "a". The clock frequency of the master clock that
supports the HDMI tx is 12.288 MHz.

The dpi output signals from the vp2 of DSS are fed into the sil9022 HDMI
transmitter. These signals are converted into HDMI signals which are
further passed on to the HDMI connector on the board, on which display
can be connected via appropriate HDMI cables.

Signed-off-by: Aradhya Bhatia <a-bhatia1@xxxxxx>
---
arch/arm64/boot/dts/ti/k3-am625-sk.dts | 63 ++++++++++++++++++++++++++
1 file changed, 63 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
index 96414c5dacf7..9567fa4a447b 100644
--- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
@@ -134,6 +134,23 @@ led-0 {
default-state = "off";
};
};
+
+ hdmi_mstrclk: hdmi-mstrclk {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <12288000>;
+ };
+
+ hdmi: connector {
+ compatible = "hdmi-connector";
+ label = "hdmi";
+ type = "a";
+ port {
+ hdmi_connector_in: endpoint {
+ remote-endpoint = <&sii9022_out>;
+ };
+ };
+ };
};

&main_pmx0 {
@@ -385,6 +402,38 @@ exp1: gpio@22 {
pinctrl-names = "default";
pinctrl-0 = <&main_gpio1_ioexp_intr_pins_default>;
};
+
+ sii9022: sii9022@3b {
+ compatible = "sil,sii9022";
+ reg = <0x3b>;
+
+ clocks = <&hdmi_mstrclk>;
+ clock-names = "mclk";
+
+ interrupt-parent = <&exp1>;
+ interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ sii9022_in: endpoint {
+ remote-endpoint = <&dpi1_out>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ sii9022_out: endpoint {
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+ };
+ };
+ };
};

&main_i2c2 {
@@ -450,6 +499,20 @@ &dss {
pinctrl-0 = <&main_dss0_pins_default>;
};

+&dss_ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ /* VP2: DPI Output */
+ port@1 {
+ reg = <1>;
+
+ dpi1_out: endpoint {
+ remote-endpoint = <&sii9022_in>;
+ };
+ };
+};
+
&mailbox0_cluster0 {
mbox_m4_0: mbox-m4-0 {
ti,mbox-rx = <0 0 0>;
--
2.36.0