Loading system/bta/dm/bta_dm_act.cc +8 −1 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ #include "osi/include/fixed_queue.h" #include "osi/include/log.h" #include "osi/include/osi.h" #include "osi/include/properties.h" #include "stack/btm/btm_ble_int.h" #include "stack/btm/btm_dev.h" #include "stack/btm/btm_sec.h" Loading Loading @@ -154,6 +155,11 @@ static void bta_dm_ctrl_features_rd_cmpl_cback(tHCI_STATUS result); #define BTA_DM_SWITCH_DELAY_TIMER_MS 500 #endif /* Sysprop path for page timeout */ #ifndef PROPERTY_PAGE_TIMEOUT #define PROPERTY_PAGE_TIMEOUT "bluetooth.core.classic.page_timeout" #endif namespace { // Time to wait after receiving shutdown request to delay the actual shutdown Loading Loading @@ -387,7 +393,8 @@ void BTA_dm_on_hw_on() { get_btm_client_interface().security.BTM_SecRegister(&bta_security); } BTM_WritePageTimeout(p_bta_dm_cfg->page_timeout); BTM_WritePageTimeout(osi_property_get_int32(PROPERTY_PAGE_TIMEOUT, p_bta_dm_cfg->page_timeout)); #if (BLE_VND_INCLUDED == TRUE) BTM_BleReadControllerFeatures(bta_dm_ctrl_features_rd_cmpl_cback); Loading system/gd/sysprops/sysprops_module.cc +14 −1 Original line number Diff line number Diff line Loading @@ -64,7 +64,20 @@ std::string SyspropsModule::ToString() const { } void SyspropsModule::parse_config(std::string file_path) { const std::list<std::string> supported_sysprops = {"bluetooth.core.gap.le.privacy.enabled"}; const std::list<std::string> supported_sysprops = { // General "bluetooth.core.gap.le.privacy.enabled", "bluetooth.device.class_of_device", // BR/EDR "bluetooth.core.classic.page_scan_type", "bluetooth.core.classic.page_scan_interval", "bluetooth.core.classic.page_scan_window", "bluetooth.core.classic.inq_scan_type", "bluetooth.core.classic.inq_scan_interval", "bluetooth.core.classic.inq_scan_window", "bluetooth.core.acl.link_supervision_timeout", "bluetooth.core.classic.page_timeout", }; auto config = storage::LegacyConfigFile::FromPath(file_path).Read(kDefaultCapacity); if (!config) { Loading system/stack/acl/btm_acl.cc +10 −2 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ #include "osi/include/allocator.h" #include "osi/include/log.h" #include "osi/include/osi.h" // UNUSED_ATTR #include "osi/include/properties.h" #include "stack/acl/acl.h" #include "stack/acl/peer_packet_types.h" #include "stack/btm/btm_dev.h" Loading @@ -72,6 +73,11 @@ #include "types/hci_role.h" #include "types/raw_address.h" #ifndef PROPERTY_LINK_SUPERVISION_TIMEOUT #define PROPERTY_LINK_SUPERVISION_TIMEOUT \ "bluetooth.core.acl.link_supervision_timeout" #endif void BTM_update_version_info(const RawAddress& bd_addr, const remote_version_info& remote_version_info); Loading Loading @@ -1398,7 +1404,8 @@ void StackAclBtmAcl::btm_acl_role_changed(tHCI_STATUS hci_status, /* Reload LSTO: link supervision timeout is reset in the LM after a role * switch */ if (new_role == HCI_ROLE_CENTRAL) { constexpr uint16_t link_supervision_timeout = 8000; uint16_t link_supervision_timeout = osi_property_get_int32(PROPERTY_LINK_SUPERVISION_TIMEOUT, 8000); BTM_SetLinkSuperTout(bd_addr, link_supervision_timeout); } } else { Loading Loading @@ -2532,7 +2539,8 @@ void on_acl_br_edr_connected(const RawAddress& bda, uint16_t handle, delayed_role_change_ = nullptr; btm_acl_set_paging(false); l2c_link_hci_conn_comp(HCI_SUCCESS, handle, bda); constexpr uint16_t link_supervision_timeout = 8000; uint16_t link_supervision_timeout = osi_property_get_int32(PROPERTY_LINK_SUPERVISION_TIMEOUT, 8000); BTM_SetLinkSuperTout(bda, link_supervision_timeout); tACL_CONN* p_acl = internal_.acl_get_connection_from_handle(handle); Loading system/stack/btm/btm_inq.cc +46 −2 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ #define LOG_TAG "bluetooth" #include <base/logging.h> #include <stddef.h> #include <stdio.h> #include <stdlib.h> Loading @@ -40,6 +41,7 @@ #include "osi/include/allocator.h" #include "osi/include/log.h" #include "osi/include/osi.h" #include "osi/include/properties.h" #include "stack/btm/btm_ble_int.h" #include "stack/btm/btm_int_types.h" #include "stack/include/acl_api.h" Loading @@ -50,8 +52,6 @@ #include "types/bluetooth/uuid.h" #include "types/raw_address.h" #include <base/logging.h> namespace { constexpr char kBtmLogTag[] = "SCAN"; } Loading @@ -78,6 +78,30 @@ using bluetooth::Uuid; #define BTM_INQ_DEBUG FALSE #endif #ifndef PROPERTY_PAGE_SCAN_TYPE #define PROPERTY_PAGE_SCAN_TYPE "bluetooth.core.classic.page_scan_type" #endif #ifndef PROPERTY_PAGE_SCAN_INTERVAL #define PROPERTY_PAGE_SCAN_INTERVAL "bluetooth.core.classic.page_scan_interval" #endif #ifndef PROPERTY_PAGE_SCAN_WINDOW #define PROPERTY_PAGE_SCAN_WINDOW "bluetooth.core.classic.page_scan_window" #endif #ifndef PROPERTY_INQ_SCAN_TYPE #define PROPERTY_INQ_SCAN_TYPE "bluetooth.core.classic.inq_scan_type" #endif #ifndef PROPERTY_INQ_SCAN_INTERVAL #define PROPERTY_INQ_SCAN_INTERVAL "bluetooth.core.classic.inq_scan_interval" #endif #ifndef PROPERTY_INQ_SCAN_WINDOW #define PROPERTY_INQ_SCAN_WINDOW "bluetooth.core.classic.inq_scan_window" #endif #define BTIF_DM_DEFAULT_INQ_MAX_DURATION 10 /******************************************************************************/ Loading Loading @@ -228,6 +252,11 @@ tBTM_STATUS BTM_SetDiscoverability(uint16_t inq_mode) { scan_mode |= HCI_INQUIRY_SCAN_ENABLED; } window = osi_property_get_int32(PROPERTY_INQ_SCAN_WINDOW, BTM_DEFAULT_DISC_WINDOW); interval = osi_property_get_int32(PROPERTY_INQ_SCAN_INTERVAL, BTM_DEFAULT_DISC_INTERVAL); /* Send down the inquiry scan window and period if changed */ if ((window != btm_cb.btm_inq_vars.inq_scan_window) || (interval != btm_cb.btm_inq_vars.inq_scan_period)) { Loading Loading @@ -269,7 +298,12 @@ void BTM_EnableInterlacedInquiryScan() { } BTM_TRACE_API("BTM_EnableInterlacedInquiryScan"); uint16_t inq_scan_type = osi_property_get_int32(PROPERTY_INQ_SCAN_TYPE, BTM_SCAN_TYPE_INTERLACED); if (!controller_get_interface()->supports_interlaced_inquiry_scan() || inq_scan_type != BTM_SCAN_TYPE_INTERLACED || btm_cb.btm_inq_vars.inq_scan_type == BTM_SCAN_TYPE_INTERLACED) { return; } Loading @@ -285,7 +319,12 @@ void BTM_EnableInterlacedPageScan() { } BTM_TRACE_API("BTM_EnableInterlacedPageScan"); uint16_t page_scan_type = osi_property_get_int32(PROPERTY_PAGE_SCAN_TYPE, BTM_SCAN_TYPE_INTERLACED); if (!controller_get_interface()->supports_interlaced_inquiry_scan() || page_scan_type != BTM_SCAN_TYPE_INTERLACED || btm_cb.btm_inq_vars.page_scan_type == BTM_SCAN_TYPE_INTERLACED) { return; } Loading Loading @@ -384,6 +423,11 @@ tBTM_STATUS BTM_SetConnectability(uint16_t page_mode) { scan_mode |= HCI_PAGE_SCAN_ENABLED; } window = osi_property_get_int32(PROPERTY_PAGE_SCAN_WINDOW, BTM_DEFAULT_CONN_WINDOW); interval = osi_property_get_int32(PROPERTY_PAGE_SCAN_INTERVAL, BTM_DEFAULT_CONN_INTERVAL); if ((window != p_inq->page_scan_window) || (interval != p_inq->page_scan_period)) { p_inq->page_scan_window = window; Loading Loading
system/bta/dm/bta_dm_act.cc +8 −1 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ #include "osi/include/fixed_queue.h" #include "osi/include/log.h" #include "osi/include/osi.h" #include "osi/include/properties.h" #include "stack/btm/btm_ble_int.h" #include "stack/btm/btm_dev.h" #include "stack/btm/btm_sec.h" Loading Loading @@ -154,6 +155,11 @@ static void bta_dm_ctrl_features_rd_cmpl_cback(tHCI_STATUS result); #define BTA_DM_SWITCH_DELAY_TIMER_MS 500 #endif /* Sysprop path for page timeout */ #ifndef PROPERTY_PAGE_TIMEOUT #define PROPERTY_PAGE_TIMEOUT "bluetooth.core.classic.page_timeout" #endif namespace { // Time to wait after receiving shutdown request to delay the actual shutdown Loading Loading @@ -387,7 +393,8 @@ void BTA_dm_on_hw_on() { get_btm_client_interface().security.BTM_SecRegister(&bta_security); } BTM_WritePageTimeout(p_bta_dm_cfg->page_timeout); BTM_WritePageTimeout(osi_property_get_int32(PROPERTY_PAGE_TIMEOUT, p_bta_dm_cfg->page_timeout)); #if (BLE_VND_INCLUDED == TRUE) BTM_BleReadControllerFeatures(bta_dm_ctrl_features_rd_cmpl_cback); Loading
system/gd/sysprops/sysprops_module.cc +14 −1 Original line number Diff line number Diff line Loading @@ -64,7 +64,20 @@ std::string SyspropsModule::ToString() const { } void SyspropsModule::parse_config(std::string file_path) { const std::list<std::string> supported_sysprops = {"bluetooth.core.gap.le.privacy.enabled"}; const std::list<std::string> supported_sysprops = { // General "bluetooth.core.gap.le.privacy.enabled", "bluetooth.device.class_of_device", // BR/EDR "bluetooth.core.classic.page_scan_type", "bluetooth.core.classic.page_scan_interval", "bluetooth.core.classic.page_scan_window", "bluetooth.core.classic.inq_scan_type", "bluetooth.core.classic.inq_scan_interval", "bluetooth.core.classic.inq_scan_window", "bluetooth.core.acl.link_supervision_timeout", "bluetooth.core.classic.page_timeout", }; auto config = storage::LegacyConfigFile::FromPath(file_path).Read(kDefaultCapacity); if (!config) { Loading
system/stack/acl/btm_acl.cc +10 −2 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ #include "osi/include/allocator.h" #include "osi/include/log.h" #include "osi/include/osi.h" // UNUSED_ATTR #include "osi/include/properties.h" #include "stack/acl/acl.h" #include "stack/acl/peer_packet_types.h" #include "stack/btm/btm_dev.h" Loading @@ -72,6 +73,11 @@ #include "types/hci_role.h" #include "types/raw_address.h" #ifndef PROPERTY_LINK_SUPERVISION_TIMEOUT #define PROPERTY_LINK_SUPERVISION_TIMEOUT \ "bluetooth.core.acl.link_supervision_timeout" #endif void BTM_update_version_info(const RawAddress& bd_addr, const remote_version_info& remote_version_info); Loading Loading @@ -1398,7 +1404,8 @@ void StackAclBtmAcl::btm_acl_role_changed(tHCI_STATUS hci_status, /* Reload LSTO: link supervision timeout is reset in the LM after a role * switch */ if (new_role == HCI_ROLE_CENTRAL) { constexpr uint16_t link_supervision_timeout = 8000; uint16_t link_supervision_timeout = osi_property_get_int32(PROPERTY_LINK_SUPERVISION_TIMEOUT, 8000); BTM_SetLinkSuperTout(bd_addr, link_supervision_timeout); } } else { Loading Loading @@ -2532,7 +2539,8 @@ void on_acl_br_edr_connected(const RawAddress& bda, uint16_t handle, delayed_role_change_ = nullptr; btm_acl_set_paging(false); l2c_link_hci_conn_comp(HCI_SUCCESS, handle, bda); constexpr uint16_t link_supervision_timeout = 8000; uint16_t link_supervision_timeout = osi_property_get_int32(PROPERTY_LINK_SUPERVISION_TIMEOUT, 8000); BTM_SetLinkSuperTout(bda, link_supervision_timeout); tACL_CONN* p_acl = internal_.acl_get_connection_from_handle(handle); Loading
system/stack/btm/btm_inq.cc +46 −2 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ #define LOG_TAG "bluetooth" #include <base/logging.h> #include <stddef.h> #include <stdio.h> #include <stdlib.h> Loading @@ -40,6 +41,7 @@ #include "osi/include/allocator.h" #include "osi/include/log.h" #include "osi/include/osi.h" #include "osi/include/properties.h" #include "stack/btm/btm_ble_int.h" #include "stack/btm/btm_int_types.h" #include "stack/include/acl_api.h" Loading @@ -50,8 +52,6 @@ #include "types/bluetooth/uuid.h" #include "types/raw_address.h" #include <base/logging.h> namespace { constexpr char kBtmLogTag[] = "SCAN"; } Loading @@ -78,6 +78,30 @@ using bluetooth::Uuid; #define BTM_INQ_DEBUG FALSE #endif #ifndef PROPERTY_PAGE_SCAN_TYPE #define PROPERTY_PAGE_SCAN_TYPE "bluetooth.core.classic.page_scan_type" #endif #ifndef PROPERTY_PAGE_SCAN_INTERVAL #define PROPERTY_PAGE_SCAN_INTERVAL "bluetooth.core.classic.page_scan_interval" #endif #ifndef PROPERTY_PAGE_SCAN_WINDOW #define PROPERTY_PAGE_SCAN_WINDOW "bluetooth.core.classic.page_scan_window" #endif #ifndef PROPERTY_INQ_SCAN_TYPE #define PROPERTY_INQ_SCAN_TYPE "bluetooth.core.classic.inq_scan_type" #endif #ifndef PROPERTY_INQ_SCAN_INTERVAL #define PROPERTY_INQ_SCAN_INTERVAL "bluetooth.core.classic.inq_scan_interval" #endif #ifndef PROPERTY_INQ_SCAN_WINDOW #define PROPERTY_INQ_SCAN_WINDOW "bluetooth.core.classic.inq_scan_window" #endif #define BTIF_DM_DEFAULT_INQ_MAX_DURATION 10 /******************************************************************************/ Loading Loading @@ -228,6 +252,11 @@ tBTM_STATUS BTM_SetDiscoverability(uint16_t inq_mode) { scan_mode |= HCI_INQUIRY_SCAN_ENABLED; } window = osi_property_get_int32(PROPERTY_INQ_SCAN_WINDOW, BTM_DEFAULT_DISC_WINDOW); interval = osi_property_get_int32(PROPERTY_INQ_SCAN_INTERVAL, BTM_DEFAULT_DISC_INTERVAL); /* Send down the inquiry scan window and period if changed */ if ((window != btm_cb.btm_inq_vars.inq_scan_window) || (interval != btm_cb.btm_inq_vars.inq_scan_period)) { Loading Loading @@ -269,7 +298,12 @@ void BTM_EnableInterlacedInquiryScan() { } BTM_TRACE_API("BTM_EnableInterlacedInquiryScan"); uint16_t inq_scan_type = osi_property_get_int32(PROPERTY_INQ_SCAN_TYPE, BTM_SCAN_TYPE_INTERLACED); if (!controller_get_interface()->supports_interlaced_inquiry_scan() || inq_scan_type != BTM_SCAN_TYPE_INTERLACED || btm_cb.btm_inq_vars.inq_scan_type == BTM_SCAN_TYPE_INTERLACED) { return; } Loading @@ -285,7 +319,12 @@ void BTM_EnableInterlacedPageScan() { } BTM_TRACE_API("BTM_EnableInterlacedPageScan"); uint16_t page_scan_type = osi_property_get_int32(PROPERTY_PAGE_SCAN_TYPE, BTM_SCAN_TYPE_INTERLACED); if (!controller_get_interface()->supports_interlaced_inquiry_scan() || page_scan_type != BTM_SCAN_TYPE_INTERLACED || btm_cb.btm_inq_vars.page_scan_type == BTM_SCAN_TYPE_INTERLACED) { return; } Loading Loading @@ -384,6 +423,11 @@ tBTM_STATUS BTM_SetConnectability(uint16_t page_mode) { scan_mode |= HCI_PAGE_SCAN_ENABLED; } window = osi_property_get_int32(PROPERTY_PAGE_SCAN_WINDOW, BTM_DEFAULT_CONN_WINDOW); interval = osi_property_get_int32(PROPERTY_PAGE_SCAN_INTERVAL, BTM_DEFAULT_CONN_INTERVAL); if ((window != p_inq->page_scan_window) || (interval != p_inq->page_scan_period)) { p_inq->page_scan_window = window; Loading