OSDN Git Service

Merge "Fix GATT Characteristic discovery (server side)" am: 1c0dae6145
authorJakub Pawlowski <jpawlowski@google.com>
Wed, 27 Sep 2017 19:07:04 +0000 (19:07 +0000)
committerandroid-build-merger <android-build-merger@google.com>
Wed, 27 Sep 2017 19:07:04 +0000 (19:07 +0000)
am: ea6c79daf4

Change-Id: I47feedd93dc1fd46eb7af73031a124e8f63063ad

bta/av/bta_av_cfg.cc
bta/av/bta_av_main.cc

index 688af45..10baa33 100644 (file)
@@ -84,7 +84,7 @@ const uint16_t bta_av_audio_flush_to[] = {
 #endif
 
 /*
- * If the number of event IDs is changed in this array, BTA_AV_NUM_RC_EVT_IDS
+ * If the number of event IDs is changed in this array, BTA_AV_ NUM_RC_EVT_IDS
  * also needs to be changed.
  */
 const uint8_t bta_av_meta_caps_evt_ids[] = {
@@ -96,7 +96,6 @@ const uint8_t bta_av_meta_caps_evt_ids[] = {
     AVRC_EVT_APP_SETTING_CHANGE,
     */
 };
-
 #ifndef BTA_AV_NUM_RC_EVT_IDS
 #define BTA_AV_NUM_RC_EVT_IDS \
   (sizeof(bta_av_meta_caps_evt_ids) / sizeof(bta_av_meta_caps_evt_ids[0]))
@@ -107,7 +106,6 @@ const uint8_t bta_avk_meta_caps_evt_ids[] = {
     AVRC_EVT_VOLUME_CHANGE,
 #endif
 };
-
 #ifndef BTA_AVK_NUM_RC_EVT_IDS
 #define BTA_AVK_NUM_RC_EVT_IDS \
   (sizeof(bta_avk_meta_caps_evt_ids) / sizeof(bta_avk_meta_caps_evt_ids[0]))
@@ -210,18 +208,18 @@ const tBTA_AV_CFG bta_av_cfg_compatibility = {
     48,                   /* AVRCP MTU at L2CAP for control channel */
     BTA_AV_MAX_RC_BR_MTU, /* AVRCP MTU at L2CAP for browsing channel */
 #endif
-    BTA_AV_RC_SUPF_CT, /* AVRCP controller categories */
-    AVRC_SUPF_TG_CAT1, /* Only support CAT1 for AVRCP1.3 */
-    672,               /* AVDTP signaling channel MTU at L2CAP */
-    BTA_AV_MAX_A2DP_MTU, /* AVDTP audio transport channel MTU at L2CAP
-                          */
+    BTA_AV_RC_SUPF_CT,     /* AVRCP controller categories */
+    AVRC_SUPF_TG_CAT1,     /* Only support CAT1 for AVRCP1.3 */
+    672,                   /* AVDTP signaling channel MTU at L2CAP */
+    BTA_AV_MAX_A2DP_MTU,   /* AVDTP audio transport channel MTU at L2CAP
+                            */
     bta_av_audio_flush_to, /* AVDTP audio transport channel flush
                               timeout */
-    6,                  /* AVDTP audio channel max data queue size */
-    BTA_AV_MAX_VDP_MTU, /* AVDTP video transport channel MTU at L2CAP */
-    600,                /* AVDTP video transport channel flush timeout */
-    false,              /* true, to accept AVRC 1.3 group nevigation command */
-    2,                  /* company id count in p_meta_co_ids */
+    6,                     /* AVDTP audio channel max data queue size */
+    BTA_AV_MAX_VDP_MTU,    /* AVDTP video transport channel MTU at L2CAP */
+    600,                   /* AVDTP video transport channel flush timeout */
+    false, /* true, to accept AVRC 1.3 group nevigation command */
+    2,     /* company id count in p_meta_co_ids */
     BTA_AV_NUM_RC_EVT_IDS_AVRCP13,    /* event id count for AVRCP1.3*/
     BTA_AV_RC_PASS_RSP_CODE,          /* the default response code for pass
                                          through commands */
index 0d7c360..c81ed8d 100644 (file)
 #define AVRCP_1_4_STRING "avrcp14"
 #endif
 
-#ifndef AVRCP_1_3_STRING
-#define AVRCP_1_3_STRING "avrcp13"
-#endif
-
 /* state machine states */
 enum { BTA_AV_INIT_ST, BTA_AV_OPEN_ST };
 
@@ -426,20 +422,11 @@ static void bta_av_api_register(tBTA_AV_DATA* p_data) {
   registr.app_id = p_data->api_reg.app_id;
   registr.chnl = (tBTA_AV_CHNL)p_data->hdr.layer_specific;
 
-  char avrcp_version[PROPERTY_VALUE_MAX] = {0};
-  osi_property_get(AVRCP_VERSION_PROPERTY, avrcp_version, AVRCP_1_4_STRING);
-  LOG_INFO(LOG_TAG, "AVRCP version used for sdp: \"%s\"", avrcp_version);
-
   uint16_t profile_initialized = p_data->api_reg.service_uuid;
   if (profile_initialized == UUID_SERVCLASS_AUDIO_SINK) {
     p_bta_av_cfg = (tBTA_AV_CFG*)&bta_avk_cfg;
   } else if (profile_initialized == UUID_SERVCLASS_AUDIO_SOURCE) {
     p_bta_av_cfg = (tBTA_AV_CFG*)&bta_av_cfg;
-
-    if (!strncmp(AVRCP_1_3_STRING, avrcp_version, sizeof(AVRCP_1_3_STRING))) {
-      LOG_INFO(LOG_TAG, "AVRCP 1.3 capabilites used");
-      p_bta_av_cfg = (tBTA_AV_CFG*)&bta_av_cfg_compatibility;
-    }
   }
 
   APPL_TRACE_DEBUG("%s: profile: 0x%x", __func__, profile_initialized);
@@ -492,15 +479,19 @@ static void bta_av_api_register(tBTA_AV_DATA* p_data) {
         uint16_t profile_version = AVRC_REV_1_0;
 
         if (profile_initialized == UUID_SERVCLASS_AUDIO_SOURCE) {
+          // This check can override the AVRCP profile version with a property
+          char avrcp_version[PROPERTY_VALUE_MAX] = {0};
+          osi_property_get(AVRCP_VERSION_PROPERTY, avrcp_version,
+                           AVRCP_1_4_STRING);
+          LOG_INFO(LOG_TAG, "AVRCP version used for sdp: \"%s\"",
+                   avrcp_version);
+
           if (!strncmp(AVRCP_1_6_STRING, avrcp_version,
                        sizeof(AVRCP_1_6_STRING))) {
             profile_version = AVRC_REV_1_6;
           } else if (!strncmp(AVRCP_1_5_STRING, avrcp_version,
                               sizeof(AVRCP_1_5_STRING))) {
             profile_version = AVRC_REV_1_5;
-          } else if (!strncmp(AVRCP_1_3_STRING, avrcp_version,
-                              sizeof(AVRCP_1_3_STRING))) {
-            profile_version = AVRC_REV_1_3;
           } else {
             profile_version = AVRC_REV_1_4;
           }