imx6 hdmi接口支持

时间:2022-06-30 07:20:20
/*************************************************************
* imx6 hdmi接口支持
* 新的板子需要使用到hdmi,今天就测试一下。
* 参考链接:
* I.MX6 lcd lvds hdmi bootargs:
* http://www.cnblogs.com/zengjfgit/p/5139546.html
* hdmi问题:
* https://community.freescale.com/thread/366072
*
* Tony, 2016-5-20, Shenzhen
**************************************************************/
1、按照参考链接更改uboot/include/configs/mx6dl_sabresd_android.h
#define CONFIG_INITRD_TAG
#define CONFIG_EXTRA_ENV_SETTINGS \
"netdev=eth0\0" \
"ethprime=FEC0\0" \
"uboot=u-boot.bin\0" \
"kernel=uImage\0" \
"nfsroot=/opt/eldk/arm\0" \
"bootargs_base=setenv bootargs console=ttymxc0,115200\0"\
"bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs "\
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0"\
"bootcmd_net=run bootargs_base bootargs_nfs; " \
"tftpboot ${loadaddr} ${kernel}; bootm\0" \
"bootargs_mmc=setenv bootargs ${bootargs} ip=none " \
"root=/dev/mmcblk0p1 rootwait\0" \
"bootcmd_mmc=run bootargs_base bootargs_mmc; " \
"mmc dev 2; " \
"mmc read ${loadaddr} 0x800 0x3000; bootm\0" \
"bootcmd=run bootcmd_mmc\0" \
"bootargs=console=ttymxc0,115200 init=/init video=mxcfb0:off video=mxcfb1:dev=hdmi,1920x1080M@60,if=RGB24,bpp=32 video=mxcfb2:off ldb=dul1 fbmem=10M,30M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale\0" \
"splashimage=0x30000000\0" \
"splashpos=m,m\0" \
"lvds_num=1\0"
#endif
2.
更改uboot参数之后,并没有生效.
原因是bootargs采用了默认的参数。
bootcmd = run bootcmd_mmc
bootcmd_mmc = run bootargs_base bootargs_mmc
在run bootargs_base 之后就不运行run bootargs_mmc
更改 "bootcmd_mmc=run bootargs_base bootargs_mmc; "
如下:
    "bootcmd_mmc=run bootargs_mmc; " qt版本的目前不能同时支持2个屏,只能支持一种屏。qt只能支持配置一个framebuffer,参考/etc/profile.
配置成功之后,kernel输出:
Uncompressing Linux... done, booting the kernel.
......
Kernel command line: console=ttymxc0, init=/init video=mxcfb0:off video=mxcfb1:dev=hdmi,1920x1080M@,if=RGB24,bpp= video=mxcfb2:off ldb=dul1 fbmem=10M,30M vmalloc=400M androidboot.console=ttymxc0 androidboot.hardware=freescale ip=none root=/dev/mmcblk0p1 rootwait
......

3.问题
hdmi其中之后, 在串口一直输出:
mxc_hdmi mxc_hdmi: same edid
mxc_hdmi mxc_hdmi: same edid
mxc_hdmi mxc_hdmi: same edid
mxc_hdmi mxc_hdmi: same edid
根据参考链接得知,HDMI的线没有插好。