From 8a9efb6e354f184ee5b003fd40fad70f2d69c7cb Mon Sep 17 00:00:00 2001 From: Andre Eisenbach Date: Fri, 17 Mar 2017 20:28:09 +0000 Subject: [PATCH] Revert "Bluetooth: Don't disable LPM at power off" Causes power regression on Angler. This reverts commit 3b2a29676b2efbc828ae3db272b347f553909d94. Bug: 36358814 Bug: 36026072 Change-Id: I9bbe218a87c7d092851c400739bc5740bcf13336 --- bluetooth/1.0/default/vendor_interface.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/bluetooth/1.0/default/vendor_interface.cc b/bluetooth/1.0/default/vendor_interface.cc index e6575b06aa..68cac5f45e 100644 --- a/bluetooth/1.0/default/vendor_interface.cc +++ b/bluetooth/1.0/default/vendor_interface.cc @@ -265,6 +265,13 @@ bool VendorInterface::Open(InitializeCompleteCallback initialize_complete_cb, } void VendorInterface::Close() { + // These callbacks may send HCI events (vendor-dependent), so make sure to + // StopWatching the file descriptor after this. + if (lib_interface_ != nullptr) { + bt_vendor_lpm_mode_t mode = BT_VND_LPM_DISABLE; + lib_interface_->op(BT_VND_OP_LPM_SET_MODE, &mode); + } + fd_watcher_.StopWatchingFileDescriptors(); if (hci_ != nullptr) {