diff --git a/btif/src/btif_dm.c b/btif/src/btif_dm.c
index 1f3893e..1131c98 100644
--- a/btif/src/btif_dm.c
+++ b/btif/src/btif_dm.c
@@ -2574,6 +2574,31 @@
 
 /*******************************************************************************
 **
+** Function         btif_dm_get_remote_services_transport
+**
+** Description      Start SDP to get remote services by transport
+**
+** Returns          bt_status_t
+**
+*******************************************************************************/
+bt_status_t btif_dm_get_remote_services_by_transport(bt_bdaddr_t *remote_addr, const int transport)
+{
+    BTIF_TRACE_EVENT("%s", __func__);
+
+    /* Set the mask extension */
+    tBTA_SERVICE_MASK_EXT mask_ext;
+    mask_ext.num_uuid = 0;
+    mask_ext.p_uuid = NULL;
+    mask_ext.srvc_mask = BTA_ALL_SERVICE_MASK;
+
+    BTA_DmDiscoverByTransport(remote_addr->address, &mask_ext,
+                   bte_dm_search_services_evt, TRUE, transport);
+
+    return BT_STATUS_SUCCESS;
+}
+
+/*******************************************************************************
+**
 ** Function         btif_dm_get_remote_service_record
 **
 ** Description      Start SDP to get remote service record
@@ -2879,7 +2904,7 @@
             btif_dm_save_ble_bonding_keys();
         }
         BTA_GATTC_Refresh(bd_addr.address);
-        btif_dm_get_remote_services(&bd_addr);
+        btif_dm_get_remote_services_by_transport(&bd_addr, BTA_GATT_TRANSPORT_LE);
     }
     else
     {
