Patch for sii902x hdmi driver via IPU

Document created by Tony Zheng Employee on Feb 1, 2016Last modified by ebiz_ws_prod on Dec 13, 2017
Version 15Show Document
  • View in full screen mode

The default BSP release supports sii902x hdmi card via LCDIF in i.MX6 Solo, but doesn't support it via IPU display interface in i.MX6 Dual/Quad/Plus. The patch provides support for the Sii902x HDMI video driver for i.MX6 Dual/Quad/Plus.

Useful documents:

MCIMXHDMICARD: Schematic for sii902x hdmi card

MCIMX6Q-SMART DEVICE PLATFORM: Schematic for i.MX6 Quad Sabre SDP

Software version:

Linux 3.14.52_1.1.0-ga

Verified platform:

imx6q-sabresd

imx6qp-sabresd

Patch:

0001-video-mxc-sii902x-add-sii902x-hdmi-card-driver.patch

0002-arch-arm-boot-dts-add-sii902x-hdmi-card-devicetree-n.patch

Features:

  1. Support video mode setup via uboot command;
  2. Support video mode setup via device tree;
  3. Supprt HDMI hot-plug;
  4. Support many video modes and a dynamic switching between them;

 

Notes:

The default settings( don't add "video=" to bootcmd) are as follows:

----------------------------------------------------------------------------------------

------------ /sys/class/graphics/fb0
DISP4 BG - DI1
U:1024x768p-60
ldb
2-layer-fb-bg
------------ /sys/class/graphics/fb1
DISP4 FG
overlay
2-layer-fb-fg
------------ /sys/class/graphics/fb2
DISP3 BG - DI1
U:1920x1080p-60
hdmi
2-layer-fb-bg
------------ /sys/class/graphics/fb3
DISP3 FG
overlay
2-layer-fb-fg
------------ /sys/class/graphics/fb4
DISP3 BG
sii902x_hdmi
1-layer-fb
------------ /sys/class/graphics/fb5
DISP4 BG

---------------------------------------------------------------------------------------

If you want sii902x_hdmi to be fb0, you can add following arguments to bootcmd:

video=mxcfb0:dev=sii902x_hdmi,1920x1080M@60,if=RGB24 video=mxcfb1:off video=mxcfb2:off video=mxcfb2:off consoleblank=0

Risks:

Sometimes the sii902x will fail to read hdmi edid information, and the modelist of this framebuffer will be NULL. At this time, the driver will setup a default video mode which has been tuned  on imx6q-sabresd and imx6qp-sabresd. The default video mode is as follows:

/* 1080p @ 56 Hz */

60, 1920, 1080, 7692, 100, 40, 30, 3, 10, 2, 0, FB_VMODE_NONINTERLACED, 0

The user can modify this default setting for their case.

Specially, there are some risks to use 1080p@60 video mode for imx6qp-sabresd. The hdmi device will has no valid hdmi signal output in this case. For example,

/* 1080p @ 60 Hz */

60, 1920, 1080, 6734, 148, 88, 36, 4, 44, 4, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, 0

The user sholud set these values according to hareware parameters.

Original Attachment has been moved to: 0002-arch-arm-boot-dts-add-sii902x-hdmi-card-devicetree-n.patch.zip

Original Attachment has been moved to: 0001-video-mxc-sii902x-add-sii902x-hdmi-card-driver.patch.zip

Outcomes