baohongde
ac124ee89c
components/bt: Point ACL RX buffer ptr to ACL RX buffer if ACL RX buffer ptr is null(backprot 3.1)
...
1. When WIFI task or other high priority task blocks the Bluetooth task, ACL RX buffer will use up, ACL RX buffer ptr will point to null and will never point to a valid adress. Causing errors in Bluetooth.
2. hcimsgs.h used whether flow control is on or off
2018-11-09 03:26:36 +00:00
Jiang Jiang Jian
c983bc4d12
Merge branch 'bugfix/btdm_controller_deinit_v3.1' into 'release/v3.1'
...
bt : fix bug that bluetooth controller init/disable/enable/disable may cause exception(backport v3.1)
See merge request idf/esp-idf!2865
2018-08-03 15:09:58 +08:00
Tian Hao
e5abec310d
bt : fix bug that bluetooth controller init/disable/enable/disable may cause exception
...
1. when one task do deinit/init/disable/enable, especially different cpu
core, it may cause controller crash in ISR handler
2. fix while BLE is scanning, bluetooth controller is disabled cause BLE
scan is not abort.
2018-08-01 20:08:40 +08:00
zhiweijian
b270638868
Component/bt: fix hci_hal_env.rx_q and xHciH4Queue blocking when scanning
2018-08-01 15:10:28 +08:00
wangmengyang
ea30c54cda
component/bt: bugfix for erroneous data reporting always enabled
2018-07-11 20:08:36 +08:00
baohongde
f406174be5
component/bt: Add Controller to Host Flow Control into v3.1
...
A cherry-pick of MR !2493
2018-06-25 20:38:21 +08:00
wangmengyang
4c4e143a2f
component/bt: implement HFP Hands Free Unit Role
2018-05-21 11:33:30 +08:00
Hrishikesh Dhayagude
da6cb6c741
components/bt: Improve the Bluetooth debug messaging scheme
...
As of now, when Bluetooth debugs are enabled, all the messages are
mapped to BT_PRINTF which is mapped to ESP_LOGE. Hence, make monitor
shows all logs in red color which might lead to missing the actual
errors
This patch maps the Bluetooth messages to appropriate ESP_LOG* messages
and improves readability.
Also, make the BT trace level be configurable in menuconfig, so that
each layer of bt trace can be enabled/disabled.
Finally, add debug log control for BTC, OSI, BLUFI and clear up
Bluetooth debug logs.
So, with this the method of enabling Bluetooth logs is as follows:
1. make menuconfig -> Component config -> Bluetooth -> Bluedroid Enable
-> BT DEBUG LOG LEVEL -> set trace level for every layer of BT
Signed-off-by: Hrishikesh Dhayagude <hrishi@espressif.com>
2018-05-14 20:45:05 +08:00
Tian Hao
adada3f67e
component/bt : modify header files to avoid conflict
...
1. add the L1 include path with a prefix, such like osi/list.h, stack/a2d_api.h and etc.
2. modify component, only bluedroid/api/include/api is export to another component and application,
other include path just for bluedroid used
3. put bluedroid/include into common/include/common, so the root directory of bluedroid have no include path.
4. modify doxygen to use esp_bt.h and redirect to
component/bt/bluedroid/api/include/api/
fix compile
2018-04-26 19:32:06 +08:00
zhiweijian
6b6e0410f8
Component/bt: send data length request by host after read feature complete
2017-12-12 18:28:59 +08:00
Tian Hao
583dceb69b
component/btdm : change bt.h name to esp_bt.h to form the name prefix
2017-12-08 10:33:50 +08:00
wangmengyang
53273172fe
component/bt: modify the implementation and interface of osi_alarm module
...
1. use esp_timer instead of FreeRTOS timer to implement osi_alarm in bluedroid
2. Remove two APIs: osi_alarm_now() and osi_alarm_time_diff() and modify the hci layer logic that use them
3. Implement osi_alarm_get_remaining_ms()
4. Move the definition of struct alarm_t in source file "alarm.c"
5. Add definition of module error code
2017-11-10 11:53:55 +08:00
Tian Hao
85eb5d4374
component/bt : fix bug of sw interrupt cause to run btdm to different cpu core.
...
1. add sw interrupt cause osi to controller.
2. modify the kconfig to improve the option view.
3. add option of the cpu core which bluedroid run.
4. add option of the cpu core which bluetooth controller run.
2017-10-24 16:13:58 +08:00
zhiweijian
8921a36828
Component/bt: fix bug for gatts notify stress test crash
2017-09-13 11:19:58 +08:00
Angus Gratton
48333aea48
bluedroid: Move fixed_queue.h to implementation of hci_layer.c
...
Avoids pulling types like list_node into the public interface.
Closes https://github.com/espressif/esp-idf/issues/948
2017-09-05 17:14:40 +10:00
Tian Hao
e4f63819a1
component/bt : remove all GKI reference
...
1. remove GKI(not use osi_free_and_reset)
2. modify mutex/semaphore to individual directory
3. set osi_malloc as malloc(previously use calloc)
4. change osi allocator debug osi_free
5. fix rebase of remove GKI
2017-08-23 15:29:30 +08:00
Tian Hao
d2872cbf2e
component/bt : remove fixed queue from btu
2017-08-01 11:35:22 +08:00
Tian Hao
808b07799c
component/bt : fix task post bug && fix controller init protection
...
1. fix bluedroid task post to blocking.
2. use semphore protect btdm controller task when be called from higher priority task
2017-06-13 17:14:50 +08:00
jack
fc130fba86
fix bug that files missing commit in MR 773
2017-05-31 19:37:39 +08:00
Yulong
bc807a18d1
component/bt:Finish all the separate code from BT & BLE
2017-04-20 07:18:05 -04:00
wangmengyang
b503d68045
component/bt: implement classic Bluetooth profiles A2DP(sink) and AVRCP(controller)
2017-04-12 16:42:14 +08:00
wangmengyang
6cb9985e5d
component/bt: merge the HCI packet reassemble logic modification
2017-03-14 15:34:56 +08:00
wangmengyang
17696bc679
component/bt: resolve the differences with ESP-IDF master branch
2017-03-13 21:28:53 +08:00
wangmengyang
41070f6768
Merge branch 'master' into feature/btdm_avrc
...
1. merge master into feature/btdm_avrc
2. add call of esp_bt_controller_enable() in app_main
2017-02-23 15:10:25 +08:00
Tian Hao
6648ff427c
component/bt : fix connection bug of Iphone7 10.0.2
...
This connection error caused by iPhone, it think that TX data length must large than 27 when slave support EXTEND_DATA_LENGTH. But this should be allow. Besides, the problem cannot be found on higher version of Iphone7, apple seemed to have fixed it.
Actually maybe other BLE device have the same problem.
2017-02-16 14:15:46 +08:00
wangmengyang
49b68c38fa
Merge branch 'master' into feature/btdm_avrc
...
# Conflicts:
# components/bt/bluedroid/hci/packet_fragmenter.c
# components/bt/bluedroid/stack/include/gatt_api.h
2017-01-17 10:36:26 +08:00
Wu Jian Gang
ad1790fe3e
Merge branch 'feature/btdm_attr_table' into 'master'
...
component bt:Added the create attribute table method to the new API
GATT Server service table APIs.
Have already modify the style and other things as @jeroen suggestion in other MR(the MR have been closed)
See merge request !399
2017-01-12 17:31:39 +08:00
Tian Hao
1eed54c7cd
component/bt : modify bluedroid task to core0
2017-01-11 17:19:25 +08:00
Yulong
d512d6100c
component bt:Added the create attribute table method to the new API
2017-01-11 16:57:19 +08:00
Tian Hao
24af07fd13
component/bt : new blufi
...
1. new blufi protocol
2. new blufi demo
3. support security
4. support sta/ap/sta_ap
5. support wpa-enterprise
2017-01-05 20:22:35 +08:00
wangmengyang
2e7748d625
component/bt: modify bluetooth API
...
1. VHCI api and doxygen
2. Controller api and doxygen
3. bluedroid init/enable api and doxygen
4. cleanup demo codes
2017-01-05 20:02:06 +08:00
Angus Gratton
06e03ff52e
Replace backwards-compatible portTICK_RATE_MS with FreeRTOS v8+ portTICK_PERIOD_MS
...
Closes github #51 https://github.com/espressif/esp-idf/issues/51
2016-12-28 10:23:13 +11:00
wangmengyang
c94e0177c2
component/bt: Merge branch 'master' into feature/btdm_a2dp
2016-12-26 20:35:28 +08:00
Tian Hao
69ee1de9fa
component/bt : fix enable bug
...
1. enable will cause exception with list->head memory modify
2. gatt complete, timeout with HCI cmd timeout will cause exception
2016-12-14 22:10:21 +08:00
Tian Hao
7ae7a56457
component/bt : fix the bug of deinit/disable
...
1. fix the exception of deinit/disable
2. debug mem leak of deinit, fix some memleak, but still something wrong.
3. debug men leak of disable.
4. add bluedroid memory debug
2016-12-14 22:10:21 +08:00
Tian Hao
5933ebc6b6
component/bt : cleanup all the "-W-no-xx" and all the warnings
...
1. cleanup the warnings.
2. fix the some function called in gap
3. fix some code in btc_main
2016-12-07 13:49:53 -08:00
wangmengyang
50227f12fd
Merge branch 'feature/btdm_bluedroid' into feature/btdm_a2dp
...
# Conflicts:
# components/bt/bluedroid/bta/include/bta_api.h
# components/bt/bluedroid/bta/include/bta_gattc_int.h
# components/bt/bluedroid/hci/hci_hal_h4.c
# components/bt/bluedroid/hci/hci_layer.c
# components/bt/bluedroid/include/bt_target.h
# components/bt/bluedroid/stack/btu/btu_init.c
2016-11-28 18:06:24 +08:00
wangmengyang
2c577b1360
component/bt: reduce bt tasks' stack size
2016-11-26 16:46:52 +08:00
Tian Hao
1173106a20
component/bt : change task to decease dram(heap)
...
1. decrease the task size(HCI cannot < 1024, btu cannot < 4096)
2. btc task can config by menuconfig(default 2048)
2016-11-25 23:37:46 +08:00
wangmengyang
73f00732cf
Merge branch 'feature/btdm_bluedroid' into feature/btdm_a2dp
...
# Conflicts:
# components/bt/bluedroid/bta/sys/bta_sys_main.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_api.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_bld_ct.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_bld_tg.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_opt.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_pars_ct.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_pars_tg.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_sdp.c
# components/bt/bluedroid/btc/profile/std/avrc/avrc_utils.c
# components/bt/bluedroid/btc/profile/std/avrc/include/avrc_int.h
# components/bt/bluedroid/btc/profile/std/include/avct_api.h
# components/bt/bluedroid/btc/profile/std/include/avdt_api.h
# components/bt/bluedroid/btc/profile/std/include/avdt_defs.h
# components/bt/bluedroid/btc/profile/std/include/avdtc_api.h
# components/bt/bluedroid/btc/profile/std/include/avrc_api.h
# components/bt/bluedroid/btc/profile/std/include/avrc_defs.h
# components/bt/bluedroid/gki/gki_buffer.c
# components/bt/bluedroid/hci/hci_hal_h4.c
# components/bt/bluedroid/hci/hci_layer.c
# components/bt/bluedroid/hci/packet_fragmenter.c
# components/bt/bluedroid/include/bt_trace.h
# components/bt/bluedroid/osi/alarm.c
# components/bt/bluedroid/profiles/std/avrc/avrc_api.c
# components/bt/bluedroid/profiles/std/avrc/avrc_bld_ct.c
# components/bt/bluedroid/profiles/std/avrc/avrc_bld_tg.c
# components/bt/bluedroid/profiles/std/avrc/avrc_opt.c
# components/bt/bluedroid/profiles/std/avrc/avrc_pars_ct.c
# components/bt/bluedroid/profiles/std/avrc/avrc_pars_tg.c
# components/bt/bluedroid/profiles/std/avrc/avrc_sdp.c
# components/bt/bluedroid/profiles/std/avrc/avrc_utils.c
# components/bt/bluedroid/profiles/std/avrc/include/avrc_int.h
# components/bt/bluedroid/profiles/std/include/avct_api.h
# components/bt/bluedroid/profiles/std/include/avdt_api.h
# components/bt/bluedroid/profiles/std/include/avdt_defs.h
# components/bt/bluedroid/profiles/std/include/avdtc_api.h
# components/bt/bluedroid/profiles/std/include/avrc_api.h
# components/bt/bluedroid/profiles/std/include/avrc_defs.h
# components/bt/bluedroid/stack/avdt/include/avdt_defs.h
# components/bt/bluedroid/stack/avrc/avrc_api.c
# components/bt/bluedroid/stack/avrc/avrc_bld_ct.c
# components/bt/bluedroid/stack/avrc/avrc_bld_tg.c
# components/bt/bluedroid/stack/avrc/avrc_opt.c
# components/bt/bluedroid/stack/avrc/avrc_pars_ct.c
# components/bt/bluedroid/stack/avrc/avrc_pars_tg.c
# components/bt/bluedroid/stack/avrc/avrc_sdp.c
# components/bt/bluedroid/stack/avrc/avrc_utils.c
# components/bt/bluedroid/stack/avrc/include/avrc_int.h
# components/bt/bluedroid/stack/btu/btu_task.c
# components/bt/bluedroid/stack/include/avct_api.h
# components/bt/bluedroid/stack/include/avdt_api.h
# components/bt/bluedroid/stack/include/avdtc_api.h
# components/bt/bluedroid/stack/include/avrc_api.h
# components/bt/bluedroid/stack/include/avrc_defs.h
# components/bt/bluedroid/stack/include/gatt_api.h
# components/bt/bluedroid/stack/l2cap/l2c_main.c
# components/bt/component.mk
# examples/06_bluedroid_demos/components/bluedroid_demos/app_core/bt_app_core.c
2016-11-25 19:45:29 +08:00
wangmengyang
8e77c39deb
component/bt: reduce the task stack size
...
1. some tasks's stack size is reduced and the previous severe audio distortion issue is eliminated
2016-11-25 11:21:29 +08:00
Tian Hao
19273c7b2d
component/bt : run astyle handle the code files
2016-11-25 02:10:15 +08:00
Tian Hao
595bd2e3c4
component/bt : gatt client fix search service bug
...
1. fix search service bug
2. delete some print
2016-11-22 17:26:30 +08:00
Yulong
4079d1e008
component/bt : fix hci reassemble bug as cf2d19
2016-11-21 15:11:34 +08:00
Tian Hao
0245a2028c
component/bt : gatts fix
...
1. gatt server demo
2. gatt server fix bug(bta btc covert bug)
3. fix print lost
2016-11-18 22:10:35 +08:00
wangmengyang
1fdaf74c4f
component/bt: bug fix for HCI packet reassmebler
...
1. bug fix for HCI packet reassmebler; audio stream can be received;
2. fix some log message typos
2016-11-16 11:05:55 +08:00
wangmengyang
ea75dc7064
component/bt: bug fix for hci data packet reassembler
...
1. bugfix for hci data packet reassembler
2. create new file btif_avk.c originated from btif_av.c to eliminate the avrc related logic
2016-11-15 14:32:22 +08:00
wangmengyang
7b659b2741
component/bt: Merge branch 'feature/btdm_bluedroid' into feature/btdm_a2dp
2016-11-08 18:26:45 +08:00
Tian Hao
084248e211
component/bt : cleanup task evt
2016-11-05 19:57:53 +08:00
wangmengyang
30198ee8c1
component/bt: add new example for A2DP
...
1. add new example for A2DP and the related btif layer source code is ported
2. modification on osi_alarm_new API to support periodic timer
3. enable macro BTA_AR_INCLUDED, BTA_AV_INCLUDED, BTA_AV_SINK_INCLUDED
4. The A2DP example cannot work and can only be built successfuly
2016-11-04 15:08:30 +08:00