Loading system/bta/ag/bta_ag_sdp.cc +15 −2 Original line number Diff line number Diff line Loading @@ -29,9 +29,11 @@ #include "bt_target.h" // Legacy stack config #include "bt_trace.h" // Legacy trace logging #include "bta/ag/bta_ag_int.h" #include "btif/include/btif_config.h" #include "common/init_flags.h" #include "device/include/interop.h" #include "device/include/interop_config.h" #include "osi/include/allocator.h" #include "stack/include/btm_api.h" #include "stack/include/btu.h" // do_in_main_thread Loading Loading @@ -161,7 +163,11 @@ bool bta_ag_add_record(uint16_t service_uuid, const char* p_service_name, /* add profile descriptor list */ if (service_uuid == UUID_SERVCLASS_AG_HANDSFREE) { profile_uuid = UUID_SERVCLASS_HF_HANDSFREE; if (bluetooth::common::init_flags::hfp_dynamic_version_is_enabled()) { version = HFP_VERSION_1_6; } else { version = BTA_HFP_VERSION; } } else { profile_uuid = UUID_SERVCLASS_HEADSET; version = HSP_VERSION_1_2; Loading Loading @@ -388,6 +394,13 @@ bool bta_ag_sdp_find_attr(tBTA_AG_SCB* p_scb, tBTA_SERVICE_MASK service) { if (p_scb->peer_features == 0) { p_scb->peer_features = sdp_features & HFP_SDP_BRSF_FEATURES_MASK; } /* Remote supports 1.7, store it in HFP 1.7 BL file */ if (bluetooth::common::init_flags::hfp_dynamic_version_is_enabled()) { if (p_scb->peer_version == HFP_VERSION_1_7) { interop_database_add_addr(INTEROP_HFP_1_7_ALLOWLIST, &p_scb->peer_addr, 3); } } } } else { /* No peer version caching for HSP, use discovered one directly */ Loading system/device/include/interop.h +2 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ #include <hardware/bluetooth.h> #include <stdbool.h> #include "include/hardware/bluetooth.h" #include "osi/include/list.h" #include "raw_address.h" Loading Loading @@ -320,6 +321,7 @@ typedef enum { // during connection. INTEROP_DISABLE_ROLE_SWITCH_DURING_CONNECTION, INTEROP_HFP_1_7_ALLOWLIST, END_OF_INTEROP_LIST } interop_feature_t; Loading system/device/src/interop.cc +2 −1 Original line number Diff line number Diff line Loading @@ -378,7 +378,8 @@ static const char* interop_feature_string_(const interop_feature_t feature) { CASE_RETURN_STR(INTEROP_DISABLE_SNIFF) CASE_RETURN_STR(INTEROP_DISABLE_AVDTP_SUSPEND) CASE_RETURN_STR(INTEROP_SLC_SKIP_BIND_COMMAND) CASE_RETURN_STR(INTEROP_AVRCP_1_3_ONLY); CASE_RETURN_STR(INTEROP_AVRCP_1_3_ONLY) CASE_RETURN_STR(INTEROP_HFP_1_7_ALLOWLIST); } return UNKNOWN_INTEROP_FEATURE; } Loading system/gd/common/init_flags.fbs +1 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ table InitFlagsData { gd_rust_is_enabled:bool (privacy:"Any"); gd_security_is_enabled:bool (privacy:"Any"); get_hci_adapter:int (privacy:"Any"); hfp_dynamic_version_is_enabled:bool (privacy:"Any"); irk_rotation_is_enabled:bool (privacy:"Any"); // is_debug_logging_enabled_for_tag -- skipped in dumpsys leaudio_targeted_announcement_reconnection_mode_is_enabled: bool (privacy:"Any"); Loading system/gd/dumpsys/init_flags.cc +1 −0 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ flatbuffers::Offset<bluetooth::common::InitFlagsData> bluetooth::dumpsys::InitFl builder.add_gd_rust_is_enabled(initFlags::gd_rust_is_enabled()); builder.add_gd_security_is_enabled(initFlags::gd_security_is_enabled()); builder.add_get_hci_adapter(initFlags::get_hci_adapter()); builder.add_hfp_dynamic_version_is_enabled(initFlags::hfp_dynamic_version_is_enabled()); builder.add_irk_rotation_is_enabled(initFlags::irk_rotation_is_enabled()); // is_debug_logging_enabled_for_tag -- skipped in dumpsys builder.add_leaudio_targeted_announcement_reconnection_mode_is_enabled( Loading Loading
system/bta/ag/bta_ag_sdp.cc +15 −2 Original line number Diff line number Diff line Loading @@ -29,9 +29,11 @@ #include "bt_target.h" // Legacy stack config #include "bt_trace.h" // Legacy trace logging #include "bta/ag/bta_ag_int.h" #include "btif/include/btif_config.h" #include "common/init_flags.h" #include "device/include/interop.h" #include "device/include/interop_config.h" #include "osi/include/allocator.h" #include "stack/include/btm_api.h" #include "stack/include/btu.h" // do_in_main_thread Loading Loading @@ -161,7 +163,11 @@ bool bta_ag_add_record(uint16_t service_uuid, const char* p_service_name, /* add profile descriptor list */ if (service_uuid == UUID_SERVCLASS_AG_HANDSFREE) { profile_uuid = UUID_SERVCLASS_HF_HANDSFREE; if (bluetooth::common::init_flags::hfp_dynamic_version_is_enabled()) { version = HFP_VERSION_1_6; } else { version = BTA_HFP_VERSION; } } else { profile_uuid = UUID_SERVCLASS_HEADSET; version = HSP_VERSION_1_2; Loading Loading @@ -388,6 +394,13 @@ bool bta_ag_sdp_find_attr(tBTA_AG_SCB* p_scb, tBTA_SERVICE_MASK service) { if (p_scb->peer_features == 0) { p_scb->peer_features = sdp_features & HFP_SDP_BRSF_FEATURES_MASK; } /* Remote supports 1.7, store it in HFP 1.7 BL file */ if (bluetooth::common::init_flags::hfp_dynamic_version_is_enabled()) { if (p_scb->peer_version == HFP_VERSION_1_7) { interop_database_add_addr(INTEROP_HFP_1_7_ALLOWLIST, &p_scb->peer_addr, 3); } } } } else { /* No peer version caching for HSP, use discovered one directly */ Loading
system/device/include/interop.h +2 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ #include <hardware/bluetooth.h> #include <stdbool.h> #include "include/hardware/bluetooth.h" #include "osi/include/list.h" #include "raw_address.h" Loading Loading @@ -320,6 +321,7 @@ typedef enum { // during connection. INTEROP_DISABLE_ROLE_SWITCH_DURING_CONNECTION, INTEROP_HFP_1_7_ALLOWLIST, END_OF_INTEROP_LIST } interop_feature_t; Loading
system/device/src/interop.cc +2 −1 Original line number Diff line number Diff line Loading @@ -378,7 +378,8 @@ static const char* interop_feature_string_(const interop_feature_t feature) { CASE_RETURN_STR(INTEROP_DISABLE_SNIFF) CASE_RETURN_STR(INTEROP_DISABLE_AVDTP_SUSPEND) CASE_RETURN_STR(INTEROP_SLC_SKIP_BIND_COMMAND) CASE_RETURN_STR(INTEROP_AVRCP_1_3_ONLY); CASE_RETURN_STR(INTEROP_AVRCP_1_3_ONLY) CASE_RETURN_STR(INTEROP_HFP_1_7_ALLOWLIST); } return UNKNOWN_INTEROP_FEATURE; } Loading
system/gd/common/init_flags.fbs +1 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ table InitFlagsData { gd_rust_is_enabled:bool (privacy:"Any"); gd_security_is_enabled:bool (privacy:"Any"); get_hci_adapter:int (privacy:"Any"); hfp_dynamic_version_is_enabled:bool (privacy:"Any"); irk_rotation_is_enabled:bool (privacy:"Any"); // is_debug_logging_enabled_for_tag -- skipped in dumpsys leaudio_targeted_announcement_reconnection_mode_is_enabled: bool (privacy:"Any"); Loading
system/gd/dumpsys/init_flags.cc +1 −0 Original line number Diff line number Diff line Loading @@ -53,6 +53,7 @@ flatbuffers::Offset<bluetooth::common::InitFlagsData> bluetooth::dumpsys::InitFl builder.add_gd_rust_is_enabled(initFlags::gd_rust_is_enabled()); builder.add_gd_security_is_enabled(initFlags::gd_security_is_enabled()); builder.add_get_hci_adapter(initFlags::get_hci_adapter()); builder.add_hfp_dynamic_version_is_enabled(initFlags::hfp_dynamic_version_is_enabled()); builder.add_irk_rotation_is_enabled(initFlags::irk_rotation_is_enabled()); // is_debug_logging_enabled_for_tag -- skipped in dumpsys builder.add_leaudio_targeted_announcement_reconnection_mode_is_enabled( Loading