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

本文主要是介绍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轴的分辨率,也能实现正常使用,但是卡顿十分明显,而且不能实现多点触发。主要是没考到要自己添加唤醒程序,以为官方驱动里面已经有了,所以在这里浪费了一些时间。

这篇关于goodix,gt928触屏驱动移植,飞凌OKMX6Q/DL-C板子由板级文件到设备树移植的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/241350

相关文章

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

如何在Ubuntu上安装NVIDIA显卡驱动? Ubuntu安装英伟达显卡驱动教程

《如何在Ubuntu上安装NVIDIA显卡驱动?Ubuntu安装英伟达显卡驱动教程》Windows系统不同,Linux系统通常不会自动安装专有显卡驱动,今天我们就来看看Ubuntu系统安装英伟达显卡... 对于使用NVIDIA显卡的Ubuntu用户来说,正确安装显卡驱动是获得最佳图形性能的关键。与Windo

Android与iOS设备MAC地址生成原理及Java实现详解

《Android与iOS设备MAC地址生成原理及Java实现详解》在无线网络通信中,MAC(MediaAccessControl)地址是设备的唯一网络标识符,本文主要介绍了Android与iOS设备M... 目录引言1. MAC地址基础1.1 MAC地址的组成1.2 MAC地址的分类2. android与I

嵌入式Linux之使用设备树驱动GPIO的实现方式

《嵌入式Linux之使用设备树驱动GPIO的实现方式》:本文主要介绍嵌入式Linux之使用设备树驱动GPIO的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录一、设备树配置1.1 添加 pinctrl 节点1.2 添加 LED 设备节点二、编写驱动程序2.1

嵌入式Linux驱动中的异步通知机制详解

《嵌入式Linux驱动中的异步通知机制详解》:本文主要介绍嵌入式Linux驱动中的异步通知机制,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、异步通知的核心概念1. 什么是异步通知2. 异步通知的关键组件二、异步通知的实现原理三、代码示例分析1. 设备结构

usb接口驱动异常问题常用解决方案

《usb接口驱动异常问题常用解决方案》当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等... usb接口驱动异常怎么办,USB接口驱动异常是常见问题,通常由驱动损坏、系统更新冲突、硬件故障或电源管理设置导致。以下是常用解决

QT移植到RK3568开发板的方法步骤

《QT移植到RK3568开发板的方法步骤》本文主要介绍了QT移植到RK3568开发板的方法步骤,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录前言一、获取SDK1. 安装依赖2. 获取SDK资源包3. SDK工程目录介绍4. 获取补丁包二

如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解

《如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别详解》:本文主要介绍如何通过海康威视设备网络SDK进行Java二次开发摄像头车牌识别的相关资料,描述了如何使用海康威视设备网络SD... 目录前言开发流程问题和解决方案dll库加载不到的问题老旧版本sdk不兼容的问题关键实现流程总结前言作为

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta