From 09f373d6c1cf02ab47d78dfd435e21582e1b702f Mon Sep 17 00:00:00 2001 From: Oleh Cherpak Date: Tue, 4 Feb 2020 15:15:35 +0200 Subject: [PATCH] vts: hostapd: Remove optional service registration Wifi VendorHAL is optional for Soft AP mode to function. Tests should be runnable even on devices without VendorHAL. Test: run vts -m VtsHalWifiHostapdV1_1Target Bug: 148907288 Bug: 158343986 Signed-off-by: Oleh Cherpak Change-Id: Id65d09d39d93e540a24e58fda233fd2faf8c3258 Merged-In: Id65d09d39d93e540a24e58fda233fd2faf8c3258 --- .../vts/functional/wifi_hidl_test_utils.cpp | 6 +++++- wifi/1.0/vts/functional/wifi_hidl_test_utils.h | 2 ++ .../vts/functional/hostapd_hidl_test_utils.cpp | 18 +++++++++++++----- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/wifi/1.0/vts/functional/wifi_hidl_test_utils.cpp b/wifi/1.0/vts/functional/wifi_hidl_test_utils.cpp index 3ff33a564b..5b11dd3fc4 100644 --- a/wifi/1.0/vts/functional/wifi_hidl_test_utils.cpp +++ b/wifi/1.0/vts/functional/wifi_hidl_test_utils.cpp @@ -89,8 +89,12 @@ bool configureChipToSupportIfaceTypeInternal(const sp& wifi_chip, } } // namespace +sp getWifi(const std::string& instance_name) { + return IWifi::getService(instance_name); +} + sp getWifiChip(const std::string& instance_name) { - sp wifi = IWifi::getService(instance_name); + sp wifi = getWifi(instance_name); if (!wifi.get()) { return nullptr; } diff --git a/wifi/1.0/vts/functional/wifi_hidl_test_utils.h b/wifi/1.0/vts/functional/wifi_hidl_test_utils.h index d22ed77cd9..5c7863740d 100644 --- a/wifi/1.0/vts/functional/wifi_hidl_test_utils.h +++ b/wifi/1.0/vts/functional/wifi_hidl_test_utils.h @@ -31,6 +31,8 @@ // Note: We only have a single instance of each of these objects currently. // These helper functions should be modified to return vectors if we support // multiple instances. +android::sp getWifi( + const std::string& instance_name); android::sp getWifiChip( const std::string& instance_name); android::sp getWifiApIface( diff --git a/wifi/hostapd/1.0/vts/functional/hostapd_hidl_test_utils.cpp b/wifi/hostapd/1.0/vts/functional/hostapd_hidl_test_utils.cpp index d4063fe258..3ddb2b31aa 100644 --- a/wifi/hostapd/1.0/vts/functional/hostapd_hidl_test_utils.cpp +++ b/wifi/hostapd/1.0/vts/functional/hostapd_hidl_test_utils.cpp @@ -47,16 +47,24 @@ namespace { // Helper function to initialize the driver and firmware to AP mode // using the vendor HAL HIDL interface. void initilializeDriverAndFirmware(const std::string& wifi_instance_name) { - sp wifi_chip = getWifiChip(wifi_instance_name); - ChipModeId mode_id; - EXPECT_TRUE(configureChipToSupportIfaceType( - wifi_chip, ::android::hardware::wifi::V1_0::IfaceType::AP, &mode_id)); + if (getWifi(wifi_instance_name) != nullptr) { + sp wifi_chip = getWifiChip(wifi_instance_name); + ChipModeId mode_id; + EXPECT_TRUE(configureChipToSupportIfaceType( + wifi_chip, ::android::hardware::wifi::V1_0::IfaceType::AP, &mode_id)); + } else { + LOG(WARNING) << __func__ << ": Vendor HAL not supported"; + } } // Helper function to deinitialize the driver and firmware // using the vendor HAL HIDL interface. void deInitilializeDriverAndFirmware(const std::string& wifi_instance_name) { - stopWifi(wifi_instance_name); + if (getWifi(wifi_instance_name) != nullptr) { + stopWifi(wifi_instance_name); + } else { + LOG(WARNING) << __func__ << ": Vendor HAL not supported"; + } } } // namespace