MTK 平台CTP bring up
记录MTK平台 CTP bring up的过程
一、TP的基础原理
二、bring up步骤
1.找到代码目录;
2.需要修改的地方一般为makefile,dts以及config
遇到的问题:
记录MTK平台 CTP bring up的过程
本次 TP bring up的平台是基于MT6761的8766工程,TP的ic为BOE的FT3427,和 国显的GT9293。

一、TP的基础原理
1.现在主流的屏幕技术都为电容屏,所谓的CTP;CTP从制造工艺也分为几个版本;

其的硬件部分分为三部分;触摸屏,控制IC,链接线;

其余的基础支持就不多阐述了,可以自行百度;

二、bring up步骤
1.找到代码目录;
找对应厂商提供的驱动代码,移植到对应目录下:

MTK的TP代码一般在:

/kernel/driver/input/touchscreen/mediatek/

2.需要修改的地方一般为makefile,dts以及config

DTS更改,根据是I2C 还是 是SPI总线添加对应设备(一般为i2c设备):

&i2c0 {
    goodix_touch@5d {
        status = "okay";                     
        compatible = "mediatek,goodix_touch";
        reg = <0x5d>;
    };

ft_cap_touch@38 {
        status = "okay";
        compatible = "mediatek,ft_cap_touch";
        reg = <0x38>;
    };
};

转换坐标

CTP的坐标范围是2880*2880,而lcd是240*240,这就需要将CTP的原始坐标转换为LCD的坐标,转换很简单,因为CTP和lcd的原点都一样,都是在左上角,

转换算法: new = old * 240 / 2880; 这样,坐标转换就OK了

遇到的问题:
1.情况一:中断信号正常,需要确认i2c通信是否正常。目前基本没有i2c通信失败的,问题基本在数据处理并进行上报部分,一般起一个单线程,需要具体分析线程回调函数中的代码部分。

2.情况二:没有中断信号,需要确认中断和复位的gpio号在probe中是否获取到;确认gpio是否和硬件原理图中的gpio号一致;确认6个引脚的默认电压是否正常,触摸后电压高低变化是否满足要求,(排除是否硬件问题。ctp初始化时都会做复位操作,通过交替拉高拉低复位脚和中断脚,这部分需要同fea确认代码的流程是否满足datasheet中ic复位要求,如拉引脚的顺序和必须的延迟时间。分析代码中的中断打开关闭逻辑是否存在问题,中断中是否有调用会睡眠的函数);

3.情况三:i2c通信正常,中断正常,触摸无数据,则需要fea配合针对本项目调试tp固件,未经过调试的固件很可能产生此现象。

4.ctp的bug涉及三个层面:驱动代码部分、固件部分和硬件模组部分。三个层面分工:固件部分需要依靠fae现场支持进行调试、驱动部分需要我们定位解决、模组问题需要模组厂分析。

一些具体要求:
1、tp上报数据频率修改,getevent测试报点率,在90HZ~100HZ左右较好,一般客户要求不低80HZ
2、tp触摸到第一个点上报时间,tp ic业界较好的可以达到20ms,一般要优化到30ms内,否则会响应不及时,玩游戏等感觉有滞后感。
3、测试固件升级时间,时间过长的需要进行优化,如果用户在升级过程中关机或者异常掉电,会导致固件升级概率失败,产生ic异常和tp失效,可能无法恢复。因此升级时间越短风险越小。
4、对供应商提供的驱动代码进行优化,提升性能。如频繁的log打印,延时操作的缩减等。
5、如果支持手势唤醒功能,手机灭屏时系统会依次调度各个器件模块的suspend函数,进行休眠相关的设置,最新的android架构上,由于tp被调度的时间点比较靠后,调度后需要做一些ic相关的休眠设置和必须的延时,
因此测试反馈的手势唤醒概率失效问题,需要确认是否灭屏后立即操作引起的,驱动进行澄清。
6、用户某些界面边缘位置点击不响应问题,可先用对比机对比,是否应用设置了边缘防误触功能,确定是否非问题。
7、固定位置点击不上报数据或者跳点,通过工模ito测试检测是否通道微短、微断、变型原因引起的单体模组问题。
8、log中打印坐标点信息和固件版本信息,确认用户反馈的问题是不是已经解决但是没有升级最新版本的重复性问题。对于有确定时间点的触摸不响应或无触摸跳点,可通过坐标点信息监测是否底层tp数据正常。
9、tp跳点与触摸不报点类问题,此类问题从log中无法看出异常,可能与用户操作手法、系统卡顿等因素有关,遇到反馈此类问题时需要打开设置-开发人员选项-显示触摸操作开关,录制复现视频。通过界面显示的跟踪点可以确认是否有触摸操作。
对于一些点击和滑动操作tp有上报数据但是屏幕没有响应的,可以打开显示指针位置开关和显示界面布局开关,显示具体的应用图标的有效区范围和具体的点击坐标点位置,判断点击滑动是否点击到了有效区范围外了

MTK 平台CTP bring up相关推荐

  1. mtk android 笔记,Android驱动笔记(9)——MTK平台Sensor Bring Up

    sensor的img位于scp.img 9.1.在成熟的平台Bring Up 在已知的平台上驱动并验证一个器件是很常见的工作.因为管脚等基本不需要重新配置.所以只需要按照一般步骤驱动即可.驱动代码位置 ...

  2. Android P 9.0 MTK平台 增加以太网静态IP功能

    前言 朋友们,最近又开始搞 Android P了,同样的以太网静态 IP 是少不了的功能,今天我们就开始来整一下.之前弄6.0 和 8.1 的都 ok 了. 没想到 9.0 改动还是略微有点大的.来来 ...

  3. MTK 平台上查询当前使用的摄像头模组及所支持预览分辨率

    1,MTK 平台如何查询当前使用的是哪颗摄像头及相关的模组信息? 在该目录下可以查到当前平台及相关项目的配置文件 ProjectConfig.mk \ALPS.JB.MP.V1_W_20120919\ ...

  4. LinuxGPIO操作和MTK平台GPIO

    GPIO口配置是一个历史性的问题,不管我们使用什么MCU,单片机也好,ARM也好,都离不开驱动GPIO口.Linux下有一个宏,GPIO_GPIO_SYSFS,打开这个宏后,编译烧录到设备端,去看看s ...

  5. mtk android 5.1 logo,Android ROM DIY之MTK平台手机通用移植

    在之前的文章中,我们讨论过ROM刷机原理,修改ROM包以及如何让ROM包获取root权限.那么接下来,我们谈谈MTK平台手机ROM移植的话题.如果你是ROM小白,那么建议可以先看看之前的文章. ROM ...

  6. MTK 平台修改或查看USB驱动能力有三种方法

    MTK 平台修改或查看USB驱动能力有三种方法:  1.工模菜单 通过"*#*#3646633#*#*"进入工程模式,通过如下菜单可以查看修改USB驱动能力: hardware t ...

  7. Android Camera (13)---MTK平台相机插值修改

    MTK平台相机插值修改 一.注意事项 二.HAL层修改 三.APP层修改 四.部分插值整理 五.快速编译指令 一.注意事项 Camera插值在底层已经做好,我们只需要在中间层和app层添加一个对应的p ...

  8. Android 系统(205)---MTK平台分区回读

    MTK平台分区回读 有时遇到各种开机卡死或重启问题,往往我们依靠分区回读的方法来验证是否为软件问题. 在MTK平台我们利用flash_tool工具来回读分区,简单归结为一下步骤. 1.首先选择Down ...

  9. Android 系统(159)----MTK 平台过CTA时,发生权限未明示问题

    MTK 平台过CTA时,发生权限未明示问题 Background:CTA是针对中国大陆地区的一个安全认证,目的是提高移动智能终端自身的安全防护能力,防范移动智能终端上的各种安全威胁,避免用户的利益受到 ...

最新文章

  1. osgearth+vs2010安装
  2. 【视频】【zt】温馨的求婚
  3. java linux 起多个进程_linux下tomcat启动后出现多个java进程
  4. ASP.NET Core 行军记 -----第一步(艰辛的 MVC Hello World)
  5. 洛谷 P1656 炸铁路
  6. 阿里每天究竟要抵御多少攻击
  7. oracle字段属性设置下拉列表,下拉列表 select-option ; select-optgroup-option
  8. java 中hashcode 与 equals的关系
  9. 某自媒体发布“抢小孩”视频,最高近25万次点赞,结果竟是自导自演!
  10. JAVA集合Set之HashSet详解_Java基础———集合之HashSet详解
  11. 2019/7/25 node.js
  12. kali wifi密码 破解
  13. dll文件编写、查看和调用
  14. java url 请求 最大长度限制_Http请求 url 请求头 请求体 大小长度限制
  15. 文档型数据库Mongodb
  16. windows文件服务器双机热备_几款Windows与Linux双机热备软件推荐
  17. 贵州支教之第二天(11月8日)
  18. 【社交网络分析】映射主题网络:从两极分化的人群到社区集群(一)
  19. byteTrack数据集categories不规范带来的问题
  20. wl_15 Scanner使用

热门文章

  1. Python 编码规范(pep8)
  2. 观看中国软件市场,免费的WPS说明了什么?
  3. 学习记录1-一元线性回归模型(附上python代码)
  4. Java实现将多张图片保存至PDF
  5. LeetCode 169 Majority Element(Majority Voting Algorithm)
  6. Android底层驱动开发记录:01_JNI
  7. 研发团队的绩效考核(一)
  8. centos7 上 bosun 源码安装+go二进制安装
  9. Pixhawk原生固件PX4之添外置传感器MPU6500
  10. ILOG CPLEX Optimization Studio 编写 TSP问题