1. Description 1) Support HDMI interlaced display mode, the followed format had been verified. CEA format 5: 1920x1080i @60Hz CEA format 6&7: 720(1440)x480i @60Hz CEA format 20: 1920x1080i @50Hz CEA format 21&22: 720(1440)x576i @50Hz 2) Support LCD interface for interlaced display mode, 1920x1080i @50Hz(CEA format 20) had been verified. 2. File List -- 0001-IPUv3-support-interlaced-display-mode.patch Patch to support interlaced display output for iMX6 ipuv3. -- 0002-iMX6-HDMI-support-interlaced-display-mode.patch Patch to support interlaced display mode for iMX6 HDMI driver. -- 0003-iMX6-LCD-interface-supports-1920x1080i50-mode.patch Patch to support interlaced display mode for iMX6 LCD interface driver. -- readme.txt this file, please refer to it before use the patches 3. Requirement - iMX6 SabreSD board. - L3.0.35_4.1.0_GA_iMX6DQ kernel. 4. How to use -- Copy the patch files to kernel folder. $ cd ~/ltib/rpm/BUILD/linux-3.0.35/ $ git apply ./0001-IPUv3-support-interlaced-display-mode.patch $ git apply ./0002-iMX6-HDMI-support-interlaced-display-mode.patch $ git apply ./0003-iMX6-LCD-interface-supports-1920x1080i50-mode.patch -- Build the new kernel image: $ cd ~/ltib/rpm/BUILD/linux-3.0.35 $ export CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi- $ export ARCH=arm $ make imx6_defconfig $ make uImage -- Uboot parameters for video mode Output 1080i50 display mode on HDMI: "video=mxcfb0:dev=hdmi,1920x1080Mi@25,if=RGB24,bpp=32" Output 1080i60 display mode on HDMI: "video=mxcfb0:dev=hdmi,1920x1080Mi@30,if=RGB24,bpp=32" Output 576i50 display mode on HDMI: "video=mxcfb0:dev=hdmi,1440x576Mi@25,if=RGB24,bpp=32" Output 480i60 display mode on HDMI: "video=mxcfb0:dev=hdmi,1440x480Mi@30,if=RGB24,bpp=32" Output 1080i50 display mode on LCD interface: "video=mxcfb0:dev=lcd,LCD-1080I50,if=RGB565,bpp=32" -- Switch HDMI interlaced mode $ echo S:1920x1080i-50 > /sys/class/graphics/fb0/mode $ echo S:1920x1080i-60 > /sys/class/graphics/fb0/mode $ echo S:1440x480i-50 > /sys/class/graphics/fb0/mode $ echo S:1440x576i-60 > /sys/class/graphics/fb0/mode 5. Know issue 1) When the interlaced display and another display work on same IPU, blank and unblank the interlaced display will get the followed IPU warning, but the display still works due to IPU can revover from the error. imx-ipuv3 imx-ipuv3.0: IPU Warning - IPU_INT_STAT_5 = 0x00800000 imx-ipuv3 imx-ipuv3.0: IPU Warning - IPU_INT_STAT_10 = 0x00080000 2015-05-13 update: Replace the fourth patch to make interlace display mode follow CEA-861-specification The patch "0004-IPU-fine-tuning-the-interlace-display-timing-for-CEA.patch" was fine tuned for CEA-861-D specification on interlaced mode display. Please use this patch to replace the old 0004 patch. 2016-05-20 Update: For 3.0.35 BSP, add patch 0005-IPU-update-interlaced-video-mode-parameters-to-align.patch Align the interlaced video mode parameters to progressive mode. 0006-IPU-update-IDMAC-setting-for-interlaced-display-mode.patch Udate the IDMAC setting for interlaced display mode, output odd field data from memory first, it aligns with IPU DI timing, odd field first. For 3.14.52 BSP, created the new patch L3.14.52_1.1.0_GA_HDMI_Interlaced_Mode_Patch_2016_05_20.zip.
查看全文