diff options
Diffstat (limited to 'wifi/1.2/vts/functional/wifi_chip_hidl_test.cpp')
| -rw-r--r-- | wifi/1.2/vts/functional/wifi_chip_hidl_test.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/wifi/1.2/vts/functional/wifi_chip_hidl_test.cpp b/wifi/1.2/vts/functional/wifi_chip_hidl_test.cpp index a5457b761d..9d567feafa 100644 --- a/wifi/1.2/vts/functional/wifi_chip_hidl_test.cpp +++ b/wifi/1.2/vts/functional/wifi_chip_hidl_test.cpp @@ -18,6 +18,7 @@ #include <android/hardware/wifi/1.2/IWifiChip.h> #include <android/hardware/wifi/1.2/IWifiChipEventCallback.h> +#include <android/hardware/wifi/1.3/IWifiChip.h> #include <VtsHalHidlTargetCallbackBase.h> #include <VtsHalHidlTargetTestBase.h> @@ -104,7 +105,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; } |
