Merge "HID: Reduce the initial sniff latency for specific IOT devices" into bt.lnx.5.0
diff --git a/system_bt_ext/bta/tws_plus/ag/bta_ag_twsp_dev.cc b/system_bt_ext/bta/tws_plus/ag/bta_ag_twsp_dev.cc
index d2c25c4..7068c15 100644
--- a/system_bt_ext/bta/tws_plus/ag/bta_ag_twsp_dev.cc
+++ b/system_bt_ext/bta/tws_plus/ag/bta_ag_twsp_dev.cc
@@ -596,6 +596,11 @@
     int i;
     char* p;
 
+    if (p_s == NULL) {
+        APPL_TRACE_ERROR("%s: Invalid Argument", __func__);
+        return false;
+    }
+
     for (i = 0; i < 2; i++) {
         /* skip to comma delimiter */
         for (p = p_s; *p != ',' && *p != 0; p++)
diff --git a/system_bt_ext/btconfigstore/bt_configstore.cc b/system_bt_ext/btconfigstore/bt_configstore.cc
index ffb82c7..0e05453 100644
--- a/system_bt_ext/btconfigstore/bt_configstore.cc
+++ b/system_bt_ext/btconfigstore/bt_configstore.cc
@@ -373,6 +373,7 @@
         LOG_INFO(LOG_TAG, "%s:: prop type: %s, prop value: %s", __func__,
                 convertPropTypeToStringFormat(vProp.type), vProp.value);
         vPropList.push_back(vProp);
+
         vProp.type = BT_PROP_A2DP_MCAST_TEST;
         strlcpy(vProp.value,
                 config_get_string(config, section_name, "a2dpMcastSupported", "null"),
@@ -380,6 +381,14 @@
         LOG_INFO(LOG_TAG, "%s:: prop type: %s, prop value: %s", __func__,
                 convertPropTypeToStringFormat(vProp.type), vProp.value);
         vPropList.push_back(vProp);
+
+        vProp.type = BT_PROP_TWSP_STATE;
+        strlcpy(vProp.value,
+                config_get_string(config, section_name, "twspStateSupported", "null"),
+                sizeof(vProp.value));
+        LOG_INFO(LOG_TAG, "%s:: prop type: %s, prop value: %s", __func__,
+                convertPropTypeToStringFormat(vProp.type), vProp.value);
+        vPropList.push_back(vProp);
         break;
 
       case BT_PROP_SOC_TYPE:
@@ -441,6 +450,16 @@
         vPropList.push_back(vProp);
         break;
 
+      case BT_PROP_TWSP_STATE:
+        vProp.type = BT_PROP_TWSP_STATE;
+        strlcpy(vProp.value,
+                config_get_string(config, section_name, "twspStateSupported", "null"),
+                sizeof(vProp.value));
+        LOG_INFO(LOG_TAG, "%s:: prop type: %s, prop value: %s", __func__,
+                convertPropTypeToStringFormat(vProp.type), vProp.value);
+        vPropList.push_back(vProp);
+        break;
+
       default:
         LOG_INFO(LOG_TAG, "%s:: prop type not handled %d", __func__, vPropType);
         config_free(config);
diff --git a/system_bt_ext/btconfigstore/bt_configstore.conf b/system_bt_ext/btconfigstore/bt_configstore.conf
index 84ce385..b52fb64 100644
--- a/system_bt_ext/btconfigstore/bt_configstore.conf
+++ b/system_bt_ext/btconfigstore/bt_configstore.conf
@@ -19,6 +19,8 @@
 # Wipower Support  - true(default) or false
 wiPowerSupported = true
 
+# TWS+ state processing
+twspStateSupported = false;
 #=================================================================================================#
 # platform configuration
 [platform2]
@@ -41,6 +43,8 @@
 # Wipower Support  - true(default) or false
 wiPowerSupported = true
 
+# TWS+ state processing
+twspStateSupported = false;
 #=================================================================================================#
 # platform configuration
 [platform3]
@@ -63,6 +67,8 @@
 # Wipower Support  - true(default) or false
 wiPowerSupported = true
 
+# TWS+ state processing
+twspStateSupported = false;
 #=================================================================================================#
 # platform configuration
 [platform4]
@@ -85,6 +91,8 @@
 # Wipower Support  - true(default) or false
 wiPowerSupported = true
 
+# TWS+ state processing
+twspStateSupported = false;
 #=================================================================================================#
 # platform configuration
 [platform5]
@@ -131,6 +139,9 @@
 
 #A2dp Multicast support
 a2dpMcastSupported = false;
+
+# TWS+ state processing
+twspStateSupported = false;
 #=================================================================================================#
 # platform configuration
 [platform7]
@@ -249,4 +260,4 @@
 aacFrameCtlEnabled = false
 
 # Wipower Support  - true or false (default)
-wiPowerSupported = false
\ No newline at end of file
+wiPowerSupported = false