i.mx8m plus LVDS performance sluggish

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

i.mx8m plus LVDS performance sluggish

1,701 Views
dennis3
Contributor V

We have an existing product that we're experimenting with various form factors and displays.  We noticed a very big performance difference in Android when we moved to a bigger display.

First configuration:  720x1280 mipi dsi display on lcdif3 (similar to a phone form factor)  Performance is as expected.  Responsive UI, touch screen and graphics.

2nd configuration: 1920x1200 dual channel LVDS display on lcdif2 (similar to a tablet form factor).  The software is the same as the first configuration except a different DTS file for the display config.  In this configuration, the performance is pretty laggy.  Camera captures lag many frames.  The UI is very sluggish and jerky when dragging menus and navigating.

Our LVDS panel uses the spwg encoding and is full dual channel on all 8 data lines.  Is there reason to suspect the imx8 plus can't drive this large of a display on LVDS or should we be looking for other reasons the performance is not as expected?

Tags (1)
0 Kudos
6 Replies

1,698 Views
dennis3
Contributor V

Additional info, this may be related to the CTP driver.  We're seeing better performance with that disabled.

0 Kudos

1,682 Views
dennis3
Contributor V

Other factors seem to determine whether or not the system becomes sluggish.  For instance, if I plug in HDMI, it will become sluggish after a short time.  If we don't run any other software, the system will stay responsive for as long as we've tested.

This doesn't happen with the smaller 5" mipi display though.  In that case, we can use the system with all other features as designed indefinitely and it never becomes sluggish.  Any tips on why the system starts misbehaving with the larger LVDS display appreciated.  As is, the i.mx8 is unusable for our solution with a larger display.

0 Kudos

1,667 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @dennis3 

 

The max resolution of lvds is 1080p,the resolution of 1920x1200 may have effect.

 

Dual asynchronous channels (8 data, 2 clocks). This is intended for a single panel
with two interfaces, transferring across two channels (even pixel/odd pixel). This is
supported at up to 160MHz pixel clock, which is up to 80MHz LVDS clock (due to 2
pixels per LVDS clock). This supports resolutions above 1366x768p60, up to
1080p60.

 

 

0 Kudos

1,660 Views
dennis3
Contributor V

Thank you for the comment.  Here is our panel config.  Do you think it is out of spec?

 

panel-timing {
            clock-frequency = <150000000>;
            hactive = <1920>;
            vactive = <1200>;
            hback-porch = <6>;
            hfront-porch = <64>;
            vback-porch = <20>;
            vfront-porch = <19>;
            hsync-len = <10>;
            vsync-len = <4>;
            hsync-active = <0>;
            vsync-active = <0>;
            de-active = <1>;
        };

 

The max size is larger than 1080p but the frame rate/clock is slower than the suggested max.  The chip does indeed drive the display correctly, just that performance is not good sometimes.

0 Kudos

1,655 Views
Zhiming_Liu
NXP TechSupport
NXP TechSupport

So sorry for my error calculation.I will go to internal community to see if there is similar issue.

0 Kudos

1,649 Views
dennis3
Contributor V

I'm sorry, not seeing how you're getting 181Mhz.  The calculation you typed = 147.9 Mhz.  Are there other numbers required in the clock calculation that you skipped?  Not sure what I'm missing here.

Also, the data sheet for the panel with these numbers gives the clock as 150Mhz typical at 60fps.

0 Kudos