Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 914c1ac5 authored by Chris Manton's avatar Chris Manton
Browse files

Privatize tBTM_CB::tACL_CB::btm_def_link_policy

Creating ACL API

Bug: 159815595
Tag: #refactor
Test: compile & verify basic functions working
Change-Id: I92a71c93334423fce16bd4747007a15aa84c1393
parent 630b6982
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -143,9 +143,12 @@ typedef struct {

 public:
  uint8_t btm_scn[BTM_MAX_SCN_]; /* current SCNs: true if SCN is in use */
 private:
  friend bool acl_is_role_switch_allowed();
  friend void BTM_default_block_role_switch();
  friend void BTM_default_unblock_role_switch();
  uint16_t btm_def_link_policy;

 private:
  friend void btm_acl_init(void);
  friend void BTM_SetDefaultLinkSuperTout(uint16_t timeout);
  friend uint16_t acl_get_link_supervision_timeout();
+9 −9
Original line number Diff line number Diff line
@@ -56,6 +56,7 @@ struct StackAclBtmAcl {
  tBTM_STATUS btm_set_packet_types(tACL_CONN* p, uint16_t pkt_types);
  void btm_establish_continue(tACL_CONN* p_acl_cb);
  void btm_read_remote_features(uint16_t handle);
  void btm_set_default_link_policy(uint16_t settings);
};

namespace {
@@ -96,7 +97,6 @@ void BTA_dm_report_role_change(const RawAddress bd_addr, uint8_t new_role,
                               uint8_t hci_status);

static void btm_set_link_policy(tACL_CONN* conn, uint16_t policy);
static void btm_set_default_link_policy(uint16_t settings);
/* 3 seconds timeout waiting for responses */
#define BTM_DEV_REPLY_TIMEOUT_MS (3 * 1000)

@@ -122,9 +122,9 @@ void btm_acl_init(void) {
}

void BTM_acl_after_controller_started() {
  btm_set_default_link_policy(HCI_ENABLE_MASTER_SLAVE_SWITCH |
                              HCI_ENABLE_HOLD_MODE | HCI_ENABLE_SNIFF_MODE |
                              HCI_ENABLE_PARK_MODE);
  internal_.btm_set_default_link_policy(
      HCI_ENABLE_MASTER_SLAVE_SWITCH | HCI_ENABLE_HOLD_MODE |
      HCI_ENABLE_SNIFF_MODE | HCI_ENABLE_PARK_MODE);

  const controller_t* controller = controller_get_interface();

@@ -776,19 +776,19 @@ void BTM_block_role_switch_for(const RawAddress& peer_addr) {
  btm_toggle_policy_off_for(peer_addr, HCI_ENABLE_MASTER_SLAVE_SWITCH);
}

static void btm_set_default_link_policy(uint16_t settings) {
void StackAclBtmAcl::btm_set_default_link_policy(uint16_t settings) {
  check_link_policy(&settings);
  btm_cb.acl_cb_.btm_def_link_policy = settings;
  btsnd_hcic_write_def_policy_set(settings);
}

void BTM_default_unblock_role_switch() {
  btm_set_default_link_policy(btm_cb.acl_cb_.btm_def_link_policy |
  internal_.btm_set_default_link_policy(btm_cb.acl_cb_.btm_def_link_policy |
                                        HCI_ENABLE_MASTER_SLAVE_SWITCH);
}

void BTM_default_block_role_switch() {
  btm_set_default_link_policy(btm_cb.acl_cb_.btm_def_link_policy &
  internal_.btm_set_default_link_policy(btm_cb.acl_cb_.btm_def_link_policy &
                                        ~HCI_ENABLE_MASTER_SLAVE_SWITCH);
}