merge in lmp-mr1-nova-release history after reset to lmp-mr1-dev
diff --git a/bta/gatt/bta_gattc_cache.c b/bta/gatt/bta_gattc_cache.c
index 65026ba..db9ebb6 100644
--- a/bta/gatt/bta_gattc_cache.c
+++ b/bta/gatt/bta_gattc_cache.c
@@ -40,7 +40,7 @@
 static void bta_gattc_char_dscpt_disc_cmpl(UINT16 conn_id, tBTA_GATTC_SERV *p_srvc_cb);
 static tBTA_GATT_STATUS bta_gattc_sdp_service_disc(UINT16 conn_id, tBTA_GATTC_SERV *p_server_cb);
 
-#define BTA_GATT_SDP_DB_SIZE 750
+#define BTA_GATT_SDP_DB_SIZE 4096
 
 /*****************************************************************************
 **  Constants
diff --git a/stack/sdp/sdp_api.c b/stack/sdp/sdp_api.c
index 9b3628c..533b61b 100644
--- a/stack/sdp/sdp_api.c
+++ b/stack/sdp/sdp_api.c
@@ -526,10 +526,10 @@
 
                     }
 
-                    if ((SDP_DISC_ATTR_TYPE(p_sattr->attr_len_type) == UUID_DESC_TYPE)
-                        && (SDP_DISC_ATTR_LEN(p_sattr->attr_len_type) == 2)
+                    if (SDP_DISC_ATTR_TYPE(p_sattr->attr_len_type) == UUID_DESC_TYPE && (service_uuid == 0
+                        || (SDP_DISC_ATTR_LEN(p_sattr->attr_len_type) == 2
+                            && p_sattr->attr_value.v.u16 == service_uuid)))
                         /* for a specific uuid, or any one */
-                        && ((p_sattr->attr_value.v.u16 == service_uuid) || service_uuid == 0))
                     {
                         return(p_rec);
                     }