goodix,gt928触屏驱动移植,飞凌OKMX6Q/DL-C板子由板级文件到设备树移植

使用的是飞凌OKMX6Q/DL-C板子,和它对应的goodix,gt928模块。由3.0.35的板级文件移植到飞思卡尔官方IMX6Q的4.1.15内核的设备树使用,设备树关于显示部分也是参考天嵌E9_V3的板子的imx6qdl-sabresd.dtsi的设备树。

飞凌OKMX6Q/DL-C板子 触屏的IIC线与LVDS在一起的,如下如是飞凌板子的触屏的原理图:

下图是飞思卡尔官方的触屏原理图:

因为官方没有复位脚,而飞凌板子有复位脚,查看飞凌提供的屏板子触屏接口的原理图与实物对比:

 

这上面也显示有四个引脚,因此需要配置这四个引脚,参考天嵌E9_V3板子的设备树,设置如下

好了,用的是飞思卡尔官网的的内核里面的goodix.c驱动,编译后运行,IIC挂载成功,但是触屏没有任何反应,打开设备文件点击触屏也没有任何打印信息。但也的确实触屏已经挂载成功,

后来发现是因为官方板子没有唤醒脚,驱动里面也没有复位功能,但是,飞凌的有唤醒脚,在对板子IRQ的引脚拉低一小段时间后触屏就能正常使用,因此对比飞凌的触屏驱动与飞思卡尔的驱动,添加了唤醒的程序;

然后触屏就能够在内核启动后正常工作了,但是内核在启动过程中的打印信息灭有改变。点击触屏也有打印信息了。

然而通过触屏程序验证时,X,Y轴和屏幕的分辨大小是反着的,因此又来改驱动。在这两个地方反一下就可以了,但是通过坐标打印出来的位置XY轴的最大值依然是反着的,但已经能够像正常触屏一样使用了。

总结:也有通过下图计算的方法换算XY轴的分辨率,也能实现正常使用,但是卡顿十分明显,而且不能实现多点触发。主要是没考到要自己添加唤醒程序,以为官方驱动里面已经有了,所以在这里浪费了一些时间。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值