Commit 5946b71e authored by Adam Ford's avatar Adam Ford Committed by Shawn Guo
Browse files

arm64: dts: imx8mp-beacon-kit: Enable DSI to HDMI Bridge



The baseboard of the Beacon i.MX8M Plus development kit has
an ADV7535 DSI to HDMI bridge capable of stereo sound.

Signed-off-by: default avatarAdam Ford <aford173@gmail.com>
Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
parent 4f776504
Loading
Loading
Loading
Loading
+92 −0
Original line number Diff line number Diff line
@@ -94,6 +94,17 @@ button-3 {
		};
	};

	bridge-connector {
		compatible = "hdmi-connector";
		type = "a";

		port {
			hdmi_con: endpoint {
				remote-endpoint = <&adv7535_out>;
			};
		};
	};

	leds {
		compatible = "gpio-leds";
		pinctrl-names = "default";
@@ -153,6 +164,21 @@ reg_usb1_host_vbus: regulator-usb1-vbus {
		enable-active-high;
	};

	sound-adv7535 {
		compatible = "simple-audio-card";
		simple-audio-card,name = "sound-adv7535";
		simple-audio-card,format = "i2s";

		simple-audio-card,cpu {
			sound-dai = <&sai5>;
			system-clock-direction-out;
		};

		simple-audio-card,codec {
			sound-dai = <&adv_bridge>;
		};
	};

	sound-dmic {
		compatible = "simple-audio-card";
		simple-audio-card,name = "sound-pdm";
@@ -274,6 +300,35 @@ pca6416_3: gpio@20 {
		#interrupt-cells = <2>;
	};

	adv_bridge: hdmi@3d {
		compatible = "adi,adv7535";
		reg = <0x3d>, <0x3c>, <0x3e>, <0x3f>;
		reg-names = "main", "cec", "edid", "packet";
		adi,dsi-lanes = <4>;
		#sound-dai-cells = <0>;

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

			port@0 {
				reg = <0>;

				adv7535_in: endpoint {
					remote-endpoint = <&dsi_out>;
				};
			};

			port@1 {
				reg = <1>;

				adv7535_out: endpoint {
					remote-endpoint = <&hdmi_con>;
				};
			};
		};
	};

	pcieclk: clock-generator@68 {
		compatible = "renesas,9fgv0241";
		reg = <0x68>;
@@ -398,6 +453,10 @@ hd3ss3220_out_ep: endpoint {
	};
};

&lcdif1 {
	status = "okay";
};

&micfil {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pdm>;
@@ -407,6 +466,21 @@ &micfil {
	status = "okay";
};

&mipi_dsi {
	samsung,esc-clock-frequency = <10000000>;
	status = "okay";

	ports {
		port@1 {
			reg = <1>;

			dsi_out: endpoint {
				remote-endpoint = <&adv7535_in>;
			};
		};
	};
};

&pcie {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pcie>;
@@ -433,6 +507,16 @@ &sai3 {
	status = "okay";
};

&sai5 {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_sai5>;
	assigned-clocks = <&clk IMX8MP_CLK_SAI5>;
	assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
	assigned-clock-rates = <12288000>;
	fsl,sai-mclk-direction-output;
	status = "okay";
};

&snvs_pwrkey {
	status = "okay";
};
@@ -612,6 +696,14 @@ MX8MP_IOMUXC_SAI3_MCLK__AUDIOMIX_SAI3_MCLK 0xd6
		>;
	};

	pinctrl_sai5: sai5grp {
		fsl,pins = <
			MX8MP_IOMUXC_SAI5_RXD3__AUDIOMIX_SAI5_TX_DATA00	0xd6
			MX8MP_IOMUXC_SAI5_RXD2__AUDIOMIX_SAI5_TX_BCLK	0xd6
			MX8MP_IOMUXC_SAI5_RXD1__AUDIOMIX_SAI5_TX_SYNC	0xd6
		>;
	};

	pinctrl_tpm: tpmgrp {
		fsl,pins = <
			MX8MP_IOMUXC_SAI1_RXFS__GPIO4_IO00	0x19 /* Reset */