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

Commit 66e71a81 authored by Zach Johnson's avatar Zach Johnson Committed by Automerger Merge Worker
Browse files

Skip the message passing & call to BTA_dm_acl_up directly am: 01db1d7c

Original change: https://android-review.googlesource.com/c/platform/system/bt/+/1393570

Change-Id: I811cd503978848ce35b2dda151355b75102bda71
parents c5fc563b 01db1d7c
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -2743,6 +2743,12 @@ static void bta_dm_acl_up(const RawAddress& bd_addr, tBT_TRANSPORT transport,
  bta_dm_adjust_roles(true);
}

void BTA_dm_acl_up(const RawAddress bd_addr, tBT_TRANSPORT transport,
                   uint16_t handle) {
  do_in_main_thread(FROM_HERE,
                    base::Bind(bta_dm_acl_up, bd_addr, transport, handle));
}

static void bta_dm_acl_down(const RawAddress& bd_addr,
                            tBT_TRANSPORT transport) {
  bool issue_unpair_cb = false;
@@ -2828,12 +2834,6 @@ static void bta_dm_acl_down(const RawAddress& bd_addr,
/** Callback from btm when acl connection goes up or down */
static void bta_dm_bl_change_cback(tBTM_BL_EVENT_DATA* p_data) {
  switch (p_data->event) {
    case BTM_BL_CONN_EVT:
      /* connection up */
      do_in_main_thread(
          FROM_HERE, base::Bind(bta_dm_acl_up, *p_data->conn.p_bda,
                                p_data->conn.transport, p_data->conn.handle));
      break;
    case BTM_BL_DISCN_EVT:
      /* connection down */
      do_in_main_thread(FROM_HERE,
+4 −13
Original line number Diff line number Diff line
@@ -77,6 +77,8 @@ static void btm_process_remote_ext_features(tACL_CONN* p_acl_cb,
                                            uint8_t num_read_pages);

void BTIF_dm_report_inquiry_status_change(uint8_t busy_level_flags);
void BTA_dm_acl_up(const RawAddress bd_addr, tBT_TRANSPORT transport,
                   uint16_t handle);
/* 3 seconds timeout waiting for responses */
#define BTM_DEV_REPLY_TIMEOUT_MS (3 * 1000)

@@ -1093,7 +1095,6 @@ void btm_read_remote_ext_features_failed(uint8_t status, uint16_t handle) {
 *
 ******************************************************************************/
void btm_establish_continue(tACL_CONN* p_acl_cb) {
  tBTM_BL_EVENT_DATA evt_data;
  BTM_TRACE_DEBUG("btm_establish_continue");
#if (BTM_BYPASS_EXTRA_ACL_SETUP == FALSE)
  if (p_acl_cb->transport == BT_TRANSPORT_BR_EDR) {
@@ -1113,18 +1114,8 @@ void btm_establish_continue(tACL_CONN* p_acl_cb) {
  }
  p_acl_cb->link_up_issued = true;

  /* If anyone cares, tell them that the database changed */
  if (btm_cb.acl_cb_.p_bl_changed_cb) {
    evt_data.event = BTM_BL_CONN_EVT;
    evt_data.conn.p_bda = &p_acl_cb->remote_addr;
    evt_data.conn.p_bdn = p_acl_cb->remote_name;
    evt_data.conn.p_dc = p_acl_cb->remote_dc;
    evt_data.conn.p_features = p_acl_cb->peer_lmp_feature_pages[0];
    evt_data.conn.handle = p_acl_cb->hci_handle;
    evt_data.conn.transport = p_acl_cb->transport;

    (*btm_cb.acl_cb_.p_bl_changed_cb)(&evt_data);
  }
  BTA_dm_acl_up(p_acl_cb->remote_addr, p_acl_cb->transport,
                p_acl_cb->hci_handle);
}

/*******************************************************************************