summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Biren <gbiren@google.com>2023-06-14 22:42:07 +0000
committerGabriel Biren <gbiren@google.com>2023-06-14 22:45:29 +0000
commit989c78a51f8f53a02b9d45cd055054faa626592a (patch)
tree5cf8cd61eceb1b2ee9ad1645af1e88b3337f75e0
parenta93bdd057828d0f29707a378d7a4de259be74839 (diff)
Set the value of using_dynamic_iface_combination_
in the WifiChip constructor. gTest suite currently cannot mock the legacy HAL call for getSupportedIfaceConcurrencyMatrix. If we set using_dynamic_iface_combination_ to true in the unit tests, we can avoid making this call. Bug: 271914366 Test: ./runtests.sh # gTest Test: atest VtsHalWifiChipTargetTest # VTS Change-Id: Ic43daab6ff5fdc5f78af614ad775f436fbbe8726
-rw-r--r--wifi/aidl/default/tests/wifi_chip_unit_tests.cpp2
-rw-r--r--wifi/aidl/default/wifi.cpp2
-rw-r--r--wifi/aidl/default/wifi_chip.cpp11
-rw-r--r--wifi/aidl/default/wifi_chip.h6
4 files changed, 13 insertions, 8 deletions
diff --git a/wifi/aidl/default/tests/wifi_chip_unit_tests.cpp b/wifi/aidl/default/tests/wifi_chip_unit_tests.cpp
index e66b650ded..f9afb4b462 100644
--- a/wifi/aidl/default/tests/wifi_chip_unit_tests.cpp
+++ b/wifi/aidl/default/tests/wifi_chip_unit_tests.cpp
@@ -282,7 +282,7 @@ class WifiChipTest : public Test {
public:
void SetUp() override {
chip_ = WifiChip::create(chip_id_, true, legacy_hal_, mode_controller_, iface_util_,
- feature_flags_, subsystemRestartHandler);
+ feature_flags_, subsystemRestartHandler, true);
EXPECT_CALL(*mode_controller_, changeFirmwareMode(testing::_))
.WillRepeatedly(testing::Return(true));
diff --git a/wifi/aidl/default/wifi.cpp b/wifi/aidl/default/wifi.cpp
index d6a85da198..34a7f35d4d 100644
--- a/wifi/aidl/default/wifi.cpp
+++ b/wifi/aidl/default/wifi.cpp
@@ -133,7 +133,7 @@ ndk::ScopedAStatus Wifi::startInternal() {
chips_.push_back(
WifiChip::create(chipId, chipId == kPrimaryChipId, hal, mode_controller_,
std::make_shared<iface_util::WifiIfaceUtil>(iface_tool_, hal),
- feature_flags_, on_subsystem_restart_callback));
+ feature_flags_, on_subsystem_restart_callback, false));
chipId++;
}
run_state_ = RunState::STARTED;
diff --git a/wifi/aidl/default/wifi_chip.cpp b/wifi/aidl/default/wifi_chip.cpp
index f9f55285df..a2bdbb9785 100644
--- a/wifi/aidl/default/wifi_chip.cpp
+++ b/wifi/aidl/default/wifi_chip.cpp
@@ -366,7 +366,8 @@ WifiChip::WifiChip(int32_t chip_id, bool is_primary,
const std::weak_ptr<mode_controller::WifiModeController> mode_controller,
const std::shared_ptr<iface_util::WifiIfaceUtil> iface_util,
const std::weak_ptr<feature_flags::WifiFeatureFlags> feature_flags,
- const std::function<void(const std::string&)>& handler)
+ const std::function<void(const std::string&)>& handler,
+ bool using_dynamic_iface_combination)
: chip_id_(chip_id),
legacy_hal_(legacy_hal),
mode_controller_(mode_controller),
@@ -375,9 +376,9 @@ WifiChip::WifiChip(int32_t chip_id, bool is_primary,
current_mode_id_(feature_flags::chip_mode_ids::kInvalid),
modes_(feature_flags.lock()->getChipModes(is_primary)),
debug_ring_buffer_cb_registered_(false),
+ using_dynamic_iface_combination_(using_dynamic_iface_combination),
subsystemCallbackHandler_(handler) {
setActiveWlanIfaceNameProperty(kNoActiveWlanIfaceNamePropertyValue);
- using_dynamic_iface_combination_ = false;
}
void WifiChip::retrieveDynamicIfaceCombination() {
@@ -413,9 +414,11 @@ std::shared_ptr<WifiChip> WifiChip::create(
const std::weak_ptr<mode_controller::WifiModeController> mode_controller,
const std::shared_ptr<iface_util::WifiIfaceUtil> iface_util,
const std::weak_ptr<feature_flags::WifiFeatureFlags> feature_flags,
- const std::function<void(const std::string&)>& handler) {
+ const std::function<void(const std::string&)>& handler,
+ bool using_dynamic_iface_combination) {
std::shared_ptr<WifiChip> ptr = ndk::SharedRefBase::make<WifiChip>(
- chip_id, is_primary, legacy_hal, mode_controller, iface_util, feature_flags, handler);
+ chip_id, is_primary, legacy_hal, mode_controller, iface_util, feature_flags, handler,
+ using_dynamic_iface_combination);
std::weak_ptr<WifiChip> weak_ptr_this(ptr);
ptr->setWeakPtr(weak_ptr_this);
return ptr;
diff --git a/wifi/aidl/default/wifi_chip.h b/wifi/aidl/default/wifi_chip.h
index 4ddee92867..d268e8947c 100644
--- a/wifi/aidl/default/wifi_chip.h
+++ b/wifi/aidl/default/wifi_chip.h
@@ -53,7 +53,8 @@ class WifiChip : public BnWifiChip {
const std::weak_ptr<mode_controller::WifiModeController> mode_controller,
const std::shared_ptr<iface_util::WifiIfaceUtil> iface_util,
const std::weak_ptr<feature_flags::WifiFeatureFlags> feature_flags,
- const std::function<void(const std::string&)>& subsystemCallbackHandler);
+ const std::function<void(const std::string&)>& subsystemCallbackHandler,
+ bool using_dynamic_iface_combination);
// Factory method - use instead of default constructor.
static std::shared_ptr<WifiChip> create(
@@ -62,7 +63,8 @@ class WifiChip : public BnWifiChip {
const std::weak_ptr<mode_controller::WifiModeController> mode_controller,
const std::shared_ptr<iface_util::WifiIfaceUtil> iface_util,
const std::weak_ptr<feature_flags::WifiFeatureFlags> feature_flags,
- const std::function<void(const std::string&)>& subsystemCallbackHandler);
+ const std::function<void(const std::string&)>& subsystemCallbackHandler,
+ bool using_dynamic_iface_combination);
// AIDL does not provide a built-in mechanism to let the server invalidate
// an AIDL interface object after creation. If any client process holds onto