MX95 on DT8MCustomBoard MIPI-DSI out

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

MX95 on DT8MCustomBoard MIPI-DSI out

Jump to solution
407 Views
wellu
Contributor III

Hi,

I have a MX95 on DT8MCustomBoard and custom LVDS connected in dual channel mode to LVDS connectors on board.

Display is working nicely and all the other peripherals. Now I want to get an external HDMI display connected and thought I would use MIPI-HDMI converter on DT8MCustomBoards's J11 (MIPI-CSI) connector.

Then I would just route video from in to midi_dsi and it would eventually be routed out of J11 connecter on onwards to the MIPI-HDMI bridge. Bridge is adv7535 based thus readily supported by the kernel.

However, I'm seeing following in kernel logs:

root@imx95-var-dart:~# dmesg|grep mipi
[    0.482259] platform 4ad30000.csi: Fixed dependency cycle(s) with /soc/bus@42000000/i2c@42530000/ov5640_mipi0@3c
[    2.426467] imx95-mipi-dsi 4acf0000.dsi: No valid input endpoint found
[    2.433017] imx95-mipi-dsi: probe of 4acf0000.dsi failed with error -22



so clearly there is an issue in display_pixel_link <-> mipi_dsi connection.

Has anyone here succesfully demonstrated MIPI-DSI on MX95 + DT8MCustomBoard v3.0 combo?

I'd like to see device tree samples as the ones provided in kernel tree are not directly meant for DT8MCustomBoard but to some other EVK. How should I map dpu ports to further in chain if they need customization, any fixed clocks to set etc.

So are there some pins to pull down, up or anything? As DSI is muxed with CSI then does CSI need explicit disabling or is it enough to enable mipi_dsi in device tree?

Thanks for any pointers and cheers from Finland.


Tags (5)
0 Kudos
Reply
1 Solution
255 Views
wellu
Contributor III

Ok, it is now evident (based on the kernel source code) that i.MX 95 SoC has two, and only two, independent output ports in its display processing unit. Dual channel LVDS needs both of these leaving MIPI path disconnected.

This means that dual channel LVDS + MIPI-HDMI is not possible on i.MX 95.


View solution in original post

0 Kudos
Reply
6 Replies
395 Views
JorgeCas
NXP TechSupport
NXP TechSupport
0 Kudos
Reply
393 Views
wellu
Contributor III

Hi, and thanks for the quick reply.

It seems that just enabling mipi_dsi in device tree leads to

[    2.426467] imx95-mipi-dsi 4acf0000.dsi: No valid input endpoint found
[    2.433017] imx95-mipi-dsi: probe of 4acf0000.dsi failed with error -22

 

so I was wondering is it possible to enable MIPI-DSI functionality and at the same time run LVDS in dual channel mode?

mipi_dsi inputs are connected exactly as in device tree samples.

What we have here is a custom LVDS panel that needs dual channel (lvds-0 and lvds-1) input and at the same time we want to have external display on MIPI-DSI. So LVDS panel would show desktop 1 and MIPI-DSI, via adv7535 converter, would show desktop 2.

Or is it so that MX95 is only capable of one channel LVDS if MIPI-DSI is used at the same time?

I've looked all the possible .dts samples in the kernel tree, read documentation and it is not clear to me is dual channel LVDS and MIPI-DSI possible at the same time.

 

0 Kudos
Reply
386 Views
JorgeCas
NXP TechSupport
NXP TechSupport

Hello,

Did you try to use only MIPI-DSI out?

It can handle up to 3 simultaneous displays:

  • 1x 350 MHz MIPI-DSI (4-lane, 2.5 Gbps/lane) supporting 4kp30 or 3840 x 1440p60.
  • Up to 1080p60 LVDS Tx (2x 4-lane or 1x 8-lane).
  • 16 kByte of SRAM, but it is available for other SoC usage when not using for 2D blitter purposes.

Best regards.

0 Kudos
Reply
380 Views
wellu
Contributor III

Hi,

an update. I've managed to get MIPI-DSI working so video is routed on MIDI-DSI bus, out from J11 connector on DT8MCustomBoard, over to ADV7535 bridge and in to external HDMI display.

However, I'm not able to enable internal LVDS display at the same time with MIPI-DSI. If I enable LVDS display, the ldb node in device tree, it seems to hijack video stream so that it displays on LVDS but not on external display. When this happens I get errors in kernel log stating that imx95-mipi-dsi could not get valid input.

I can get either internal LVDS enabled or external HDMI over MIPI-DSI but not both at the same time. This must be something with the device tree but the endpoints I'm using are the ones provided in kernel tree.

Device. tree I'm using is imx95 + adv7535 additions with mipi and hdmi nodes.

0 Kudos
Reply
256 Views
wellu
Contributor III

Ok, it is now evident (based on the kernel source code) that i.MX 95 SoC has two, and only two, independent output ports in its display processing unit. Dual channel LVDS needs both of these leaving MIPI path disconnected.

This means that dual channel LVDS + MIPI-HDMI is not possible on i.MX 95.


0 Kudos
Reply
160 Views
wellu
Contributor III

Based on our analysis of the kernel code there are exactly two output ports on i.MX 95 and if dual channel LVDS is used, in a mode where even and off pixel rows are routed to different channels, then LVDS reserves both of the ports and MIPI-DSI cannot possibly work.

However, datasheets state that i.MX 95 can handle up to three independent displays. What does this mean? Based on our tests we can run one single channel LVDS and MIPI-DSI which makes up two displays or we can run one dual channel LVDS only which kind of makes two displays.

So what is the configuration where i.MX 95 can have three independent displays? What ports and connectors should be used? Does dual channel LVDS count as two displays already?

0 Kudos
Reply