Fragment of a discussion from Beagleboard talk:BeagleBoneBlack HDMI
These issues no longer exist in recent kernels. With kernel 4.14.51-bone16, all modes I've tried (1920x1080@30, 1324x768@60, 1280x1024@60, 1152x864@75, 1024x768@60, 800x600@60, 720x480@60) worked and included audio.
If no display is connected at boot, the creation of the legacy fbdev (/dev/fb0) seems to be deferred until a display is connected. The ALSA output exists regardless, and I can send audio to the output, which is silently discarded. Once I connect my tv, the kernel automatically performs mode selection, creates the legacy fbdev, and starts sending video *and* audio to my tv. The transition appears to be invisible to the ALSA application.