cac784d772db7f42dc93acafb18e5d71617c04f3 |
|
01-Feb-2016 |
Jakub Pawlowski <jpawlowski@google.com> |
Keep sec_dev_rec in list instead of static array This reduces the computational complexity of most BLE operations. Change-Id: Ife35a50d9ef3467abdc5259c2712bf5d85b8f909
/system/bt/stack/btm/btm_ble_int.h
|
7db2548c0346c1d33a46cc35b250e71fd24adae4 |
|
03-Feb-2016 |
Andre Eisenbach <eisenbach@google.com> |
Revert "Keep sec_dev_rec in list instead of static array" Breaks pairing... This reverts commit c9f86da73bfb637426c83b86497c50fede4e0f63.
/system/bt/stack/btm/btm_ble_int.h
|
d36b421035fe3b7d086f5d7737d8ba9fbdc471b3 |
|
03-Feb-2016 |
Jakub Pawlowski <jpawlowski@google.com> |
Make autoconnect work properly for devices not having security record Change-Id: I16f71da85afe780383a5d84a904b44aabe4af9f7
/system/bt/stack/btm/btm_ble_int.h
|
c9f86da73bfb637426c83b86497c50fede4e0f63 |
|
01-Feb-2016 |
Jakub Pawlowski <jpawlowski@google.com> |
Keep sec_dev_rec in list instead of static array This reduces the computational complexity of most BLE operations. Change-Id: I3997b414680ff4288091b1ddf00ec1ef1c4453fb
/system/bt/stack/btm/btm_ble_int.h
|
f40b136e7b943d7e25224817fc47bb5b171479d5 |
|
26-Jan-2016 |
Andre Eisenbach <eisenbach@google.com> |
Add explicit sec_act parameter to encryption requests This avoids de-referencing a potentially NULL pointer (p_ref_data) and also makes the use of the parameter more obvious. Also added NULL check before invoking security callback. Bug: 26792899 Change-Id: I6613c9c2706f1d460ab39421a967d79c59ad0fde
/system/bt/stack/btm/btm_ble_int.h
|
78bcff79e1b1f0efce436b33bdd6da88745bfc8a |
|
05-Dec-2015 |
Pavlin Radoslavov <pavlin@google.com> |
Refactor the Bluetooth timers * Updated the alarm API: - Existing API alarm_new() is modified to take an alarm name as an argument. - New API alarm_new_periodic() is used to create a periodic alarm. - Added new API alarm_is_scheduled() to test whether an alarm is scheduled. - Existing API alarm_set_periodic() is removed: a periodic alarm is created by alarm_new_periodic(). - Added new API alarm_set_on_queue() to set an alarm whose callback is executed on a specific queue. - Added new API alarm_register_processing_queue() and alarm_unregister_processing_queue() to register/unregister a queue and the corresponding thread for alarm processing. - Added corresponding unit tests. * Updated the alarm internals: - Added alarm_info_t for collecting alarm-related information and statistics. - Collect and store alarm-related statistics into alarm_info_t per alarm. - Include the alarm-related statistics and info into the native dumpsys output for Bluetooth. - Once an alarm expires, the alarm execution is scheduled for processing on another internal alarm-specific thread, not on the thread that is maintaining the alarms. - Implemented callback execution ordering guarantee among timers on the same thread with exactly same timeout values. * Refactor some of the usage of alarm_set() and simplify the code by using alarm_set_on_queue() instead. * Removed the non_repeating timers wrapper, and use directly the alarm mechanism / API. * Refactored all timer_entry_t timers and replaced them with alarm_t timers: - Replaced the btu_start_timer() / btu_stop_timer() / btu_start_quick_timer() / btu_stop_quick_timer() / btu_oneshot_alarm() mechanism with alarm_set_on_queue() and alarm_cancel() - Removed the whole mechanism around the BTU_TTYPE_* timers. * Fixed a bug when processing the GATT indication confirmation timer expiration (timer tGATT_TCB.conf_timer: b/26610829). * Renamed and/or split misc. timeout functions, fields, and timers * Renamed time-related constants and changed the values from seconds to milliseconds * Replaced timer tAVDT_CCB.timer_entry with three mutually exclusive timers: idle_ccb_timer, ret_ccb_timer, rsp_ccb_timer The reason we are using three timers, is because in the original code function avdt_ccb_chk_timer() used the timer type in its logic: it would stop the timer only if the type is "idle". * Removed btm_ble_timeout() and replaced it with multiple timeout callback functions (per timer) * Fix the actual value of the global constant BT_1SEC_TIMEOUT and rename it to BT_1SEC_TIMEOUT_MS * Removed btu_cb and associated timers and events, because they are never used. * Removed unused timers, functions, struct and declarations that are not used / needed. Bug: 26611369 Bug: 26610829 Change-Id: I812c8c31710a5daefc58b01fcf35c353768f390f
/system/bt/stack/btm/btm_ble_int.h
|
258c2538e3b62a8cdb403f2730c45d721e5292b4 |
|
28-Sep-2015 |
Pavlin Radoslavov <pavlin@google.com> |
GKI cleanup - moved GKI buffer allocation wrappers to OSI * Moved the following GKI buffer allocation functions to OSI: - GKI_getbuf() -> osi_getbuf() - GKI_freebuf() -> osi_freebuf() - GKI_get_buf_size() -> osi_get_buf_size() For now we need the osi_getbuf() / osi_freebuf() allocation wrapper, because we need to be able to call osi_get_buf_size() on the allocated buffer. In the future those should be replaced with osi_malloc() / osi_free(). Currently, the osi_malloc() buffer size internal allocation tracker does not always track the size, hence we need the osi_getbuf() wrapper. * Replaced GKI_MAX_BUF_SIZE with BT_DEFAULT_BUFFER_SIZE * Added new file include/bt_common.h that can be usee to include few files that should be included alost everywhere (e.g. bt_target.h" NOTE: This file might be removed in the future and we should include everywhere the right set of header files. * Removed some of the GKI-related references * Removed file include/gki_target.h Change-Id: Ie87830e73143de200746d54235aa99f228a95024
/system/bt/stack/btm/btm_ble_int.h
|
9f1c9ad85759c7663e3bbc494f8e75b2f107da67 |
|
28-Sep-2015 |
Pavlin Radoslavov <pavlin@google.com> |
GKI cleanup - Moved struct TIMER_LIST_ENT to OSI * Moved struct TIMER_LIST_ENT to file osi/include/non_repeating_timer.h and renamed it to timer_entry_t NOTE: This is a short-term solution. timer_entry_t should be removed, and its usage everywhere should be replaced by struct non_repeating_timer_t . * Renamed TIMER_CBACK to timer_callback_t * Renamed TIMER_PARAM_TYPE to timer_param_t Change-Id: I9ca830718bf900195f9c0a513a97f6995322693b
/system/bt/stack/btm/btm_ble_int.h
|
1a3844f933bd63c8a381371dabfb35c6a0249e3e |
|
25-Sep-2015 |
Pavlin Radoslavov <pavlin@google.com> |
GKI cleanup - Replaced usage of GKI queue with OSI fixed_queue * Added new functions to OSI: - fixed_queue_init() - fixed_queue_length() - fixed_queue_try_remove_from_queue() - fixed_queue_try_peek_last() * Renamed fixed_queue_try_peek() to fixed_queue_try_peek_first() * Replaced usage of GKI queue functions with OSI fixed_queue functions: - GKI_init_q() -> fixed_queue_new(SIZE_MAX) NOTE: unlike GKI_init_q(), fixed_queue_new() allocates memory / state that needs to be released by calling fixed_queue_free() - GKI_enqueue() -> fixed_queue_enqueue() - GKI_dequeue() -> fixed_queue_try_dequeue() NOTE: fixed_queue_try_dequeue() is non-blocking - GKI_queue_length() -> fixed_queue_length() - GKI_queue_is_empty() -> fixed_queue_is_empty() - GKI_getfirst() -> fixed_queue_try_peek_first() - GKI_getlast() -> fixed_queue_try_peek_last() - GKI_remove_from_queue() -> fixed_queue_try_remove_from_queue() - Queue elements iteration. In the fixed_queue implementation we have to use the underlying list_t mechanism to iterate over the elements. OLD: p = GKI_getfirst(queue); ... while ((p = GKI_getnext(p) != NULL) { ... } NEW: list_t *list = fixed_queue_get_list(queue); for (const list_node_t *node = list_begin(list); node != list_end(list); node = list_next(node)) { p = list_node(node); } * Remove initialization of the GKI module, because it is not needed anymore * Removed unused files in GKI: gki/common/gki_common.h gki/ulinux/gki_int.h gki/ulinux/gki_ulinux.c Change-Id: I3ff9464db75252d6faf7476a9ca67c88e535c51c
/system/bt/stack/btm/btm_ble_int.h
|
11e6c2939f63398e86757d08eac32ef1d4f89fdf |
|
30-Sep-2014 |
Nitin Arora <niarora@codeaurora.org> |
Configure Bluetooth Low Energy scan parameters correctly This patch ensures that Bluetooth Inquiry uses the low latency scan parameters, and the scan params set by the Apps for LE scan are retained and set at the end of a BT inquiry. Bug: 21896912 Change-Id: Iaf9e47330393cc1e0c21c625e8e07ce933506983
/system/bt/stack/btm/btm_ble_int.h
|
877123f5b9df90e7a71ea7b15997c521229decc1 |
|
24-Apr-2015 |
Satya Calloji <satyac@broadcom.com> |
Static address is seen on scanner after unpairing Fix for bonded devices that cannot be removed from resolving list when scanning, advertising or when a connection is being initiated. Suspend all active adv, scanning or connection initiation upon completion of any resolving list operation. Original author: Chaojing Sun <cjsun@broadcom.com> Change-Id: Id104dace2944b1878eaf65b93aba3d01e477191d
/system/bt/stack/btm/btm_ble_int.h
|
5725fc6d2c639a8c22a08b9b6629309eeda3715e |
|
31-Mar-2015 |
Satya Calloji <satyac@broadcom.com> |
LE low power scan feature LE low power extended scan feature stack changes based on Google BLE spec v0.95 Bug: 20029342 Change-Id: I1db2d9bb648295340d0e93ca89d27e1b938d33d3
/system/bt/stack/btm/btm_ble_int.h
|
e28055315f96c0d06e73a66a9bb06df85247b5a7 |
|
22-Apr-2015 |
Chaojing Sun <cjsun@broadcom.com> |
Cross transport key mapping fixes Change-Id: I22d97303054eccc876c4a9c7c0a50e369ff4fa62
/system/bt/stack/btm/btm_ble_int.h
|
b8b3e8070ad027e7a45ca5048ae807c4ec099b15 |
|
18-Apr-2015 |
Priti Aghera <paghera@broadcom.com> |
Initialize white list size after stack reset The white list size is not currently set correctly, preventing devices from being added to the LE whitelist, thus completely breaking re-connects. This fixes the white list management and propagates the correct reason code for HID close events to make sure a device is re-added to the white list if necessary. Bug: 20290744 Change-Id: I46d7254ff3568c9964688cb192b9deb6b7d3062d
/system/bt/stack/btm/btm_ble_int.h
|
444a8da807abaf5f9e813ce70c56a79160495fb3 |
|
06-Mar-2015 |
Satya Calloji <satyac@broadcom.com> |
LE Privacy 1.2 and LE secure connections Bug: 19816438 Original author: Chaojing Sun <cjsun@broadcom.com> Change-Id: I5951f4d4e038f8348a62aa6d19b2111bae0b3ecc
/system/bt/stack/btm/btm_ble_int.h
|
24933b5b1a06274c47133debac5251a97128a267 |
|
25-Sep-2014 |
June R. Tate-Gans <jtgans@google.com> |
Removing unnecessary BTAPI #defines.
/system/bt/stack/btm/btm_ble_int.h
|
b5c2cdc900b368a45401cadb6fa00cd2ce574d61 |
|
06-Dec-2013 |
Nitin Arora <niarora@codeaurora.org> |
Remove HOGP device from background connection list This adds logic to remove the device from whitelist when user unpairs or disconnects device. Bug: 17318494 Change-Id: I43c06dd16c665f9ce2e71a0e031c4f0f11a4012e
/system/bt/stack/btm/btm_ble_int.h
|
24adb37e4106bf8544c7729d34451fdf2777c4dc |
|
10-Sep-2014 |
Priti Aghera <paghera@broadcom.com> |
host cannot recover when connection exceed controller capability Host can not initiate new connection when exceed controller capability and connection then drop back to lower than the max. Controller will not generate connection complete event when initaite LE ll connection request failed, and host is dead loop waiting for the connection complete then can not recover. Included a connection complete callback with failure status when controller capability is exceeded. bug 17326529 Change-Id: I9b863578dc868456e092f1d060e50d2c9fdcb441
/system/bt/stack/btm/btm_ble_int.h
|
adb7bb50469db992969295792a7ba3b73f9e24b3 |
|
13-Aug-2014 |
Satya Calloji <satyac@broadcom.com> |
GKI_exception on running longer batch scans Fixed GKI memory leak in btif_gatt_client.c file besides few needed logic improvements which will help in preventing leaks on exception conditions Bug:16829603 Change-Id: Id39267fbedeb7435cdc2c3a9eda25d4b3cd82c2f
/system/bt/stack/btm/btm_ble_int.h
|
16fe0822ccd3eb6f66d3afd9965d25a0a0cb4c30 |
|
07-Aug-2014 |
Prerepa Viswanadham <dham@google.com> |
Use run time parameters to control LE features Use values read from controller to enable and control LE features such as multi advertising, RPA offload, maximum irk size etc bug 15393216 Change-Id: I193e2b9a0dc61b86f667e986803571440e390160
/system/bt/stack/btm/btm_ble_int.h
|
4a7ad9be81cc2b515502f2c1fb1b7ec7e3104146 |
|
30-Jul-2014 |
Satya Calloji <satyac@broadcom.com> |
Tx power is 0 in ADV packet b/15412969 Tx power is always 0 in advertising packet Change-Id: I7eb1f16b5fb1ab4ed669ba6a72f9603885cebc99
/system/bt/stack/btm/btm_ble_int.h
|
1a9247a1229aa65b3d1dce16426177bc5828e54d |
|
05-Jun-2014 |
Satya Calloji <satyac@broadcom.com> |
LE ADV Filter changes BTIF and stack layer changes for ADV filter feature Change-Id: I865e57c41802751e172248547b8510598261ec94
/system/bt/stack/btm/btm_ble_int.h
|
c4e2596a112a0dd63ac681b1226548c0f95e828c |
|
11-May-2014 |
Satya Calloji <satyac@broadcom.com> |
LE batch scan feature BTIF and stack changes for batch scan feature Change-Id: I4dd2d551435e9f1f0e43906bd695294e97ed4bba
/system/bt/stack/btm/btm_ble_int.h
|
ed534e330bf63c72e778fc8daae09ddd63c395b2 |
|
20-May-2014 |
Wei Wang <weiwa@google.com> |
Revert "Revert "LE: Add RRA offloading and vendor specific PCF commands"" This reverts commit 146bb736bc1cdfd679bbafcf3f33c7af612096b9. Change-Id: Ie4e6b4d7118a622d04c46623add1073906366edf
/system/bt/stack/btm/btm_ble_int.h
|
a6ce7751d84218c193eb90d390aef23217b1737e |
|
20-May-2014 |
Wei Wang <weiwa@google.com> |
Revert "Revert "LE Multi ADV feature"" This reverts commit ea85048a8e86b1e1b6b725649f6bb0834ba17301. Change-Id: I9a9305db4fabff07b4309a38f65361dca3f5f37c
/system/bt/stack/btm/btm_ble_int.h
|
ea85048a8e86b1e1b6b725649f6bb0834ba17301 |
|
20-May-2014 |
Wei Wang <weiwa@google.com> |
Revert "LE Multi ADV feature" This reverts commit 87776cf5e201b18646cbc16f11a7110d5ffe510c. Change-Id: I5b544a5c965999096b665b1bd2edb021e3054be8
/system/bt/stack/btm/btm_ble_int.h
|
146bb736bc1cdfd679bbafcf3f33c7af612096b9 |
|
20-May-2014 |
Wei Wang <weiwa@google.com> |
Revert "LE: Add RRA offloading and vendor specific PCF commands" This reverts commit 15fa3be8ecd576b9ef88e20cf9a6f4bd765cbc6b. Change-Id: Iaa484508ac664d4cb6c94758c2984d53263a902a
/system/bt/stack/btm/btm_ble_int.h
|
15fa3be8ecd576b9ef88e20cf9a6f4bd765cbc6b |
|
12-May-2014 |
Satya Calloji <satyac@broadcom.com> |
LE: Add RRA offloading and vendor specific PCF commands Change-Id: Iadca8e73ceaadcd0429421ea70f1b76644e88c42
/system/bt/stack/btm/btm_ble_int.h
|
87776cf5e201b18646cbc16f11a7110d5ffe510c |
|
01-May-2014 |
Satya Calloji <satyac@broadcom.com> |
LE Multi ADV feature BTIF and stack changes for LE multi ADV feature Change-Id: I5e009ff8cbac5fc6f92ca943c61c4faf98e4e2ce
/system/bt/stack/btm/btm_ble_int.h
|
7fa4fba6f59f97df00aff07dbe8fb21b114b3c2c |
|
17-Apr-2014 |
Ganesh Ganapathi Batta <ganeshg@broadcom.com> |
Merge BT 4.1 features The features include: - LE Peripheral Mode - Link Layer topology (LE Central & Peripheral Concurrency) - Dual Mode Topology (Ability to choose LE transport when connecting with other Dual Mode devices) - Fast advertising Interval - Limited Discovery Time Changes - GAP Authentication and Lost Bond - Dual Mode Addressing - Common Profile and Service Error Code - 32 bit UUIDs Change-Id: Ic6701da4cf6aaa390ff2c8816b43157f36b7fb42 Conflicts: stack/btu/btu_hcif.c
/system/bt/stack/btm/btm_ble_int.h
|
b203d478f4835f5e35217874a1787e1914328f7c |
|
21-Nov-2013 |
Andre Eisenbach <andre@broadcom.com> |
LE: Add controller based advertising filter API (2/2) Change-Id: I444654bf19a048d5fcef33f79edbf1cdda3d3b62
/system/bt/stack/btm/btm_ble_int.h
|
d8e52271f693c969266289e0e2b785c2de5df031 |
|
01-Feb-2014 |
Mike J. Chen <mjchen@google.com> |
Add a function prototype for btm_ble_test_command_complete To fix warning about implicit declaration when compiling btu_hcif.c Change-Id: Ia07ae3036c65928b6981becb12e18115f0af7769 Signed-off-by: Mike J. Chen <mjchen@google.com>
/system/bt/stack/btm/btm_ble_int.h
|
6975b4d711142b885af479721cada448952c6b41 |
|
06-Aug-2013 |
Andre Eisenbach <andre@broadcom.com> |
LE: UPF 45 bug fixes This change fixes the following issues: - Second GATT-over-BR/EDR channel cannot be established when there already is an existing GATT-over-BR/EDR channel - If encryption fails for an LE connection due to a missing key, the security state is not being cleared and blocks all further security processing - When DM discovery of an LE Peripheral device fails with a connection timeout, no further discovery requests can be made - GATT service discovery can get into endless loop when duplicate descriptor definitions are found on the remote device - When GATT over BR/EDR fails, BTA does not give a connection callback to the application initiating the connection - BR/EDR connection to remote platform does not generate API callbacks - Stack crash discovered during UPF after remote disconnects - The host is sending HCI disconnect to invalid HCI handle when SMP fails because of a connection timeout - Possible race condition: If a disconnect is immediately followed by a connection complete, the connection complete cannot be processed in the BTA GATT state machine - Write Complete event is not triggered for Prepare Write requests Change-Id: I539cdedd68007818ff4f0d0213cee1c913f72d0f Conflicts: bta/gatt/bta_gatts_act.c
/system/bt/stack/btm/btm_ble_int.h
|
781b5adee20e222ef87b56b72bfcd3f64013e4a0 |
|
28-May-2013 |
Andre Eisenbach <andre@broadcom.com> |
LE: Integrate power table for GATT No power table exists for GATT, causing the device to never enter sniff mode while using GATT over BR/EDR. Change-Id: I0db539c1814a61af620f3dba560da64481291beb
/system/bt/stack/btm/btm_ble_int.h
|
ead3cde4bac0c3e32cd31f149093f004eef8ceeb |
|
06-Feb-2013 |
Ganesh Ganapathi Batta <ganeshg@broadcom.com> |
Initial version of BLE support for Bluedroid Change-Id: I9825a5cef9be2559c34c2a529b211b7d471147cf
/system/bt/stack/btm/btm_ble_int.h
|
5738f83aeb59361a0a2eda2460113f6dc9194271 |
|
13-Dec-2012 |
The Android Open Source Project <initial-contribution@android.com> |
Snapshot cdeccf6fdd8c2d494ea2867cb37a025bf8879baf Change-Id: Ia2de32ccb97a9641462c72363b0a8c4288f4f36d
/system/bt/stack/btm/btm_ble_int.h
|