Change Real Screen Resolution


I'm trying to use a 5.7" LCD screen with Beaglebone Black. I connected the
pins and it's working but there is a problem. LCD's resolution is 640x480
and doesn't have an EEPROM. So Beaglebone is setting itself to its defualt
resolution, which is 1280x720. I'm trying to change the resolution with:

am display-size 640x480

But it doesn't realy change the resolution. It just configure the
resolution to look like a 640x480 in a 1280x720 screen. When I look at
dumpsys with:

dumpsys window

it gives me:


Display: mDisplayId=0

*init=1280x720 160dpi* base=640x480 160dpi cur=640x480 .......

I think I need to change that init value. I think that value is being set
by communicating with LCD's EEPROM. Because when I connect a LCD3 Cape
dumpsys window gives init=320x240. Or if LCD doesn't have an EEPROM
Beaglebone set itself to its default resolution. I need to change that
default resolution. Is there a adb or shell command I can use? Or should I
change something in kernel?

That depends on which kernel you are using. If you have the 3.2 android kernel from the TI Android DevKit, you need to tinker with the kernel sources. With the community 3.8 kernel you could get by with passing a kernel parameter.

Do go through the beagleboard and rowboat forums. You would get your answers there.


Thank you for your answer Vishveshwar. I’m using 3.2 Android kernel from TI DevKit. I’ll try Rowboat Forums.