Problems with SN65DSI83 driver integration on i.MX8 Mini

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Problems with SN65DSI83 driver integration on i.MX8 Mini

776 Views
jclsn
Contributor IV

Hi,

I've been trying for some time to integrate the new mainline driver, but I can't get the device tree to work

 

 

/dts-v1/;

#include "imx8mm.dtsi"


/ {
	model = "Some board";
	compatible = "project,board", "fsl,imx8mm";

	chosen {
		bootargs = "console=ttymxc1,115200 earlycon=ec_imx6q,0x30890000,115200";
		stdout-path = &uart2;
	};

	
	pwm_backlight: 32e10000.mipi_dsi.0 {
		compatible = "pwm-backlight";
		pwms = <&pwm1 0 5000000>;
	};

	panel-lvds {
		compatible = "panel-lvds";
		backlight = <&pwm_backlight>;
		width-mm = <152>;
		height-mm = <91>;
		data-mapping ="jeida-24";

		panel-timing {                      
			clock-frequency = <25000000>;
			hactive = <800>;
			vactive = <480>;
			hback-porch = <14>;
			hfront-porch = <26>;
			vback-porch = <4>;
			vfront-porch = <8>;
			hsync-len = <12>;
			vsync-len = <3>;
			hsync-active = <0>;
			vsync-active = <0>;
			de-active = <1>;
			pixelclk-active = <1>;

		};
		
		port {
			bridge_to_panel: endpoint {
				remote-endpoint = <&panel_from_bridge>;
			};
		};
	};
};

&i2c2 {
	clock-frequency = <400000>;
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_i2c2>;
	status = "okay";

	dsi_lvds_bridge: sn65dsi83@2d {
		compatible = "ti,sn65dsi83";
		pinctrl-names = "default";
		pinctrl-0 = <&pinctrl_dsi_lvds_bridge>;
		reg = <0x2d>;
		ti,dsi-lanes = <4>;
		ti,lvds-format = <2>;
		ti,lvds-bpp = <24>;
		enable-gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>;
		status = "okay";

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

			port@0 {
				reg = <0>;

				bridge_from_dsi: endpoint {
					data-lanes = <1 2 3 4>;
					remote-endpoint = <&bridge_to_dsi>;
				};
			};

			port@2 {
				reg = <2>;

				panel_from_bridge: endpoint {
					remote-endpoint = <&bridge_to_panel>;
				};
			};
		};
	};
};

&mipi_dsi {
	sync-pol = <1>;
	pwr-delay = <10>;
	status = "okay";

	port@1 {
		bridge_to_dsi: endpoint {
			remote-endpoint = <&bridge_from_dsi>;
			attach-bridge;
		};
	};
};

 

 

Here is the boot log

 

 

[    1.645289] i2c i2c-0: IMX I2C adapter registered
[    1.651487] i2c 1-002d: Fixing up cyclic dependency with panel-lvds
[    1.657830] i2c 1-002d: Fixing up cyclic dependency with 32e10000.mipi_dsi
[    1.847748] input: ILI210x Touchscreen as /devices/platform/soc@0/30800000.bus/30a30000.i2c/i2c-1/1-0041/input/input0
[    1.859240] i2c i2c-1: IMX I2C adapter registered
[    1.865812] i2c i2c-2: IMX I2C adapter registered
[    1.872127] i2c i2c-3: IMX I2C adapter registered
[    1.878042] 30860000.serial: ttymxc0 at MMIO 0x30860000 (irq = 41, base_baud = 5000000) is a IMX
[    1.892803] imx-drm 32c00000.bus:display-subsystem: bound imx-lcdif-crtc.0 (ops lcdif_crtc_ops)
[    1.901714] imx_sec_dsim_drv 32e10000.mipi_dsi: version number is 0x1060200
[    1.908747] [drm:drm_bridge_attach] *ERROR* failed to attach bridge /soc@0/bus@32c00000/mipi_dsi@32e10000 to encoder DSI-34: -517
[    1.920430] imx_sec_dsim_drv 32e10000.mipi_dsi: Failed to attach bridge: 32e10000.mipi_dsi
[    1.928706] imx_sec_dsim_drv 32e10000.mipi_dsi: failed to bind sec dsim bridge: -517
[    1.941849] tcan4x5x spi1.0: no clock found
[    1.946058] tcan4x5x spi1.0: no CAN clock source defined
[    1.981092] tcan4x5x spi1.0: m_can device registered (irq=99, version=32)
[    1.987900] tcan4x5x spi1.0 can0: TCAN4X5X successfully initialized.
[    1.995349] fec 30be0000.ethernet: enable ext clock 
[    2.000746] pps pps0: new PPS source ptp0
[    2.014149] fec 30be0000.ethernet eth0: registered PHC device 0
[    2.029015] ci_hdrc ci_hdrc.1: EHCI Host Controller
[    2.033939] ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 1
[    2.054206] ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00
[    2.060774] hub 1-0:1.0: USB hub found
[    2.064558] hub 1-0:1.0: 1 port detected
[    2.071811] ------------[ cut here ]------------
[    2.076443] WARNING: CPU: 3 PID: 9 at drivers/reset/core.c:765 __reset_control_get_internal+0x68/0x160
[    2.085762] Modules linked in:
[    2.088821] CPU: 3 PID: 9 Comm: kworker/u8:0 Not tainted 5.15.77-5.15.77-2.1.0+g9fcb3e81d284 #1
[    2.097521] Hardware name: Eppendorf i.MX8MM VisioNize Touch Interface 2 DR4 (DT)
[    2.105006] Workqueue: events_unbound deferred_probe_work_func
[    2.110847] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    2.117810] pc : __reset_control_get_internal+0x68/0x160
[    2.123126] lr : __of_reset_control_get+0x16c/0x1d0
[    2.128007] sp : ffff800009e9b990
[    2.131321] x29: ffff800009e9b990 x28: ffff000055c0d5e0 x27: ffff00000530d438
[    2.138463] x26: 0000000000000001 x25: 0000000000000000 x24: 0000000000000001
[    2.145606] x23: 0000000000000000 x22: ffff00000452cf80 x21: 0000000000000005
[    2.152751] x20: ffff00000452cfa0 x19: ffff0000055aa500 x18: ffffffffffffffff
[    2.159894] x17: 000000040044ffff x16: 00500072b5503510 x15: ffff00000530d10a
[    2.167036] x14: ffffffffffffffff x13: 0000000000000018 x12: 0101010101010101
[    2.174182] x11: 0000000000000018 x10: 0101010101010101 x9 : 0000000000000000
[    2.181326] x8 : 7f7f7f7f7f7f7f7f x7 : 6c766f21ff726b6b x6 : 000000802370771f
[    2.188470] x5 : fffffbfffdc09120 x4 : 0000000000000000 x3 : 0000000000000001
[    2.195613] x2 : 0000000000000005 x1 : 0000000000000005 x0 : 0000000000000000

 

 

 

So it says failed to attach bridge. I have no idea what I am doing wrong.

Labels (1)
0 Kudos
3 Replies

754 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Send your patch in private message.

0 Kudos

668 Views
mikoli
Contributor I

This does not help others with the same issue, please do not post solutions in private messages

0 Kudos

658 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello @mikoli 

This is original patch