summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZach Johnson <zachoverflow@google.com>2014-09-24 17:27:25 -0700
committerAndre Eisenbach <eisenbach@google.com>2015-03-16 16:51:35 -0700
commit96363ff2b78c10e2b2e106464f337b58ec1a616a (patch)
tree873760e07b09bd8f421b0918a5af45959432b210
parent9b0fbce37260e69cb116be1cdcbceb1f43bf9346 (diff)
downloadandroid_system_bt-96363ff2b78c10e2b2e106464f337b58ec1a616a.tar.gz
android_system_bt-96363ff2b78c10e2b2e106464f337b58ec1a616a.tar.bz2
android_system_bt-96363ff2b78c10e2b2e106464f337b58ec1a616a.zip
Modulizification of bt_utils
-rw-r--r--btif/src/btif_core.c2
-rw-r--r--btif/src/stack_manager.c4
-rw-r--r--utils/Android.mk2
-rw-r--r--utils/include/bt_utils.h3
-rw-r--r--utils/src/bt_utils.c59
5 files changed, 34 insertions, 36 deletions
diff --git a/btif/src/btif_core.c b/btif/src/btif_core.c
index 96cd8fbe1..529f54e42 100644
--- a/btif/src/btif_core.c
+++ b/btif/src/btif_core.c
@@ -617,8 +617,6 @@ bt_status_t btif_shutdown_bluetooth(void)
btif_dut_mode = 0;
- bt_utils_cleanup();
-
BTIF_TRACE_DEBUG("%s done", __FUNCTION__);
return BT_STATUS_SUCCESS;
diff --git a/btif/src/stack_manager.c b/btif/src/stack_manager.c
index a95ef10ee..f017b999e 100644
--- a/btif/src/stack_manager.c
+++ b/btif/src/stack_manager.c
@@ -32,6 +32,7 @@
// Temp includes
#include "btif_config.h"
+#include "bt_utils.h"
static thread_t *management_thread;
@@ -91,7 +92,7 @@ static void event_init_stack(void *context) {
if (!stack_is_initialized) {
module_management_start();
- bt_utils_init();
+ module_init(get_module(BT_UTILS_MODULE));
module_init(get_module(BTIF_CONFIG_MODULE));
btif_init_bluetooth();
@@ -179,6 +180,7 @@ static void event_clean_up_stack(UNUSED_ATTR void *context) {
btif_shutdown_bluetooth();
module_clean_up(get_module(BTIF_CONFIG_MODULE));
+ module_clean_up(get_module(BT_UTILS_MODULE));
future_await(hack_future);
module_management_stop();
diff --git a/utils/Android.mk b/utils/Android.mk
index fb337bb42..4bbeaea85 100644
--- a/utils/Android.mk
+++ b/utils/Android.mk
@@ -4,7 +4,9 @@ include $(CLEAR_VARS)
LOCAL_C_INCLUDES := \
$(LOCAL_PATH)/include \
+ $(LOCAL_PATH)/../btcore/include \
$(LOCAL_PATH)/../gki/ulinux \
+ $(LOCAL_PATH)/../osi/include \
$(bdroid_C_INCLUDES)
LOCAL_CFLAGS += $(bdroid_CFLAGS) -std=c99
diff --git a/utils/include/bt_utils.h b/utils/include/bt_utils.h
index f2bd2edd9..7c112cecd 100644
--- a/utils/include/bt_utils.h
+++ b/utils/include/bt_utils.h
@@ -38,8 +38,7 @@ typedef enum {
** Functions
********************************************************************************/
-void bt_utils_init();
-void bt_utils_cleanup();
+#define BT_UTILS_MODULE "bt_utils_module"
void raise_priority_a2dp(tHIGH_PRIORITY_TASK high_task);
void adjust_priority_a2dp(int start);
#define UNUSED(x) (void)(x)
diff --git a/utils/src/bt_utils.c b/utils/src/bt_utils.c
index ab618b092..cf9fab730 100644
--- a/utils/src/bt_utils.c
+++ b/utils/src/bt_utils.c
@@ -41,7 +41,7 @@
#include "data_types.h"
#include "bt_utils.h"
-
+#include "module.h"
/*******************************************************************************
** Type definitions for callback functions
@@ -53,41 +53,38 @@ static int g_TaskIdx;
static int g_TaskIDs[TASK_HIGH_MAX];
#define INVALID_TASK_ID (-1)
-/*****************************************************************************
-**
-** Function bt_utils_init
-**
-** Description Initialize bluedroid util
-**
-** Returns void
-**
-*******************************************************************************/
-void bt_utils_init() {
- int i;
- pthread_mutexattr_t lock_attr;
+static future_t *init(void) {
+ int i;
+ pthread_mutexattr_t lock_attr;
- for(i = 0; i < TASK_HIGH_MAX; i++) {
- g_DoSchedulingGroupOnce[i] = PTHREAD_ONCE_INIT;
- g_DoSchedulingGroup[i] = TRUE;
- g_TaskIDs[i] = INVALID_TASK_ID;
- }
- pthread_mutexattr_init(&lock_attr);
- pthread_mutex_init(&gIdxLock, &lock_attr);
+ for(i = 0; i < TASK_HIGH_MAX; i++) {
+ g_DoSchedulingGroupOnce[i] = PTHREAD_ONCE_INIT;
+ g_DoSchedulingGroup[i] = TRUE;
+ g_TaskIDs[i] = INVALID_TASK_ID;
+ }
+
+ pthread_mutexattr_init(&lock_attr);
+ pthread_mutex_init(&gIdxLock, &lock_attr);
+ return NULL;
}
-/*****************************************************************************
-**
-** Function bt_utils_cleanup
-**
-** Description Clean up bluedroid util
-**
-** Returns void
-**
-*******************************************************************************/
-void bt_utils_cleanup() {
- pthread_mutex_destroy(&gIdxLock);
+static future_t *clean_up(void) {
+ pthread_mutex_destroy(&gIdxLock);
+ return NULL;
}
+const module_t bt_utils_module = {
+ .name = BT_UTILS_MODULE,
+ .init = init,
+ .start_up = NULL,
+ .shut_down = NULL,
+ .clean_up = clean_up,
+ .dependencies = {
+ NULL
+ }
+};
+
+
/*****************************************************************************
**
** Function check_do_scheduling_group