微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > CTS failed: [android.permission.cts.FileSystemPermissio ...

CTS failed: [android.permission.cts.FileSystemPermissio ...

时间:10-02 整理:3721RD 点击:

[DESCRIPTION]

模块 android.permission.cts.FileSystemPermissionTest
问题 testAllFilesInSysAreNotWritable
详细
junit.php?mod=tag&id=6090" target="_blank" class="relatedlink">Framework.AssertionFailedError: Found writable: [/sys/devices/virtual/mstouchscreen-
msg20xx/device/update, /sys/devices/virtual/ms-touchscreen-msg20xx
/device/clear, /sys/devices/virtual/ms-touchscreen-msg20xx/device/data,
/sys/devices/virtual/ms-touchscreen-msg20xx/device/version] at
android.permission.cts.FileSystemPermissionTest.testAllFilesInSysAreNotWritable(FileSys
temPermissionTest.java:577)

[SOLUTION]

这个问题是由driver生成的属性文件,权限不匹配CTS的权限导致的,修改msg20xx
driver(alps/mediatek/custom/common/kernel/touchpanel/msg2133)中的属性节点的权限为660或664(driver里面是
777)。
以msg2133为例,修改如下:
release时的source code内容如下:
static DEVICE_ATTR(version, 0777, firmware_version_show, firmware_version_store);
static DEVICE_ATTR(update, 0777, firmware_update_show, firmware_update_store);
static DEVICE_ATTR(data, 0777, firmware_data_show, firmware_data_store);
static DEVICE_ATTR(clear, 0777, firmware_clear_show, firmware_clear_store);
过CTS时,会报testAllFilesInSysAreNotWritable错误,此时要把以上code修改如下,
修改为:
static DEVICE_ATTR(version, 0664, firmware_version_show, firmware_version_store);
static DEVICE_ATTR(update, 0664, firmware_update_show, firmware_update_store);
static DEVICE_ATTR(data, 0664, firmware_data_show, firmware_data_store);
static DEVICE_ATTR(clear, 0664, firmware_clear_show, firmware_clear_store);
修改后对CTP的功能没有影响,只是在使用apk升级CTP的firmware时,要先通过adb shell修改权限
为777,然后再升级,要不,会提示权限不够,升级无法进行。
C-touchPanel driver中还有另外的一种权限定义为:S_IWUGO,CTS测试时也会fail


如上图所示,CTS测试时,需要把S_IWUGO全部修改为S_IRUGO即可。

看不懂!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top