LS1028适配单八路LVDS屏幕

LS1028适配单八路LVDS屏幕

查看屏体手册

1、屏体手册参数
该屏幕的时钟频率范围为50Mhz-80Mhz;屏幕分辨为1024x768
在这里插入图片描述
2、数据格式

该屏幕是支持单六路和单八路两种模式,当SEL68为low时为单六路模式,当SEL68位High时为单八路模式;该lvds屏幕的数据格式是VESA模式的;
OK1028A-C芯片原生DP信号由LT7211转为LVDS信号,目前的固件配置是单port,8位,VESA格式。在这里插入图片描述

硬件改动

在这里插入图片描述
1028的背光引脚电平是1.8V的,而屏幕的pwm是3.3V的,电平不匹配,临时解决方案是硬件上将背光的pwm引脚直接上拉到3.3V,最优解决方案是需要做电平转换,将1.8V转换为3.3V。
在这里插入图片描述
在这里插入图片描述

软件修改

1、修改时序参数

时序参数需要修改:packages/linux/OK1028-linux-kernel/drivers/gpu/drm/bridge/cadence/cdns-dp-core.c
在这里插入图片描述
参数值的含义,可以参考 DRM_MODE 的宏定义,在头文件include/drm/drm_modes.h:
在这里插入图片描述
各参数的具体含义:

.hdisplay:1280         [horizontal display size ]
.hysnc_start(hss): 1328    [horizontal sync start
.hsync_end(hse):1360    [horizontal sync end]
.htotal(ht):1440          [horizontal total size]
.hskew(hsk):0            [horizontal skew]    
.vdisplay(vd):800          [ vertical display size]
.vsync_start(vss):803       [vertical sync start]
.vsync_end(vse):809       [vertical sync end]
.vtotal(vt):823            [vertical total size]
.vscan(vs):0              [vertical scan?!]
.flags(f)=

在这里插入图片描述
屏体手册参数
在这里插入图片描述
参考手册获取相应的时序参数

.name(nm): 1024x768
.clock(c):64995
.hdisplay(hd)1024
.hysnc_start(hss):1084
.hsync_end(hse):1184
.htotal(ht):1344
.hskew(hsk):0
.vdisplay(vd):768
.vsync_start(vss):778
.vsync_end(vse):787
.vtotal(vt):806

Pixel clock的实际计算方法:
Hsync_total x Vsync_total x vrefresh=1344x806x60=64995kHz
将如上信息填到驱动中,并注释掉原来屏幕的时序
在这里插入图片描述

2、修改时序参数

修改dts里的Mode
设备树路径: packages/linux/OK1028-linux-kernel/arch/arm64/boot/dts/freescale/OK1028A-C.dts
在这里插入图片描述

3、修改dtsi里面的DP时钟

dp时钟的计算方法:
在这里插入图片描述
fpll_phi=fpll_VCO/PLLDV[RFDHI]
DP像素时钟=fpll_VCO=fpll_phi * PLLDV[RFDHI]
fpll_VCO 需要在设备数中指定,系统启动后无法修改,位于 650MHz-1300MHz 之间。PLLDV[RFDHI] 的范围为 1-64,只需要保证 VCO 可以整除 lvds 的像素时钟,且位于 1-64 之间即可。
例如飞凌默认的屏幕时钟为 71100khz,这里指定的 vco-frequency=1066500000hz,PLLDV[RFDHI]=15
设备树路径:OK1028-linux-fs/packages/linux/OK1028-linux-kernel/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi
在这里插入图片描述
LVDS液晶屏像素时钟fpll_phi=64995khz,PLLDV[RFDHI]=15,fpll_VCO=fpll_phi x PLLDV[RFDHI] = 64995*15= 974925000hz。

在这里插入图片描述

4、修改启动参数

路径:OK1028-linux-fs/configs/board/ls1028ardb/manifest
在这里插入图片描述

5、全编译烧写验证

显示效果
在这里插入图片描述

报错

第一次修改验证,并没有正常显示,查看打印信息发现有报错 pxlclk doesn’t support 125644000 Hz hwdev 71800000 HZ
像素时钟修改不正确
在这里插入图片描述
第二次修改报错
屏体参数修改错误
在这里插入图片描述

补充知识

参考链接:https://www.cnblogs.com/biglucky/p/4142505.html

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值