summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChiou-Hao Hsu <chsu@codeaurora.org>2015-07-29 20:46:01 -0700
committerChiou-Hao Hsu <chsu@codeaurora.org>2015-07-29 20:47:46 -0700
commit4b44baa5d02cee5c29ae32cd8fb465099f39f722 (patch)
tree53cf4df9140afd5a48f14429ccef51ef7128c8a0
parentd072ca57378454beaba0a92614b040973fb2328f (diff)
parent33146d4bc84df1c1e493ef165da7a9ae77dfd3ae (diff)
downloadandroid_hardware_qcom_bt-4b44baa5d02cee5c29ae32cd8fb465099f39f722.tar.gz
android_hardware_qcom_bt-4b44baa5d02cee5c29ae32cd8fb465099f39f722.tar.bz2
android_hardware_qcom_bt-4b44baa5d02cee5c29ae32cd8fb465099f39f722.zip
Merge tag 'AU_LINUX_ANDROID_LA.HB.1.1.1.05.01.01.063.342' into HEAD
* commit '33146d4bc84df1c1e493ef165da7a9ae77dfd3ae': Bluetooth: Add system permission for wcnss_filter Conflicts: libbt-vendor/src/bt_vendor_qcom.c Change-Id: I12f51b4807f207d85b7f420efa978e517c320c6e
-rw-r--r--libbt-vendor/Android.mk4
-rw-r--r--libbt-vendor/src/bt_vendor_qcom.c18
2 files changed, 17 insertions, 5 deletions
diff --git a/libbt-vendor/Android.mk b/libbt-vendor/Android.mk
index 21b6102..a12feb0 100644
--- a/libbt-vendor/Android.mk
+++ b/libbt-vendor/Android.mk
@@ -38,6 +38,10 @@ ifeq ($(BOARD_HAS_QCA_BT_ROME),true)
LOCAL_CFLAGS += -DBT_SOC_TYPE_ROME
endif
+ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
+LOCAL_CFLAGS += -DPANIC_ON_SOC_CRASH
+endif
+
LOCAL_C_INCLUDES += \
$(LOCAL_PATH)/include \
external/bluetooth/bluedroid/hci/include \
diff --git a/libbt-vendor/src/bt_vendor_qcom.c b/libbt-vendor/src/bt_vendor_qcom.c
index 083e53f..e853f77 100644
--- a/libbt-vendor/src/bt_vendor_qcom.c
+++ b/libbt-vendor/src/bt_vendor_qcom.c
@@ -42,6 +42,13 @@
#include "bt_vendor_lib.h"
#define WAIT_TIMEOUT 200000
#define BT_VND_OP_GET_LINESPEED 12
+
+#ifdef PANIC_ON_SOC_CRASH
+#define BT_VND_FILTER_START "wc_transport.start_root"
+#else
+#define BT_VND_FILTER_START "wc_transport.start_hci"
+#endif
+
/******************************************************************************
** Externs
******************************************************************************/
@@ -265,14 +272,14 @@ void stop_hci_filter() {
char value[PROPERTY_VALUE_MAX] = {'\0'};
ALOGV("%s: Entry ", __func__);
- property_get("wc_transport.start_hci", value, "false");
+ property_get(BT_VND_FILTER_START, value, "false");
if (strcmp(value, "false") == 0) {
ALOGI("%s: hci_filter has been stopped already", __func__);
// return;
}
- property_set("wc_transport.start_hci", "false");
+ property_set(BT_VND_FILTER_START, "false");
property_set("wc_transport.hci_filter_status", "0");
ALOGV("%s: Exit ", __func__);
}
@@ -282,8 +289,7 @@ void start_hci_filter() {
int i, init_success = 0;
char value[PROPERTY_VALUE_MAX] = {'\0'};
-
- property_get("wc_transport.start_hci", value, false);
+ property_get(BT_VND_FILTER_START, value, false);
if (strcmp(value, "true") == 0) {
ALOGI("%s: hci_filter has been started already", __func__);
@@ -291,8 +297,10 @@ void start_hci_filter() {
}
property_set("wc_transport.hci_filter_status", "0");
+ property_set(BT_VND_FILTER_START, "true");
+
+ ALOGV("%s: %s set to true ", __func__, BT_VND_FILTER_START );
- property_set("wc_transport.start_hci", "true");
//sched_yield();
for(i=0; i<45; i++) {
property_get("wc_transport.hci_filter_status", value, "0");