am437x-gp-evm-hdmi.dts 1.84 KB
/*
 * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
 */

/* AM437x GP EVM with HDMI output */

#include "am437x-gp-evm.dts"
#include <dt-bindings/sound/sii9022-audio.h>

/ {
	aliases {
		display0 = &hdmi;
	};

	hdmi: connector {
		compatible = "hdmi-connector";
		label = "hdmi";

		type = "b";

		port {
			hdmi_connector_in: endpoint {
				remote-endpoint = <&sii9022_out>;
			};
		};
	};

	sound@1 {
		compatible = "simple-audio-card";
		simple-audio-card,name = "HDMI";
		simple-audio-card,format = "i2s";
		simple-audio-card,bitclock-master = <&hdmi_dailink_master>;
		simple-audio-card,frame-master = <&hdmi_dailink_master>;
		hdmi_dailink_master: simple-audio-card,cpu {
			sound-dai = <&mcasp1>;
			system-clock-frequency = <24000000>;
			system-clock-direction = "out";
		};

		simple-audio-card,codec {
			sound-dai = <&sii9022>;
			system-clock-frequency = <12000000>;
		};
	};
};

&lcd_bl {
	status = "disabled";
};

&sound0 {
	status = "disabled";
};

&i2c1 {
	sii9022: sii9022@3b {
		#sound-dai-cells = <0>;
		compatible = "sil,sii9022";
		reg = <0x3b>;

		interrupt-parent = <&gpio3>;
		interrupts = <24 IRQ_TYPE_LEVEL_LOW>;

		i2s-fifo-routing = <
			(ENABLE_BIT|CONNECT_SD0)
			0
			0
			0
		>;

		ports {
			#address-cells = <1>;
			#size-cells = <0>;

			port@0 {
				reg = <0>;

				sii9022_in: endpoint {
					remote-endpoint = <&dpi_out>;
				};
			};

			port@1 {
				reg = <1>;

				sii9022_out: endpoint {
					remote-endpoint = <&hdmi_connector_in>;
				};
			};
		};
	};
};

&dpi_out {
	remote-endpoint = <&sii9022_in>;
	data-lines = <24>;
};

/* Override SelLCDorHDMI from am437x-gp-evm.dts to select HDMI */
&gpio5 {
	p8 {
		output-low;
	};
};