在入手全志T113之后,第一时间移植好了之前6ull平台的rootfs。但是在测试QT的过程中发现屏幕最右侧有一部分显示不正常,经过初步推测应该是RGB行场同步时序有问题。本以为在设备树里面稍作修改之后就能OK,但是居然前前后后一共花了至少三个星期的时间。 这里就不给分析经过了,因为是真的真的太漫长了,搞得我头都大了。真的是要吐槽一下全志的代码: 1.函数名字真的看得头疼 2.代码杂乱无章,大量使用全局变量,让分析各种没头绪。 然后在这里直接给出最终分析的结果: 1.设备树里面timing,除了width、height、lcd_x和lcd_y之外的参数全没有用上(一开始不停的源码里面找这些参数在什么地方配置的,最后发现特么的根本就没有地方使用过这些参数) 2.width和height主要是用来计算dpi使用的,我这里写的280最终计算出来的dpi大概是97左右,windows标准的是96,反正相差无几我也没有细调了,lcd_x和lcd_y在原来的代码里主要是用来计算内核里面有一张图片的缩放使用的。 3.lcd timing寄存器里面的值是在uboot里面设置好之后在kernel里面直接拿来用的。 4.uboot里面的timing计算方式有问题,应该是百问没有仔细阅读全志文档的原因造成的,这也是使得屏幕显示向左平移了几十个像素的原因 5.我忘记我要说什么了… 接下来就说怎么处理吧: 1.首先按照全志的文档把设备树里面的timing改了 2.打开 drivers/video/fbdev/sunxi/disp2/disp/de/disp_lcd.c 然后找到 s32 disp_init_lcd(struct disp_bsp_init_para* para) 函数,在前面加上一段代码
然后在 s32 disp_init_lcd(struct disp_bsp_init_para* para) 函数的 disp_lcd_init(lcd, lcd->disp); 后面加上
3.最后编译烧写进去之后重启就搞定了… 4.uboot我就懒得修改了,凑合用吧 |
只有小组成员才能发言,加入小组>>
【实测】用全志A733平板搭建一个端侧Deepseek算力平台
752 浏览 0 评论
1492 浏览 0 评论
955 浏览 0 评论
1093 浏览 0 评论
全志T113双核异构处理器的使用基于Tina Linux5.0——RTOS系统定制开发
1815 浏览 0 评论
2974浏览 1评论
Yuzuki Lizard 全志V851S开发板 –移植 QT5.12.9教程
16608浏览 1评论
关于全志T113开发板接7寸LCD屏幕显示异常问题的解决方案
1285浏览 1评论
泰酷辣!基于全志R818的开源超迷你安卓手持终端CyberPad,芒果派惊喜之作
3448浏览 1评论
1598浏览 1评论
电子发烧友网
电子发烧友开云(中国)官方