aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHsin-chen Chuang <chharry@chromium.org>2024-05-14 11:25:10 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2024-05-15 07:37:09 +0000
commit024dff8b3f1803d6ad09740e826978a49eb5d646 (patch)
treebcc5719a813279f2f351170894a9cbc18ae07b60
parent1f2088a06bec5d42d0d57826fa3ffbabcbe9c1e6 (diff)
downloadautotest-upstream-main.tar.gz
floss: reset_on: Make sure adapter is down on btmanagerd before startupstream-main
btmanagerd would reject to start an index if it is not stopped. BUG=b:340370209 TEST=bluetooth_AdapterSAHealth.sa_power_reset.floss Change-Id: I20de9edf06c9d9f9a54c3008505a5019402ff530 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/5531358 Reviewed-by: Yun-hao Chung <howardchung@chromium.org> Tested-by: Hsin-chen Chuang <chharry@google.com> Commit-Queue: Hsin-chen Chuang <chharry@google.com>
-rw-r--r--client/cros/multimedia/bluetooth_facade.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/client/cros/multimedia/bluetooth_facade.py b/client/cros/multimedia/bluetooth_facade.py
index 269ee0a693..473ea9487f 100644
--- a/client/cros/multimedia/bluetooth_facade.py
+++ b/client/cros/multimedia/bluetooth_facade.py
@@ -5136,8 +5136,10 @@ class FlossFacadeLocal(BluetoothBaseFacadeLocal):
default_adapter = self.manager_client.get_default_adapter()
- def _is_adapter_down(client):
- return lambda: not client.has_proxy()
+ def _is_adapter_down(adapter, manager):
+ default_adapter = manager.get_default_adapter()
+ return lambda: (not adapter.has_proxy() and not manager.
+ get_adapter_enabled(default_adapter))
if powered and not self.manager_client.has_default_adapter():
logging.warning('set_powered: Default adapter not available.')
@@ -5160,7 +5162,8 @@ class FlossFacadeLocal(BluetoothBaseFacadeLocal):
self.manager_client.stop(default_adapter)
try:
utils.poll_for_condition(
- condition=_is_adapter_down(self.adapter_client),
+ condition=_is_adapter_down(self.adapter_client,
+ self.manager_client),
desc='Wait for adapter stop',
sleep_interval=self.ADAPTER_CLIENT_POLL_INTERVAL,
timeout=self.ADAPTER_DAEMON_TIMEOUT_SEC)