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

Commit 22d429e3 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "GD Scan: Update btm_cb.ble_ctr_cb when scan" into tm-dev am: 3003b6e3 am: 40fcf61a

parents 0bec627e 40fcf61a
Loading
Loading
Loading
Loading
+0 −1
Original line number Original line Diff line number Diff line
@@ -434,7 +434,6 @@ struct le_impl : public bluetooth::hci::LeAddressManagerCallback {
    connection->supervision_timeout_ = supervision_timeout;
    connection->supervision_timeout_ = supervision_timeout;
    connection->local_resolvable_private_address_ = connection_complete.GetLocalResolvablePrivateAddress();
    connection->local_resolvable_private_address_ = connection_complete.GetLocalResolvablePrivateAddress();
    connection->peer_resolvable_private_address_ = connection_complete.GetPeerResolvablePrivateAddress();
    connection->peer_resolvable_private_address_ = connection_complete.GetPeerResolvablePrivateAddress();
    connection_complete.GetLocalResolvablePrivateAddress();
    connections.add(
    connections.add(
        handle, remote_address, queue_down_end, handler_, connection->GetEventCallbacks([this](uint16_t handle) {
        handle, remote_address, queue_down_end, handler_, connection->GetEventCallbacks([this](uint16_t handle) {
          this->connections.invalidate(handle);
          this->connections.invalidate(handle);
+18 −1
Original line number Original line Diff line number Diff line
@@ -110,6 +110,8 @@ class DefaultScanningCallback : public ::ScanningCallbacks {
    static_cast<::ScanningCallbacks*>(&default_scanning_callback_);
    static_cast<::ScanningCallbacks*>(&default_scanning_callback_);
extern ::ScanningCallbacks* bluetooth::shim::default_scanning_callback;
extern ::ScanningCallbacks* bluetooth::shim::default_scanning_callback;


extern tBTM_CB btm_cb;

extern void btm_ble_process_adv_pkt_cont_for_inquiry(
extern void btm_ble_process_adv_pkt_cont_for_inquiry(
    uint16_t event_type, tBLE_ADDR_TYPE address_type,
    uint16_t event_type, tBLE_ADDR_TYPE address_type,
    const RawAddress& raw_address, uint8_t primary_phy, uint8_t secondary_phy,
    const RawAddress& raw_address, uint8_t primary_phy, uint8_t secondary_phy,
@@ -146,11 +148,16 @@ void BleScannerInterfaceImpl::Unregister(int scanner_id) {


  /** Start or stop LE device scanning */
  /** Start or stop LE device scanning */
void BleScannerInterfaceImpl::Scan(bool start) {
void BleScannerInterfaceImpl::Scan(bool start) {
  LOG(INFO) << __func__ << " in shim layer";
  LOG(INFO) << __func__ << " in shim layer " <<  ((start) ? "started" : "stopped");
  bluetooth::shim::GetScanning()->Scan(start);
  bluetooth::shim::GetScanning()->Scan(start);
  BTM_LogHistory(
  BTM_LogHistory(
      kBtmLogTag, RawAddress::kEmpty,
      kBtmLogTag, RawAddress::kEmpty,
      base::StringPrintf("Le scan %s", (start) ? "started" : "stopped"));
      base::StringPrintf("Le scan %s", (start) ? "started" : "stopped"));
  if (start) {
    btm_cb.ble_ctr_cb.set_ble_observe_active();
  } else {
    btm_cb.ble_ctr_cb.reset_ble_observe();
  }
  do_in_jni_thread(FROM_HERE,
  do_in_jni_thread(FROM_HERE,
                   base::Bind(&BleScannerInterfaceImpl::AddressCache::init,
                   base::Bind(&BleScannerInterfaceImpl::AddressCache::init,
                              base::Unretained(&address_cache_)));
                              base::Unretained(&address_cache_)));
@@ -238,6 +245,16 @@ void BleScannerInterfaceImpl::SetScanParameters(int scanner_id,
                                                int scan_interval,
                                                int scan_interval,
                                                int scan_window, Callback cb) {
                                                int scan_window, Callback cb) {
  LOG(INFO) << __func__ << " in shim layer";
  LOG(INFO) << __func__ << " in shim layer";
  tBTM_BLE_INQ_CB* p_cb = &btm_cb.ble_ctr_cb.inq_var;
  if (BTM_BLE_ISVALID_PARAM(scan_interval, BTM_BLE_SCAN_INT_MIN,
                            BTM_BLE_EXT_SCAN_INT_MAX) &&
      BTM_BLE_ISVALID_PARAM(scan_window, BTM_BLE_SCAN_WIN_MIN,
                            BTM_BLE_EXT_SCAN_WIN_MAX)) {
    p_cb->scan_type = BTM_BLE_SCAN_MODE_ACTI;
    p_cb->scan_interval = scan_interval;
    p_cb->scan_window = scan_window;
  }

  // use active scan
  // use active scan
  auto scan_type = static_cast<bluetooth::hci::LeScanType>(0x01);
  auto scan_type = static_cast<bluetooth::hci::LeScanType>(0x01);
  bluetooth::shim::GetScanning()->SetScanParameters(scanner_id, scan_type,
  bluetooth::shim::GetScanning()->SetScanParameters(scanner_id, scan_type,