Jan1
Posts: 42
Joined: Tue Nov 13, 2012 7:22 pm

MIPI DSI interface

Sat Jul 09, 2016 8:45 pm

Where can I foound specification for MIPI DSI interface?
Are there any code samples ( controller driver implementations)available for MIPI DSI?
Is there any way how to check if a particular LCD uses this MIPI DSI interface?
And e.g. how many data lanes are there in a particular LCD?
Thank you for your feedback

User avatar
rpdom
Posts: 16375
Joined: Sun May 06, 2012 5:17 am
Location: Chelmsford, Essex, UK

Re: MIPI DSI interface

Sun Jul 10, 2016 7:38 am

The DSI interface is proprietary. Although the connector is standard, the only display that is supported (currently) is the official raspberry pi touchscreen.

The software source is not available.

aBUGSworstnightmare
Posts: 1675
Joined: Tue Jun 30, 2015 1:35 pm

Re: MIPI DSI interface

Mon Jul 11, 2016 7:50 am

Have a look at the schematics to figure out no of data lanes (D0/D1+CK))
dsi.png
dsi.png (43.55 KiB) Viewed 18313 times
As already mentioned: GPU will take control of DSI interface --> no chance atm to use anything else than official display module on that connector.

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 8115
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: MIPI DSI interface

Mon Jul 11, 2016 9:12 am

Jan1 wrote:Where can I foound specification for MIPI DSI interface?
MIPI specs are written by the MIPI Alliance - http://mipi.org/specifications/display-interface. It is an industry standard (so not proprietary) but the spec is restricted - you have to be a member of the Alliance to get an official copy of the spec, but it's probably leaked somewhere.
What do you need the low level spec for? Generally you only need that if you are designing a SoC to drive DSI, or a screen to consume it. Those plugging together SoC and displays normally don't have to worry about the physical layer too much.
Jan1 wrote:Are there any code samples ( controller driver implementations)available for MIPI DSI?
The upstreamed OpenGL driver almost supports DSI displays but is still being debugged. http://anholt.livejournal.com/45862.html?nojs=1 and https://github.com/anholt/linux/commits/rpi-4.4.y-dsi
https://github.com/raspberrypi/linux/pull/1556 is pulling some support back into the normal Raspberry Pi kernel.
This is all very much on the cutting edge of the development, so expect issues. The OpenGL driver also currently has no support for hardware accelerated video encode/decode, or camera.
Jan1 wrote:Is there any way how to check if a particular LCD uses this MIPI DSI interface?
And e.g. how many data lanes are there in a particular LCD?
You check the datasheet for the screen - all the details will be in there, and the summary or pinout will tell you how many data lanes are used.
The standard Pi exposes 2 DSI data lanes. The Compute Module has 4 data lanes available on the DISP1 interface (DISP0 only has 2). Stay within those constraints.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Jan1
Posts: 42
Joined: Tue Nov 13, 2012 7:22 pm

Re: MIPI DSI interface

Tue Jul 12, 2016 5:12 pm

Thank you for replies.
I expected if a LCD is MIPI compatible( if it exposes MIPI DSI specification) any board that is also MIPI DSI compatible should work( of course if they have the same number of lanes( data lanes). In other words if any (main)board supports DSI, then there should be also a software available for this board that can " talk" to MIPI compatible LCD. Is it so or not?

jamesh
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 25442
Joined: Sat Jul 30, 2011 7:41 pm

Re: MIPI DSI interface

Tue Jul 12, 2016 5:43 pm

Jan1 wrote:Thank you for replies.
I expected if a LCD is MIPI compatible( if it exposes MIPI DSI specification) any board that is also MIPI DSI compatible should work( of course if they have the same number of lanes( data lanes). In other words if any (main)board supports DSI, then there should be also a software available for this board that can " talk" to MIPI compatible LCD. Is it so or not?
No, the spec simply defines the electrical connection AFAIUI. Each screen will need different setup parameters, those are the bits that need custom software on the GPU.
Principal Software Engineer at Raspberry Pi (Trading) Ltd.
Contrary to popular belief, humorous signatures are allowed. Here's an example...
“I own the world’s worst thesaurus. Not only is it awful, it’s awful."

6by9
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 8115
Joined: Wed Dec 04, 2013 11:27 am
Location: ZZ9 Plural Z Alpha, aka just outside Cambridge.

Re: MIPI DSI interface

Tue Jul 12, 2016 7:45 pm

Such wishful thinking :D
DSI is unidirectional - it is the physical layer and lowest logical layer for conveying pixel and framing data.
What resolution should it drive? What frame rate? What pixel timing? Any GPIOs to control the display? All of that has to be set up somewhere. Or maybe you're driving a chip such as a DSI to DPI or DisplayPort, and those need I2C configuration.
DSI is a very different beast to something like VGA, DVI, or HDMI.
Software Engineer at Raspberry Pi Trading. Views expressed are still personal views.
I'm not interested in doing contracts for bespoke functionality - please don't ask.

Return to “Interfacing (DSI, CSI, I2C, etc.)”