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

Commit ffa22f65 authored by Chris Manton's avatar Chris Manton
Browse files

Use stack/acl/btm_acl::on_acl_br_edr_{success,failed}

Try not to re-converge divergent code paths

Bug: 163134718
Tag: #refactor
Test: compile & verify basic functions working

Change-Id: I9f3abe06f0ee276af583fbcb715f198710f48fec
parent 9920ee6d
Loading
Loading
Loading
Loading
+5 −17
Original line number Diff line number Diff line
@@ -2729,23 +2729,11 @@ void on_acl_br_edr_failed(const RawAddress& bda, tHCI_STATUS status) {

void btm_acl_connected(const RawAddress& bda, uint16_t handle,
                       tHCI_STATUS status, uint8_t enc_mode) {
  btm_sec_connected(bda, handle, status, enc_mode);
  btm_acl_set_paging(false);
  l2c_link_hci_conn_comp(status, handle, bda);

  /*
   * The legacy code path informs the upper layer via the BTA
   * layer after all relevant read_remote_ commands are complete.
   * The GD code path has ownership of the read_remote_ commands
   * and thus may inform the upper layers about the connection.
   */
  if (bluetooth::shim::is_gd_acl_enabled()) {
    tACL_CONN* p_acl = internal_.acl_get_connection_from_handle(handle);
    if (p_acl != nullptr) {
      NotifyAclLinkUp(*p_acl);
    } else {
      LOG_WARN("Unable to find active acl");
    }
  switch (status) {
    case HCI_SUCCESS:
      return on_acl_br_edr_connected(bda, handle, enc_mode);
    default:
      return on_acl_br_edr_failed(bda, status);
  }
}