[Android GMS 认证] VTS/CTS on GSI相关问题

1.  CtsGraphicsTestCases android.graphics.cts.VulkanFeaturesTest#testVulkanHardwareFeatures

device/qcom/common/base.mk
注释如下四行
#PRODUCT_COPY_FILES += \
#    frameworks/native/data/etc/android.hardware.vulkan.level-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.level-0.xml \
#    frameworks/native/data/etc/android.hardware.vulkan.version-1_0_3.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.version-1_0_3.xml \
#    frameworks/native/data/etc/android.hardware.vulkan.compute-0.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.vulkan.compute-0.xml \
 

2.  run cts-on-gsi -m CtsCameraTestCases -t android.hardware.cts.CameraTest#testJpegThumbnailSize

    run cts-on-gsi -m CtsCameraTestCases -t android.hardware.cts.CameraTest#testRecordingHint
kernel\msm-3.18\drivers\media\platform\msm\camera_v2\msm_buf_mgr\msm_generic_buf_mgr.c
--- a/drivers/media/platform/msm/camera_v2/msm_buf_mgr/msm_generic_buf_mgr.c 
+++ b/drivers/media/platform/msm/camera_v2/msm_buf_mgr/msm_generic_buf_mgr.c 
@@ -74,9 +74,6 @@ static int32_t msm_buf_mngr_get_buf(struct msm_buf_mngr_device *dev, 
new_entry->session_id = buf_info->session_id; 
new_entry->stream_id = buf_info->stream_id; 
new_entry->index = new_entry->vb2_buf->v4l2_buf.index; 
- spin_lock_irqsave(&dev->buf_q_spinlock, flags); 
- list_add_tail(&new_entry->entry, &dev->buf_qhead); 
- spin_unlock_irqrestore(&dev->buf_q_spinlock, flags); 
buf_info->index = new_entry->vb2_buf->v4l2_buf.index; 
if (buf_info->type == MSM_CAMERA_BUF_MNGR_BUF_USER) { 
mutex_lock(&dev->cont_mutex); 
@@ -89,6 +86,14 @@ static int32_t msm_buf_mngr_get_buf(struct msm_buf_mngr_device *dev, 

mutex_unlock(&dev->cont_mutex); 

+ if(!rc) { 
+ spin_lock_irqsave(&dev->buf_q_spinlock, flags); 
+ list_add_tail(&new_entry->entry, &dev->buf_qhead); 
+ spin_unlock_irqrestore(&dev->buf_q_spinlock, flags); 
+ } else{ 
+ pr_err("debug for this issue do not enqueue buf %p \n", new_entry->vb2_buf); 
+ kfree(new_entry); 
+ } 
return rc; 
}
 

3. AccelerometerSamplingPeriodHotSwitchOperation_32bit

驱动配置问题

EXPECT_GT((maxDelayAverageInterval - minDelayAverageInterval), minDelayAverageInterval / 10);

kernel/msm-3.18/drivers/input/misc/mc3xxx.c

diff --git a/msm-3.18/drivers/input/misc/mc3xxx.c b/msm-3.18/drivers/input/misc/mc3xxx.c
old mode 100644
new mode 100755
index b039dbd..d3927f9
--- a/msm-3.18/drivers/input/misc/mc3xxx.c
+++ b/msm-3.18/drivers/input/misc/mc3xxx.c
@@ -212,7 +212,7 @@

 // Polling delay in msecs
 #define POLL_INTERVAL_MIN_MS           10
-#define POLL_INTERVAL_MAX_MS           4000
+#define POLL_INTERVAL_MAX_MS           200
 #define POLL_DEFAULT_INTERVAL_MS       200

 // Interrupt delay in msecs
 

扫描二维码关注公众号,回复: 4318026 查看本文章

另外,关于vts测试环境的建立,要使用普通用户,最好不要使用root用户,否则有可能会导致系统崩溃。

普通用户使用adb需要进行设置如下:

普通用户使用adb
#lsusb
Bus 001 Device 004: ID 18d1:4ee7 Google Inc.
Bus 001 Device 105: ID 18d1:d00d Google Inc.

Bus 001 Device 007: ID 05c6:9091 Qualcomm, Inc.

#vim /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee7", MODE="0660", GROUP="plugdev", SYMLINK+="android%n"
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", ATTR{idProduct}=="9091", MODE="0660", GROUP="plugdev", SYMLINK+="android%n"

猜你喜欢

转载自blog.csdn.net/zhms/article/details/83472833