summaryrefslogtreecommitdiffstats
path: root/stack/gap/gap_ble.c
Commit message (Collapse)AuthorAgeFilesLines
* LE Privacy 1.2 and LE secure connectionsSatya Calloji2015-04-131-211/+181
| | | | | | Bug: 19816438 Original author: Chaojing Sun <cjsun@broadcom.com> Change-Id: I5951f4d4e038f8348a62aa6d19b2111bae0b3ecc
* Bluetooth: fix the HOGP device(iBUFFALO BSMBB09DS) pair and reconnect problem.Thomas.TT_Lin2014-07-181-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | in bta_hh_le.c (fix reconnect issue) Since new LE security flags are import, (BTM_SEC_LE_AUTHENTICATED, BTM_SEC_LE_ENCRYPTED, BTM_SEC_LE_NAME_KNOWN, BTM_SEC_LE_LINK_KEY_KNOWN, BTM_SEC_LE_LINK_KEY_AUTHED), we have to use new BTM_GetSecurityFlagsByTransport() function with LE transport to get right sec_flag, or will cause cannot correctly add to white list and cause reconnect fail. in btif_dm.c (fix HOGP mouse pair issue) the HOGP mouse will become abnormal if we update connection parameter too many times. Therefore the is_hid case is not suitable for HOGP mouse, it will trigger call to L2CA_EnableUpdateBleConnParams() several times due to service discovery and bonded state. L2CA_EnableUpdateBleConnParams() update connection cause mouse abnormal. The change will make the flow: complete bonding procedure first, then do service discovery, connect to mouse. in gap_ble.c (fix HOGP device pair issue) After pairing status is bonded, host start to create ATT layer to get some information from HOGP device. If host send "disconnect" command during period. Device will stop to feedback anything. Suggest to delete it. in smp_act.c (fix HOGP device pair issue) update connection parameter too many times may cause mouse abnormal, so remove this code since this will be called again after service discovery. Suggest to delete it. Change-Id: I4b722343c2b08d33530bc6b928bc9ffe89fd09e9 Signed-off-by: Thomas.TT_Lin <Thomas.TT_Lin@htc.com>
* resolved conflicts for merge of b44cc59d to masterMatthew Xie2014-06-281-1/+1
|\ | | | | | | Change-Id: I74c86dd5a13d4cc0b225a4b1d516904c4382db74
| * Logging cleanup: AVRC, MCA, GATT, and SMP.Sharvil Nanavati2014-06-191-1/+1
| | | | | | | | Change-Id: I6d1e61ff023b5fd19f144955cff16831cc18c6e6
* | am d5bba906: Logging cleanup: RFCOMM and GAP.Sharvil Nanavati2014-06-281-26/+26
|\| | | | | | | | | * commit 'd5bba906b0704cd60e824613bd2e438935ba5d89': Logging cleanup: RFCOMM and GAP.
| * Logging cleanup: RFCOMM and GAP.Sharvil Nanavati2014-06-191-26/+26
| | | | | | | | Change-Id: I83fda4f0805aaeb2ca060870449868879edcff78
| * Merge BT 4.1 featuresGanesh Ganapathi Batta2014-04-301-197/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | LE: Add notification sent and congestion callbacks (2/4)Andre Eisenbach2014-06-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change introduces two new callbacks for applications to better handle LE notification flow control and transport congestion. The notification callback is invoked when the remote platform confirms an indication or when a local notification has been passed to the controller. No new notifications should be sent until a callback is received. Congestion callbacks are triggered when a GATT operation cannot be sent to the local Bluetooth controller. Repeatedly calling writeCharacteristic() for example will eventually trigger a congestion callback. Applications cannot send additional data until a further callback is received, indicating that the congestion has cleared up. Also fixes a memory leak issue that can trigger GKI exception for certain GATT operations. Change-Id: Ib470c15ca1f577573a632e9afe4cb9e86680fd8c
* | Merge BT 4.1 featuresGanesh Ganapathi Batta2014-05-061-197/+54
|/ | | | | | | | | | | | | | | | | | | 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
* Major warnings cleanupMike J. Chen2014-02-111-0/+4
| | | | | | | | | | | | Mostly fixing unused parameter warnings. A few other warnings also fixed like possible use of unitialized variables (no real issue found, just compiler couldn't follow the path), signed vs unsigned warning. Also fixed some typos, indent issues, removal of dead code, etc. Change-Id: I95eb887aefc4d559d7921f71a0af5f3bfb01ac01 Signed-off-by: Mike J. Chen <mjchen@google.com>
* BLE HID device connection failure due to security error.Zhihai Xu2013-12-111-1/+2
| | | | | | | | | | | | | | | When HID BLE device start encryption, if some other GATT application already start encryption(but not finished yet) by calling gatt_security_check_start. The HID BLE device will be failed to start encryption, which will cause it to disconnect the BLE HID connection. The solution is to check whether we already started the encryption , If the encryption is already started, wait until the encryption finished, then continue to start security check for BLE HID device. add encrytion complete event to notify all GATT client encryption done. filter the event just for BTA HH LE GATT client. bug:11636246 Change-Id: If58e57c623cc8cfa05208587b010bec68c71306c
* LE: UPF 45 bug fixesAndre Eisenbach2013-08-131-19/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Initial version of BLE support for BluedroidGanesh Ganapathi Batta2013-02-271-0/+967
Change-Id: I9825a5cef9be2559c34c2a529b211b7d471147cf