The Lontium LT8912 MIPI-to-HDMI bridge converts the i.MX8M Nano MIPI-DSI signal to one suitable for HDMI displays.

To use this bridge, set the S1.4 micro-switch to OFF

Kernel configuration

You can manage the LT8912 support through the following kernel configuration option:

  • Lontium LT8912 MIPI-DSI to LVDS and HDMI/MHL bridge (CONFIG_DRM_LONTIUM_LT8912)

This option is enabled as built-in on the default ConnectCore 8M Nano kernel configuration file.

Kernel driver

The driver for the LT8912 bridge is located at:

File Description

drivers/gpu/drm/bridge/lt8912.c

LT8912 MIPI-to-HDMI bridge driver

Device tree bindings and customization

The LT8912 bridge is documented at Documentation/devicetree/bindings/display/bridge/lontium,lt8912.txt. The LT8912 bridge is defined in the ConnectCore 8M Nano Development Kit device tree file.

Definition of the LT8912

ConnectCore 8M Nano Development Kit device tree
&i2c3 {
	clock-frequency = <100000>;
	pinctrl-names = "default", "gpio";
	pinctrl-0 = <&pinctrl_i2c3>;
	pinctrl-1 = <&pinctrl_i2c3_gpio>;
	scl-gpios = <&gpio5 18 GPIO_ACTIVE_HIGH>;
	sda-gpios = <&gpio5 19 GPIO_ACTIVE_HIGH>;
	status = "okay";

...

	lt_bridge: lt8912@48 {
		compatible = "lontium,lt8912";
		reg = <0x48>;
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_lt8912>;
		digi,dsi-reset = <&gpio3 7 GPIO_ACTIVE_LOW>;
		hpd-gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>;
		digi,dsi-lanes = <4>;
		status = "okay";

		port {
			lt8912_1_in: endpoint {
				/* add lanes */
				remote-endpoint = <&mipi_dsi_hdmi_out>;
			};
		};

	};
};

...

&mipi_dsi {
	status = "okay";

	port@1 {
		mipi_dsi_hdmi_out: endpoint {
			remote-endpoint = <&lt8912_1_in>;
		};
	};

...

};

IOMUX configuration

The following IOMUX entry configures the associated reset and hotplug-detection GPIO pins.

ConnectCore 8M Nano Development Kit device tree
	pinctrl_lt8912: lt8912grp {
		fsl,pins = <
			/* Reset */
			MX8MN_IOMUXC_NAND_DATA01_GPIO3_IO7	0x19
			/* Interrupt */
			MX8MN_IOMUXC_NAND_DATA03_GPIO3_IO9	0x19
		>;
	};