]> granicus.if.org Git - esp-idf/commitdiff
commponent bt:add bt_prf_task.c file for proceess the profile task event
authoryulong <yulong@yulong-mac.(none)>
Wed, 12 Oct 2016 07:38:26 +0000 (03:38 -0400)
committeryulong <yulong@yulong-mac.(none)>
Wed, 12 Oct 2016 07:38:26 +0000 (03:38 -0400)
add bt_prf_task.h for defined the data & struct used for the profile task
add prodile_sys.h defined the profile system data used for profile task
modified component.mk

components/bt/bluedroid/bta/sys/bta_sys_main.c
components/bt/bluedroid/profiles/core/bt_prf_task.c [new file with mode: 0644]
components/bt/bluedroid/profiles/core/include/bt_prf_task.h [new file with mode: 0644]
components/bt/bluedroid/profiles/core/include/profile_sys.h [new file with mode: 0644]
components/bt/component.mk

index c5a94648c38ff5ace63c7a8817d174db8af64029..48e1ecd007d9ce5f5d90081666d5603681577255 100755 (executable)
@@ -512,7 +512,7 @@ void bta_sys_event(BT_HDR *p_msg)
     UINT8       id;
     BOOLEAN     freebuf = TRUE;
 
-    APPL_TRACE_EVENT("BTA got event 0x%x", p_msg->event);
+    APPL_TRACE_EVENT("BTA got event 0x%x\n", p_msg->event);
 
     /* get subsystem id from event */
     id = (UINT8) (p_msg->event >> 8);
@@ -524,7 +524,7 @@ void bta_sys_event(BT_HDR *p_msg)
     }
     else
     {
-        APPL_TRACE_WARNING("BTA got unregistered event id %d", id);
+        APPL_TRACE_WARNING("BTA got unregistered event id %d\n", id);
     }
 
     if (freebuf)
