From ArmadeusWiki
Jump to: navigation, search

How to use the HDMI/DVI output of the APF27DevFull and APF51Dev development boards.

Driver installation/setup


  • HDMI/DVI output shares video signals with LCD. As by default LCD interface is 18bits wide and HDMI requires 24bits, screen will appear with bad colours. To correct that you have to modify the following files: buildroot/output/build/linux- and change line 205:
static struct ipuv3_fb_platform_data apf51dev_fb0_data = {
-        .interface_pix_fmt = IPU_PIX_FMT_RGB666,
+        .interface_pix_fmt = IPU_PIX_FMT_RGB24,
        .modes = apf51dev_modes,
        .num_modes = ARRAY_SIZE(apf51dev_modes),
        .display = 0,
  • then recompile Linux image and reflash it on your board:
$ make linux


  • Starting from armadeus-3.2 release or in recent GIT checkout, the needed driver is now installed by default. Informations are kept here as reference.



  • Load the module:
# modprobe ad9889
  • By default 640x480 resolution will be used to drive the HDMI/DVI monitor.


  • Start the utility:
  • By default LW700 LCD resolution (800x480) will be used to drive the HDMI/DVI monitor. If your monitor doesn't support it, then you can use tfp410ctrl to find the best suiting resolution: press 'e' in main menu. It will read and show you the EDID infos from your monitor and tell you which standard modes are supported. Then it's up to you to use fbset to change framebuffer characteristics.
  • Press 'Q' to exit tfp410ctrl
  • To change the resolution to 1024x768:
fbset -t 15303 32 32 02 21 64 4
fbset -g 1024 768 1024 768 32

Quick DVI test

Connect a HDMI<->DVI cable between the APFxxDev board and a PC monitor with a DVI input or use a HDMI<->HDMI cable if your display has this kind of refinement. The Linux console must appear on the monitor.