summaryrefslogtreecommitdiff
path: root/wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp')
-rw-r--r--wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp b/wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp
index d3a983cc8c..63235472af 100644
--- a/wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp
+++ b/wifi/1.1/vts/functional/wifi_chip_hidl_test.cpp
@@ -18,6 +18,7 @@
#include <android/hardware/wifi/1.1/IWifi.h>
#include <android/hardware/wifi/1.1/IWifiChip.h>
+#include <android/hardware/wifi/1.3/IWifiChip.h>
#include <VtsHalHidlTargetTestBase.h>
@@ -58,7 +59,19 @@ class WifiChipHidlTest : public ::testing::VtsHalHidlTargetTestBase {
ChipModeId mode_id;
EXPECT_TRUE(configureChipToSupportIfaceType(
wifi_chip_, IfaceType::STA, &mode_id));
- const auto& status_and_caps = HIDL_INVOKE(wifi_chip_, getCapabilities);
+
+ sp<::android::hardware::wifi::V1_3::IWifiChip> chip_converted =
+ ::android::hardware::wifi::V1_3::IWifiChip::castFrom(wifi_chip_);
+
+ std::pair<WifiStatus, uint32_t> status_and_caps;
+
+ if (chip_converted != nullptr) {
+ // Call the newer HAL version
+ status_and_caps = HIDL_INVOKE(chip_converted, getCapabilities_1_3);
+ } else {
+ status_and_caps = HIDL_INVOKE(wifi_chip_, getCapabilities);
+ }
+
EXPECT_EQ(WifiStatusCode::SUCCESS, status_and_caps.first.code);
return status_and_caps.second;
}