Hi all,
Reviving this old patch series, after a long time. This was paused
because the compatible for the Display SubSystem (DSS) had to be
changed, along with the driver.
The patch series adds DT nodes for Display SubSystem (DSS) and other
peripherals required to enable the HDMI audio and video on the AM625 SK,
AM62-LP SK, as well as the AM625 based Beagle-Play platforms. An HDMI
monitor can be connected to the boards for the audio/video outputs.
The series adding the compatible and basic driver support[0] is in the
drm-misc-next and linux-next queues and is expected to be in the
mainline by v6.6-rc1.
Patches 5 and 7 have been picked up from TI's linux tree[1] based off
linux-kernel v6.1.
Change Log:
V2 -> V3:
- Updated the compatible from "ti,am65x-dss" to "ti,am625-dss".
- Peripheral nodes like HDMI TX, HDMI connector are now added to
k3-am62x-sk-common.dtsi instead of k3-am625-sk.dts, in order to
support AM62-LP SK-EVM as well.
- Dropped the HDMI master clock node as it is not connected on the
EVM, and should not have been added in the first place.
- Re-worded and Re-ordered commits.
- Dropped Rahul Ravikumar's R-bs because of the changes.
- Added AM625 based Beagle-Play for HDMI support.
- Added HDMI audio support as well.
V1 -> V2:
- Removed repetitive data in dss_ports
V2: https://lore.kernel.org/all/[email protected]/
V1: https://lore.kernel.org/all/[email protected]/
[0]: https://lore.kernel.org/all/[email protected]/
[1]: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/log/?h=ti-linux-6.1.y-cicd
Aradhya Bhatia (6):
arm64: dts: ti: k3-am62x-sk-common: Update main-i2c1 frequency
arm64: dts: ti: k3-am62-main: Add node for Display SubSystem
arm64: dts: ti: k3-am62x-sk-common: Add DSS pinmux info
arm64: dts: ti: k3-am62x-sk-common: Add support for HDMI output
arm64: dts: ti: k3-am625-beagleplay: Add DSS pinmux info
arm64: defconfig: Enable ITE_IT66121 HDMI transmitter
Jai Luthra (1):
arm64: dts: ti: am62x-sk: Add overlay for HDMI audio
Nishanth Menon (1):
arm64: dts: ti: k3-am625-beagleplay: Add HDMI support
arch/arm64/boot/dts/ti/Makefile | 3 +
arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 23 +++
.../arm64/boot/dts/ti/k3-am625-beagleplay.dts | 182 ++++++++++++++++++
.../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 119 +++++++++++-
.../boot/dts/ti/k3-am62x-sk-hdmi-audio.dtso | 40 ++++
arch/arm64/configs/defconfig | 1 +
6 files changed, 367 insertions(+), 1 deletion(-)
create mode 100644 arch/arm64/boot/dts/ti/k3-am62x-sk-hdmi-audio.dtso
--
2.40.1
Add DT nodes for sil9022 HDMI transmitter (TX), and the HDMI connector
on the AM625 SK and AM62-LP SK platforms.
Additionally, connect the outputu of DSS (VP2) with input of the HDMI TX,
and the output of HDMI TX to the input of the HDMI connector.
Signed-off-by: Aradhya Bhatia <[email protected]>
---
.../arm64/boot/dts/ti/k3-am62x-sk-common.dtsi | 54 +++++++++++++++++++
1 file changed, 54 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
index d479c0c415a7..8fd80cf63d65 100644
--- a/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi
@@ -114,6 +114,17 @@ sound_master: simple-audio-card,codec {
clocks = <&tlv320_mclk>;
};
};
+
+ hdmi: connector {
+ compatible = "hdmi-connector";
+ label = "hdmi";
+ type = "a";
+ port {
+ hdmi_connector_in: endpoint {
+ remote-endpoint = <&sii9022_out>;
+ };
+ };
+ };
};
&main_pmx0 {
@@ -371,6 +382,38 @@ tlv320aic3106: audio-codec@1b {
IOVDD-supply = <&vcc_3v3_sys>;
DRVDD-supply = <&vcc_3v3_sys>;
};
+
+ sii9022: sii9022@3b {
+ compatible = "sil,sii9022";
+ reg = <0x3b>;
+
+ interrupt-parent = <&exp1>;
+ interrupts = <16 IRQ_TYPE_EDGE_FALLING>;
+
+ #sound-dai-cells = <0>;
+ sil,i2s-data-lanes = < 0 >;
+
+ 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>;
+ };
+ };
+ };
+ };
};
&sdhci0 {
@@ -473,3 +516,14 @@ &dss {
pinctrl-names = "default";
pinctrl-0 = <&main_dss0_pins_default &main_oldi0_pins_default>;
};
+
+&dss_ports {
+ /* VP2: DPI Output */
+ port@1 {
+ reg = <1>;
+
+ dpi1_out: endpoint {
+ remote-endpoint = <&sii9022_in>;
+ };
+ };
+};
--
2.40.1
Enable CONFIG_DRM_ITE_IT66121.
ILITEK ITE-IT66121 is an HDMI transmitter, which takes parallel video
signals (DPI) as input. It is being used on TI's AM625 SoC based
BeaglePlay platform[0].
[0]: https://beagleboard.org/play
Signed-off-by: Aradhya Bhatia <[email protected]>
---
arch/arm64/configs/defconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 6cbf6eb59378..7ad7c5b8bd91 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -823,6 +823,7 @@ CONFIG_DRM_PANEL_VISIONOX_VTDR6130=m
CONFIG_DRM_LONTIUM_LT8912B=m
CONFIG_DRM_LONTIUM_LT9611=m
CONFIG_DRM_LONTIUM_LT9611UXC=m
+CONFIG_DRM_ITE_IT66121=m
CONFIG_DRM_NWL_MIPI_DSI=m
CONFIG_DRM_PARADE_PS8640=m
CONFIG_DRM_SII902X=m
--
2.40.1