2026-03-22 4:05 AM - edited 2026-03-22 4:06 AM
I'm in a bit of a pickle. I got a MIPI DSI screen with 1200x1920 resolution. It turns out for SMT32MP25x max vertical supported resolution is 1536. But datasheet says this.
Some over-target non-guaranteed use cases are possible, but with specific constraints:
• Drive simultaneously three panels, using the three interfaces (parallel, LVDS, DSI), with
a same content.
• Drive simultaneously two parallel LVDS panels, using each one link, with a reduced
resolution and a same content.
• Drive a 4 k panel via the DSI, with a limited features and performances: one layer,
no resize, no rotation, 30 fps, and non-standardized blanking sizes.
How do i specify those params in dts or/and linux panel driver?
I tried setting 30Hz on panel, but that did not help - linux drm fails with "vblank wait timed out"
This fails - 1200x1920@30Hz
But this works 1920x1200@58.63Hz ( works as in does not throw kernel error - display obviously does not work as it expects different resolution )
Solved! Go to Solution.
2026-03-24 7:03 AM - edited 2026-03-24 7:07 AM
problem fixed by reducing v front porch from 144 to 44 ( did not tried other values )
weird but sum of vtotal is now below 2048 - maybe thats whats caused vblank timeout to happen before
2026-03-22 9:02 AM
Are you sure that register vtotal can write 1920 + 144 + 8 + 32 = >2048 value ?
I mean only htotal is in range for this hw.
2026-03-22 1:34 PM
registers for vsync/hsync are 12bit wide so it should be enough. also documentation hints that 4k resolution is supported in special case which is more than i need
2026-03-24 7:03 AM - edited 2026-03-24 7:07 AM
problem fixed by reducing v front porch from 144 to 44 ( did not tried other values )
weird but sum of vtotal is now below 2048 - maybe thats whats caused vblank timeout to happen before