In 2015 I've been using a Sunfounder HDMI display for months. Everything went flawless.
Then I left that Beagleboard XM somewhere collecting dust.
A few days ago I switched it on again and upgraded everything - arrrgh, didn't keep a backup.
Sometimes the HDMI display does not get recognized. In the journal the only hint about it is this line:
$this->bbcode_second_pass_code('', '[drm] Cannot find any crtc or sizes - going 1024x768')
So far tried four different Beagleboard XM (three "rev.C" and one "rev.B"), a different HDMI cable, a different HDMI display - the problem persists.
I even added a check: if dmesg contains "any crtc or sizes" then reboot immediately.
Then I found a cleaner trick that doesn't require a reboot:
1. move the omapdrm directory from the /lib/modules tree to /root
2. during boot, execute as root this script:
$this->bbcode_second_pass_code('', '#!/bin/sh
insmod omapdrm/dss/omapdss.ko.gz
insmod omapdrm/omapdrm.ko.gz
insmod omapdrm/displays/encoder-tfp410.ko.gz
insmod omapdrm/displays/connector-dvi.ko.gz
')
I guess the problem is the HDMI stuff gets initialized quite too early in the Linux kernel.
I don't know if it's a new OMAP kernel bug introduced with the 4.7 series, or something in the 7" Sunfounder HDMI display goes wrong from time to time (less probable, since UBoot always correctly initializes it at boot).
Currently I get my software displaying its logo on the screen in 23 seconds from turning on the XM, that is, about 3 to 5 seconds more than the a few months ago. Arrgh.