一,触摸屏
1,不能校准 ts.log信息报错:
Screen resolution: 800x480
/dev/input/event0: get name: gpio-keys
/dev/input/event0: not da9052_tsi
/dev/input/event1: get name: mxc_ts
/dev/input/event1: not da9052_tsi
can not find ts device
解决方法1:
android 配置:
device\fsl\imx53_loco\BoardConfig.mk 32行 选择触摸屏型号
方法2:直接修改system/core/ts_calibrator/ts_calibrator.c
将static const char dev_name[] = TS_INPUT_DEV;
改为:static const char dev_name[] = "mxc_ts";
2,重新校准校准时要删除calibration文件
r m /data/system/calibration
分析:
ts_calibrator校准后
生成/data/system/calibration 同时会cp到/sys/module/mxc_ts/parameters/calibration
其中:/sys/module/mxc_ts/parameters/calibration
参数是传递到kernel中的:
源代码:
drivers/input/touchscreen/mxc_ts.c 中
3,播放mp3时,一直打印:
W/AudioTrack( 320): obtainBuffer timed out (is the CPU pegged?) 0x17aa008 user=000012c0, server=00000000
....
分析:用系统自带的Muisc程序播放,所以排除上层UI程序的问题。如果是自己写的程序出现上面的问题,只能说明一个问题你的程序有问题,没有取到声频数据流。
报上述错误的主要原因是取不到设备上的声频数据流。即然不是上层的问题,那可能就是硬件和驱动的问题。可以做以下确认工作:
A,确认驱动是否加载。(一般来说驱动没有加载成功,播放MP3时会报不支持此程格式)
B,确认I2S的4根线是否正确配制。
C,确认I2S上的clock和主时钟是否有。
D,确认I2S-Din脚是否有数据。
如果不知正常情况的形型是什么样的,可以拿一个开发板或正常的板来测一下,做个对比。
上面的问题我的出错地方是没有配置对:.ext_port = 3 ,原理图上连的是第3组I2S,所以这里一定是3。