[VTS10R3][Vsim]VtsTrebleVendorVintfTest

问题描述

VtsTrebleVendorVintfTest
VtsTrebleVendorVintfTest#DeviceManifest/SingleManifestTest.HalsAreServed/0_64bit fail:
test/vts-testcase/hal/treble/vintf/SingleManifestTest.cpp:51
android.hardware.radio@1.2::IRadio not available.
test/vts-testcase/hal/treble/vintf/SingleManifestTest.cpp:51
android.hardware.radio@1.2::ISap not available.
test/vts-testcase/hal/treble/vintf/SingleManifestTest.cpp:51
android.hardware.radio@1.4::IRadio not available.
test/vts-testcase/hal/treble/vintf/SingleManifestTest.cpp:51
vendor.mediatek.hardware.mtkradioex@1.5::IMtkRadioEx not available.
test/vts-testcase/hal/treble/vintf/SingleManifestTest.cpp:51

解决方案

如果是Vsim项目

这个问题是因为AOSP在run VTS之前会强制把手机切成DSDS,但是VTS case还是会按照TSTS测试,所以造成fail。Google有一笔change修改这个问题:

https://android-review.googlesource.com/c/platform/frameworks/base/+/1217995/

但是因为这个change依赖的API在Q release上还没有,所以这笔change 没有merge回Q release.

贵司可以先用以下改法作为work around方案。

请在vendor/mediatek/proprietary/hardware/ril/fusion/rild/rild.c的setDynamicMsimConfig函数的最后加上下面一段code

memset(prop_value, 0, sizeof(prop_value));

mtk_property_get("ro.vendor.mtk_non_dsda_rsim_support", prop_value, "0");

if (strcmp(prop_value, "1") == 0) {

memset(prop_value, 0, sizeof(prop_value));

mtk_property_get("ro.vendor.radio.max.multisim", prop_value, "dsds");

if (strcmp(prop_value, "tsts") == 0) {

strncpy(featureValueNew.value, "tsts", 10);

mtkSetFeature(CONFIG_SIM_MODE, &featureValueNew);

mtk_property_set("persist.vendor.radio.msimmode", "tsts");

mtkLogW(LOG_TAG, "TSTS RSIM supported");

}

}

作者: RESSRC

个人资源站

发表评论

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据