Jump to content

LVDS (LCD) on mainline kernel A20 (olimex-micro)


jsaak

Recommended Posts

I am really confused about how to connect an LVDS monitor to the board.

We used 3.x legacy kernel and used a .fex file for this in the past.

But it is time to move to mainline, and it is confusing me.

 

Since LVDS is not plug and play, we need to tell the parameters of the screen somehow. That is clear.

I found several ways of pushing parameters to the system:

1. Compile into kernel

2. Compile into U-boot

3. Device Tree

4. Device Tree Overlay

5. Kernel command line

 

According to these articles i have to compile them into U-boot:

https://forum.armbian.com/topic/1905-enabling-lcd-in-u-boot-kernel-472/

http://linux-sunxi.org/LCD

 

But it seems to me that it is a step backwards compared to .fex files.

(and I have not figured out how to recompile U-boot in armbian yet)

 

I found a commit, which states that there is some support for LVDS on A20s:

https://github.com/torvalds/linux/commit/564c4815074291c40a584b1b05da3732beac990c#diff-ea438ea3ad237808b1c56c9c6ca647fe

This suggest that i could somehow use Device Tree.

Which i guess would be more future proof, but i do not know how to tell the exact parameters of the screen.

 

Also i need to set the brightness, and turn off the monitor sometimes, how do I do that nowadays?

 

Link to comment
Share on other sites

I'm also interested in information about getting the 5" LVDS display running.

 

The documentation says it's only running on the legacy kernel - but legacy today is kernel 5.4.82, while the current kernel is 5.9.something. There is no /boot/script.bin that can be modified anymore.

The Banana Pi wiki page links to a separate LCD page that talks about some uboot and kernel patches from PaulK that are from 2018, 2 years ago.

 

So what is the current status?

Link to comment
Share on other sites

I was going through docs somewhat recently (just fixing links) and came across that section (the one @cweiske linked to in our docs).

 

It struck me as possibly quite out of date (as many things have moved along in the meantime) however I do not own this hardware and have never tried to get it working, myself.

 

Therefore, if you guys tinker with this, please keep notes and post them back here to help everyone else.  Even if you make any partial progress in the meantime, post your results and others can possibly come along and help.

 

If and when someone is able to get this working, a PR updating the docs would be best, however even if you leave some halfway decent notes here I should be able to clean those up and get them into the docs at some point, as I have all the repos and everything set up already and I know how to use git.

 

Sorry I don't know anything more specific to help you with the actual problem at hand.  Best of luck!

Link to comment
Share on other sites

Seems to be possible
https://lore.kernel.org/patchwork/cover/866196/
[v5,00/12] drm/sun4i: Add A83t LVDS support

https://patchwork.kernel.org/project/linux-arm-kernel/list/?submitter=190447&archive=both&state=*
Andrey Lebedev

check a20, a83t and tbs-a711 device trees

drm/sun4i: lvds: Invert the LVDS polarity
3bc46a083fa9f475dd2e0ab8717d9839b070b8d9

Link to comment
Share on other sites

Hello,

I am trying it but without success. I use this tutorial:

https://forum.armbian.com/topic/7233-bananapi-pro-7-touchlcd-with-debian-buster-and-mainline-kernel-5xxxx/

LCD is switched on during U-Boot but when kernel is starting I have only red screen (without signal) :-/ but it's half success.

There is info how to add drivers to kernel for LVDS but still cannot compile. Compile is stopped with error:

https://forum.armbian.com/topic/14560-sun4i-drm-and-lcd-panels/

Problem is, that I want to add other LCD without touch driver. And I am not sure where I have to add "panel: panel {" to. I am not expert, so if you have success or any tips, please share it

 

Thank you

Link to comment
Share on other sites

I found it:

 

You have to use device tree overlays for that:

https://github.com/OLIMEX/olinuxino-overlays/tree/master/sun7i-a20/A20-OLinuXino-Micro

 

Also there are some helper scripts here:

https://github.com/OLIMEX/olinuxino-overlays/tree/master/scripts

 

And this is how you turn backlight on and off:

https://www.olimex.com/forum/index.php?topic=8572.msg32849#msg32849

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines