FAQ114-排查触摸屏失灵的步骤
触摸屏失灵,一般可通过以下步骤进行排查(userdebug/eng固件):
- 执行getevent -l查看触摸屏是否已经正常注册input设备,如无对应节点,则驱动加载异常,排查驱动。
- 执行getevent -l /dev/input/xxxx (xxxx是触摸屏所对应的节点),进行触摸,查看是否有事件上报,如无事件上报,需继续按照下面的步骤排查。
- 使用i2cdump -y -f {twi_id} {device_addr},检查i2c通讯是否正常,如通讯失败,按照第5点排查。
- 执行在触摸前后执行 cat /proc/interrupts,查看触摸前后触摸屏中断是否正常产生,触摸屏常用中断的方式读取事件,如触摸无中断产生,按照第六点排查。
- 检查tp供电是否正常。
- 检查触摸屏管脚电平/配置是否正确。
- 如以上排查点都正常,请找硬件和模组原厂协助排查。
FAQ342-查看显示模块的状态
- 操作命令
在串口终端输入以下命令,查看显示模块的状态:
cat /sys/class/disp/disp/attr/sys
- 打印信息
示例如下:
- 信息解析
- screen 显示通道
- de_rate de的时钟频率
- ref_fps 输出设备的参考刷新率
- lcd output backlight( 97) fps:61.4 1280x 800 屏输出 | 背光值(97)|屏刷新率:61.4hz|分辨率为:800x1280
- err de缺数的次数
- skip de跳帧的次数
- irq 中断的次数
- Vsync 已发送的vsync消息个数
- hdmi output mode(10) fps:60.6 1920x1080 HDMI输出 | 模式为(10:1080P@60HZ) | 刷新率为:60.6hz | 分辨率为:1920x1080
- Hdmi参数 mgr0: 1920x1080 fmt[yuv444] cs[0x101] range[limit] eotf[0x4] bits[8bits] err[1] force_sync[1] unblank direct_show[false] mgr0: DE0 | 分辨率 | tcon输出像素格式(YUV/RGB) | 颜色空间(BT709)| 颜色范围 | 光电强度 | 色深 | err 更新寄存器是否在安全范围 | 强制刷新次数 | mgr是否清掉数据 | 直传
- dmabuf的参数 dmabuf: cache[7] cache max[39] umap skip[66] overflow[166] dmabuf list缓存编号 | 最大缓存编号 | 跳过unmap的次数 | overflow之后会强制unmap
- Composer信息 disp[0]all:29952, sub:29952, cur:29952, free:29948, skip:58 总帧号 | 提交帧数 | 当前帧号 | 上一次释放帧号 | 跳过帧号数
- 图层信息具体说明:
参数 | 图层信息具体说明 |
---|---|
BUF | 图层类型,BUF/COLOR,一般为BUF,即图层是带BUFFER的。COLOR意思是显示一个纯色的画面,不带BUFFER(dim layer)。 |
enable | 显示处于enable状态 |
ch[0] | 该图层处于blending通道0 |
lyr[0] | 该图层处于当前blending通道中的图层0 |
z[0] | 图层z序,越小越在底部,可能会被z序大的图层覆盖住 |
prem[Y] | 是否预乘格式,Y是,N否 |
a | alpha参数, globl/pixel/; alpha值 |
fmt | 图层格式,值64以下为RGB格式;以上为YUV格式,常见的72为YV12, 76为NV12 |
fb | 图层buffer的size,width,height,三个分量 |
crop | 图像buffer中的裁减区域, [x,y,w,h] |
frame | 图层在屏幕上的显示区域,[x,y,w,h] |
addr | 三个分量的地址,如果用iommu方式,那就是映射的设备虚拟地址,否则是物理地址 |
flags | 一般为0, 3D SS时0x4, 3D TB时为0x1, 3D FP时为0x2 |
trd | 是否3D输出,3D输出的类型(HDMI FP输出时为1) |
err | de缺数的次数,de缺数可能会出现屏幕抖动,花屏的问题。de缺数一般为带宽不足引起 |
skip | 表示de跳帧的次数,跳帧会出现卡顿问题。跳帧是指本次中断响应较慢,de模块判断在本次中断已经接近或者超过了消隐区,将放弃本次更新图像的机会,选择继续显示原有的图像 |
irq | 表示该通路上垂直消隐区中断执行的次数,一直增长表示该通道上的timing controller正在运行当中 |
vsync | 表示显示模块往用户空间中发送的vsync消息的数目,一直增长表示正在不断地发送中 |
fbd | Afbc功能是否使能。Y 是, N 否 |