diff --git a/components/bt/bluedroid/profiles/core/bt_prf_task.c b/components/bt/bluedroid/profiles/core/bt_prf_task.c
new file mode 100644 (file)
index 0000000..def36b1
--- /dev/null
@@ -0,0 +1,72 @@
+/**\r
+ ****************************************************************************************\r
+ *\r
+ * @file bt_prf_task.c\r
+ *\r
+ * @brief Application entry point\r
+ *\r
+ * Copyright (C) Espressif 2016\r
+ * Created by Yulong at 2016/10/11\r
+ *\r
+ *\r
+ ****************************************************************************************\r
+ */\r
+\r
+#include "bt_prf_task.h"\r
+#include "allocator.h"\r
+#include "thread.h"\r
+#include "gki.h"\r
+\r
+ //thread_t *bt_workqueue_thread;\r
+ //static const char *BT_WORKQUEUE_NAME = "bt_workqueue";\r
+ xTaskHandle  xProfileTaskHandle = NULL;\r
+ xQueueHandle xProfileQueue = 0;\r
+\r
+ // Communication queue between bt_proflie_task and app.\r
+ extern fixed_queue_t *bt_profile_msg_queue;\r
+\r
\r
+ /*****************************************************************************\r
+ **\r
+ ** Function            bt_prf_task_thread_handler\r
+ **\r
+ ** Description         Process profile Task Thread.\r
+ ******************************************************************************/\r
+ void bt_prf_task_thread_handler(void *arg)\r
+ {\r
+        //ke_event_clear(KE_EVENT_BTU_TASK_THREAD);\r
\r
+        TaskEvt_t *e;\r
\r
+        for (;;) {\r
+                if (pdTRUE == xQueueReceive(xProfileQueue, &e, (portTickType)portMAX_DELAY)) {\r
\r
+                        if (e->sig == SIG_BTU_WORK) {\r
+                                fixed_queue_process(bt_profile_msg_queue);\r
+                        }\r
+                        else if (e->sig == SIG_BTU_START_UP) {\r
+                                bt_prf_task_start_up();\r
+                        }\r
+                        osi_free(e); \r
+                }\r
+        }\r
+ }\r
+\r
+void bt_profile_msg_ready(fixed_queue_t *queue) {\r
+    BT_HDR *p_msg;
+
+    while (!fixed_queue_is_empty(queue)) {
+        p_msg = (BT_HDR *)fixed_queue_dequeue(queue);\r
+    }
+}\r
+\r
+\r
+void bt_prf_task_start_up(void)\r
+{\r
+        fixed_queue_register_dequeue(bt_profile_msg_queue, bt_profile_msg_ready);\r
+}\r
+\r
+\r
+\r
+\r
+\r
diff --git a/components/bt/bluedroid/profiles/core/include/bt_prf_task.h b/components/bt/bluedroid/profiles/core/include/bt_prf_task.h
new file mode 100644 (file)
index 0000000..6cb3090
--- /dev/null
@@ -0,0 +1,46 @@
+/**\r
+ ****************************************************************************************\r
+ *\r
+ * @file bt_prf_task.h\r
+ *\r
+ * @brief Application entry point\r
+ *\r
+ * Copyright (C) Espressif 2016\r
+ * Created by Yulong at 2016/10/11\r
+ *\r
+ *\r
+ ****************************************************************************************\r
+ */\r
+\r
+#include <stddef.h> \r
+#include "fixed_queue.h"\r
+\r
+#ifndef BT_PRF_TASK_H__\r
+#define BT_PRF_TASK_H__\r
+\r
+/* Functions provided by btu_core.c
+************************************
+*/\r
+\r
+\r
+void bt_prf_task_thread_handler(void *arg);\r
+\r
+void  bt_prf_init_core(void);\r
+void  bt_prf_free_core(void);\r
+
+void bt_prf_StartUp(void);\r
+void bt_prf_ShutDown(void);\r
+
+void bt_prf_task_start_up(void);\r
+void bt_prf_task_shut_down(void);\r
+\r
+void bt_profile_msg_ready(fixed_queue_t *queue);\r
+\r
+\r
+\r
+\r
+\r
+\r
+\r
+\r
+#endif         /// BT_PRF_TASK_H__\r
diff --git a/components/bt/bluedroid/profiles/core/include/profile_sys.h b/components/bt/bluedroid/profiles/core/include/profile_sys.h
new file mode 100644 (file)
index 0000000..8337b50
--- /dev/null
@@ -0,0 +1,33 @@
+/**\r
+ ****************************************************************************************\r
+ *\r
+ * @file profile_sys.h\r
+ *\r
+ * @brief Application entry point\r
+ *\r
+ * Copyright (C) Espressif 2016\r
+ * Created by Yulong at 2016/10/12\r
+ *\r
+ *\r
+ ****************************************************************************************\r
+ */\r
+\r
+#ifndef _PROFILE_SYS_H__\r
+#define _PROFILE_SYS_H__\r
+\r
+enum\r
+{\r
+       PRF_ID_SYS,\r
+       PRF_ID_CONN,\r
+       PRF_ID_HIDD_LE,\r
+       PRF_ID_HIDH_LE,\r
+       PRF_ID_DISS_LE,\r
+       PRF_ID_DISC_LE,\r
+       PRF_ID_AIRSYNC_LE,\r
+       PRF_ID_ANCC_LE,\r
+       PRF_ID_BUT_LE\r
+};\r
+\r
+\r
+\r
+#endif ///_PROFILE_SYS_H__
\ No newline at end of file
index cf2805bb7b904ab44e920b3e69e690e6c8aef401..65dc664345f48c46676dfba5a8f812befa2b9d06 100644 (file)
@@ -9,6 +9,7 @@ COMPONENT_ADD_INCLUDEDIRS :=    bluedroid/bta/include                   \
                                bluedroid/gki/include                   \
                                bluedroid/hci/include                   \
                                bluedroid/osi/include                   \
+                               bluedroid/profiles/core/include                 \
                                bluedroid/profiles/esp/include          \
                                bluedroid/profiles/std/avrc/include     \
                                bluedroid/profiles/std/battery/include  \
@@ -48,6 +49,7 @@ COMPONENT_SRCDIRS :=  bluedroid/bta/dm                        \
                        bluedroid/hci                           \
                        bluedroid/main                          \
                        bluedroid/osi                           \
+                       bluedroid/profiles/core         \
                        bluedroid/profiles/esp/ble_button       \
                        bluedroid/profiles/esp/wechat_AirSync   \
                        bluedroid/profiles/esp                  \