Custom HDMI Resolution in Debian

I have one of the inexpensive 800x480 7" HDMI LCD panels I bought off
eBay, and I needed to setup a custom resolution to get it working at
the native panel resolution and avoid up- or down-scaling:

http://bb-lcnc.blogspot.com/2013/07/custom-hdmi-resolution.html

With Debian and xfce this proved to be pretty simple. You can put any
resolution you want on the kernel command line, add an "M", and the
kernel will calculate the cvt timings for you and set that resolution.
I used:

  kms_force_mode=video=HDMI-A-1:800x480M@60

in my uEnv.txt file, which should work with the RCN Debian images as
well. Note the "M" before the "@", which tells the kernel to use the
VESA Coordinated Video Timings formulas to calculate settings for an
unknown or custom mode. You can also pass flags to generate reduced
blanking and interlace, if you want. Details are in the kernel
documentation for modedb.txt:

https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/Documentation/fb/modedb.txt?id=v3.8.13

If you're running Angstrom, this won't affect anything but the boot
splash screen, since the custom version of Gnome seems to ignore
everything except what's in the EDID of your monitor (which isn't that
helpful when the monitor lies about it's resolution, and none of the
available EDID modes actually match the pixel resolution). It should
be possible to provide a custom EDID file to override one provided by
the monitor, but the default BeagleBone kernel was not compiled with
CONFIG_DRM_LOAD_EDID_FIRMWARE enabled. If you get ambitious and try
compiling a kernel with this setting enabled, let us all know what
happens.

I'm going to just carry on using Debian, which works for me as-is. :slight_smile:

- --
Charles Steinkuehler
charles@steinkuehler.net

Wow, that just made my life a lot easier. Props!

Charles,

Would you mind giving a brief description of how you got Debian to boot to xfce? I’ve installed the package and it still just boots to terminal.
Also, do you know if this would work with other Debian Wheezy desktops like LXDE?

Thanks,
Tommy

Charles,

Would you mind giving a brief description of how you got Debian to
boot to xfce? I've installed the package and it still just boots to
terminal.

aptitude install xfce4 xdm netsurf

...you probably didn't install the xdm display manager which is why
you're still booting to a terminal. The netsurf package is just a
tiny web browser (it seems almost pointless to have a GUI in today's
world w/o a browser!). :slight_smile: You can pick from several other display
managers if you want (GDM, KDM, LightDM, slim)...see the Debian wiki:

http://wiki.debian.org/Xfce

You can see the complete extra package list I install for the
MachineKit image (which now boots to Xfce by default) in the imaging
scripts on github:

Also, do you know if this would work with other Debian Wheezy
desktops like LXDE?

It _should_ work with LXDE, but I've only tried it with Xfce.

- --
Charles Steinkuehler
charles@steinkuehler.net

Great! thanks for the help! And I agree; chances are if you want a desktop then you want a browser.
I will have to try LXDE then as well.

Tommy

This doesn’t appear to be working. I think it may only work with your MachineKit image.
I downloaded the Debian Wheezy image from this page and installed xfce as you said. (aptitude install xfce4 xdm netsurf)

This does nothing after adding the line you suggest to the uEnv.txt file and rebooting.

Well *armhf.com* uses a different bootloader/uEnv.txt bootscript so i
doubt the modification will work on that (since i did write it for my
images) ..

if you need to install debian via windows system, use my debian image
over armhf.com's...
http://elinux.org/BeagleBoardDebian#eMMC:_BeagleBone_Black

Regards,

btw: the "MachineKit" guys use the same script i use to generate ^^
above. They just heavily modify a few packages & kernel that they
need for their project..

Regards,

As Robert mentioned, the armhf distribution is not the same as his
images, or my MachineKit image (which is essentially identical to
Robert's with a different kernel and a bunch of extra packages).

The main problem you're having is probably that uboot is setup
differently and you're not actually passing the video= setting to the
kernel (cat /proc/cmdline to check). You'll have to work out how to
pass kernel command line parameters using the armhf boot loader, then
it should work as expected. If it doesn't work and you verified the
argument is making it to the kernel and showing up in /proc/cmdline,
there could be a difference in the kernel you're running.

I'm not running the same kernel as Robert's images (I need the Xenomai
real-time patches applied), but I do have the same set of BeagleBone
specific patches applied.

- --
Charles Steinkuehler
charles@steinkuehler.net