IMX6Q基于kernel3.0.35版本调试GT9xx触摸屏
1、开发环境
芯片:IMX6Q (NXP系列)
内核版本:linux3.0.35
Ubuntu版本:16.04
移植的触摸芯片:GT911
2、推荐指数
GT9xx的触摸型号驱动基本上现在网上的文章都比比皆是,在之前我也发表过关于GT9xx的相关文章 。原因有三点:
第一 :他的内核版本是3.0.35的,kernel源码中没有这个相关驱动。并且没有设备树的配置。
第二 :重新在高版本kernel上参照着移植下来 。因为是一个个函数接口对照着移植。(有些语句没有移植到位而导致后续驱动运行不正常)
第三 :由于Qt版本过低,只能用到QWS_MOUSE_PROTO=tslib:/dev/input/event0这个环境变量。所以上报的事件跟原来的驱动就不一样了。
3、开发过程
linux内核高版本都是在设备树DTB中配置好节点,然后驱动加载时device_id和设备树的compatible是否匹配得上。
而linux3.0.35是没有设备树,需要通过加载板级初始化文件board-mx6q_sabresd.c来初始化各个总线接口,串口,网口,GPIO等
/arch/arm/mach-mx6/board-mx6q_sabresd.c
//省略......