硬件改动LCD屏数据线为8,linux内核怎么修改?
本帖最后由 hbyiwen 于 2019-8-7 18:12 编辑板子是OKMX6X_C_V1.3,内核是linux-3.0.35(最新版本2018.11.28)
开发板是DISP0_DAT0~DISP0_DAT23一共24根数据线,而我们改底板后只DISP0_DAT0~DISP0_DAT7输出LCD视频数据,其它引脚做其它用途了,
看过drivers/video/mxc/mxc_lcdif.c 这个LCD屏驱动源码,uboot中设置环境变量bpp=8也改过没作用,
在内核中没找到修改LCD屏输出数据线个数的设置代码,求指导啊
更改6q对应的板级文件中的.default_bpp参数试一下 改了只是颜色有点变化,硬件接24根数据线和只用8根数据线与这个bpp似乎没关系啊,看了一堆参数都是分辨率,多少位颜色的,没找到跟硬件数据线个数相关的参数:L hbyiwen 发表于 2019-8-10 10:52
改了只是颜色有点变化,硬件接24根数据线和只用8根数据线与这个bpp似乎没关系啊,看了一堆参数都是分辨率, ...
你好,请问你硬件上用的是哪8根数据线?能方便截一下这块的原理图吗 我这边没法截图给你,上面已经说了哦,是DISP0_DAT0~DISP0_DAT7 共8根数据线,电路图上引脚就是这个名称,在源码board_mx6q_**.h中定义名是MX6Q_PAD_DISP0_DATA0...MX6Q_PAD_DISP0_DATA7,
我看了输出端接的adv7391芯片手册,需要Multiformat video input support :
4:2:2 YCrCb(SD,ED and HD) 或者4:4:4 RGB(SD) 的8位视频数据输入
我在board_mx6q_**.c中初始化fb0时,设置inte**ce_pix_fmt = **_YUV/RGB565,default_bpp=8/16都看不出效果,因为视频画面一直是花屏闪烁状态看不清有没有变化,用示波器测量DISP0_DAT8---DISP0_DAT23引脚却一直有视频数据信号输出,而且当设置YUV格式时,在drivers/video/mxc/mxc_ipu3fb.c中会出现找不到匹配的格式,查了一下代码发现目前imx6q的IPU几个选择格式的数组列表中没有YUV这一项,请问MX6Q的IPU已经不支持YUV格式了吗?
----------------怎么设置才能使IPU将视频数据只集中在DISP0_DAT0--DISP0_DAT7这8根线上输出呢? 求助啊--------------------------
(因为我的硬件设计DISP0_DAT8----DISP0_DAT23用于其它GPIO功能,当输出视频信号时导致继电器等外设高频率跳变很容易被弄坏了) 您好,6Q是支持YUV格式的,摄像头默认的就是YUV格式的 我在板级文件board_mx6q_**.c中将inte**ce_pix_fmt设置成YUV格式后,会在后面运行出错,原因是:
drivers/video/mxc/mxc_ipuv3_fb.c:111行mxcfb_pfmts数组中没有YUV这一项,
还有在板级文件board_mx6q_**.c中设置default_bpp=8也在mxc_ipuv3_fb.c:139行 bpp_to_pixfmt函数中出错(case 项没有8)
我尝试自己修改mxc_ipuv3_fb.c文件添加YUV和bpp=8这些项,但是也许自己添加修改的参数不对,启动后看不出有什么变化,DISP0_DAT0---DISP0_DAT23这些引脚上始终都有视频数据在输出,怎么改都不能使得视频信号只输出DISP0_DAT0---DISP0_DAT7 这8根线上?
肯定是需要修改mxc_ipuv3_fb.c文件的了,有没有对IPU模块熟悉的专家帮忙看看啊 这个驱动细看驱动8位选择? 是的,其实就是怎么把视频信号输出为8位
肯定不是简单的把gpio初始化改成只初始化8位就行的,已测试过,其它gpio不初始化就没有视频信号出来
页:
[1]