On 5/6/21 6:03 PM, Frieder Schrempf wrote:
On 06.05.21 17:46, Marek Vasut wrote:
On 5/6/21 5:38 PM, Frieder Schrempf wrote:
[...]
Works on i.MX8MM with SN65DSI84 and a single link LVDS display (1024x600) and 
from my perspective everything else also looks good. Thanks for your work!

I have two remarks:

1. In my test I couldn't get it to work with four DSI lanes enabled (only with 
two) but I'm quite sure that the DSIM driver is to blame as everything on the 
bridge level looks good (also setting the DSI EQ register didn't help as you 
suggested, Marek).

I suspect there is indeed something with the DSIM going on, I'll keep you 
posted if I find something out.

2. When I set MEDIA_BUS_FMT_RGB888_1X7X4_SPWG in the panel driver I get 
distorted colors. I need to use MEDIA_BUS_FMT_RGB888_1X24 to make it work, but 
this is not valid for LVDS. Again I don't think this driver is to blame as I 
can't see where it does anything wrong, but my experience here is very limited 
so I still want to mention it.

Hmm, in that conversion supposed to happen in this bridge driver or should 
MXSFB handle the SPWG pixel format ? Or should the DSIM bridge do something 
about that ?

As far as I understand it the conversion is already done by the DSI84 without 
any extra configuration necessary. The only thing that needs to be done is 
selecting the LVDS output format via CHx_24BPP_MODE and CHx_24BPP_FORMAT1 which 
the driver currently hardcodes to 24bpp aka MEDIA_BUS_FMT_RGB888_1X7X4_SPWG. I 
think the DSI input format is always 24bpp aka MEDIA_BUS_FMT_RGB888_1X24.

The DSI is MEDIA_BUS_FMT_RGB888_1X24, yes.

So maybe this bridge driver has to somehow deal with MEDIA_BUS_FMT_RGB888_1X7X4_SPWG ? Except I haven't seen such a thing implemented in other bridge drivers, so input would be welcome on this.

So I wonder where the format actually is evaluated. Could it be that it is 
passed down to the LCDIF and changes its output format which causes the data 
passed by DSIM to the DSI84 to already be in the SPWG format? If that's the 
case we maybe need a way to specify MEDIA_BUS_FMT_RGB888_1X24 as input bus 
format for the DSI84 so it doesn't pass on the panel's format? Only a wild 
guess, no idea if it really works like that.

I _think_ the bridge must somehow handle the MEDIA_BUS_FMT_RGB888_1X7X4_SPWG <-> MEDIA_BUS_FMT_RGB888_1X24 conversion.

Reply via email to