0

I am running a 5.10 mainline kernel (built by Yocto Dunfell) along with U-Boot 2021.07 on an i.MX6. I believe I have the HDMI working; if I specify an EDID binary file on the boot command (add drm.edid_firmware=1024x600.bin to CONFIG_CMDLINE), the framebuffer comes up at the right resolution and I can write into /dev/fb0 and see the display output change. We need to be able to support multiple displays though (we have 2 7" 1024x600 HDMI displays, a 10" 1280x800 HDMI and a 10" 1024x600 LVDS display that all need to be supported), so hardcoding the EDID data is not a long term solution.

What I am seeing though is that the system always seemingly comes up at 1024x768, and the other resolutions aren't noted in the modes file in the sysFS. I can dump the EDID data (I dump it using i2cdump 1 0x50) on all the displays and it appears to be correct (they all have the correct EDID header and stuff like that). The displays all come up at the proper resolution if I plug it into a Windows PC, so I don't have any reason to suspect the EDID data is garbage. I can post those dumps if needed.

I have tried adding mxcfb0:dev=hdmi to my U-Boot boot args (which show up if I cat /proc/cmdline) but that didn't appear to do anything.

I am checking the resolution using fbset -s

Eskimoalva
  • 449
  • 8
  • 20

0 Answers0