OSDN Git Service
Sharvil Nanavati [Tue, 24 Jun 2014 07:39:06 +0000 (00:39 -0700)]
Eliminate HCI flow control. It is not used anywhere in the codebase.
Change-Id: If7244bdcf08023b0a093374950d6a5c1974fbbba
Sharvil Nanavati [Wed, 25 Jun 2014 00:24:33 +0000 (17:24 -0700)]
Remove BTE/BTIF version strings. DID profile should specify stack version info.
Change-Id: I27806f8a88f7ea81ccab1fe48ab826ba428357e0
Sharvil Nanavati [Wed, 25 Jun 2014 00:02:30 +0000 (17:02 -0700)]
Eliminate unused argument to dealloc.
Change-Id: I9e54a9b9e8e250aa39e4fbfcbe934e7686d74cd4
Sharvil Nanavati [Mon, 23 Jun 2014 19:25:40 +0000 (12:25 -0700)]
Add documentation and non-blocking functions to fixed_queue.
Change-Id: Ia13166238847d6e1cebfda1bf5bdafd9ddc8b8e1
Andre Eisenbach [Wed, 18 Jun 2014 19:20:37 +0000 (12:20 -0700)]
LE: Add is_connected() function (2/3)
Change-Id: I73c4ea7f13982bf9c208996f9c749d2dfbe698be
Andre Eisenbach [Fri, 28 Mar 2014 21:54:22 +0000 (14:54 -0700)]
LE: Add notification sent and congestion callbacks (2/4)
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: I7112bdfc1fedec2e390bd0ea52655d238683917f
Sharvil Nanavati [Mon, 23 Jun 2014 19:07:05 +0000 (12:07 -0700)]
Add documentation for semaphore and add a semaphore_try_wait function.
Change-Id: I5440744e4bf7192efc4c8d0205502aa4296a4f9f
Chris Manton [Thu, 12 Jun 2014 19:52:33 +0000 (12:52 -0700)]
BLE privacy timer
Adds another timer with one-shot characteristic that
allows for variable firing of alarms. Change the BLE
privacy code to use this timer rather than the
BTU continuous timer.
Change-Id: I6baa4e6a76813285c15f24aeb3c7ef942ed01858
Chris Manton [Wed, 11 Jun 2014 04:23:52 +0000 (21:23 -0700)]
RIP: Removal of more dead timer code
Change-Id: I6e05a1054c4bfd8ccd42cd9df8e3140ce67330c4
Chris Manton [Tue, 10 Jun 2014 04:47:16 +0000 (21:47 -0700)]
Extended a few timer API functions
Timer queue and entry were lacking a few functions.
Also added field in timer entry to indicate initial
timing condition for use in a variable timer
Change-Id: I4d987a5bb4eddb48f8c54de8d3da26f1c0b77584
Sharvil Nanavati [Sat, 14 Jun 2014 22:01:20 +0000 (15:01 -0700)]
Clean up DID configuration parsing.
Change-Id: Iba77c9924c1f4fe926a7e59653b80e9d836c4fc5
Sharvil Nanavati [Sun, 15 Jun 2014 20:36:45 +0000 (13:36 -0700)]
Clean up interaction with libbt-vendor library.
1. Fix resource leak: dlclose was never called on libbt-vendor.
2. Eliminate global variable bt_vnd_if.
3. Provide a header file instead of randomly importing functions.
Change-Id: I16d8a6d68324fb44a033705c4f4dbd31ebd52b58
Sharvil Nanavati [Sat, 7 Jun 2014 19:07:58 +0000 (12:07 -0700)]
Make unit tests pass again after OS callout change.
Change-Id: Icc7846faef581855c5fe3d12244d4a754badd9b7
Sharvil Nanavati [Sun, 4 May 2014 17:41:12 +0000 (10:41 -0700)]
Logging cleanup: GKI.
Change-Id: I85a415ef28629c047580b78b5b677c15852c615a
Sharvil Nanavati [Thu, 19 Jun 2014 21:16:15 +0000 (14:16 -0700)]
Fix build for mako devices.
Change-Id: Ifdeb7177dc61386243c12d0996752fda7ece6912
Sharvil Nanavati [Sun, 15 Jun 2014 06:45:16 +0000 (23:45 -0700)]
Clean up btsnoop code.
Change-Id: Icb1dacb95453effa6d267c084353608dbdc915a3
Sharvil Nanavati [Sun, 8 Jun 2014 00:57:25 +0000 (17:57 -0700)]
Fix power management: config table length was calculated incorrectly.
Change-Id: I45563ed150d57d982e9eb2f61846c78b245b13ec
Sharvil Nanavati [Sun, 4 May 2014 17:30:26 +0000 (10:30 -0700)]
Logging cleanup: remove unused macros.
Change-Id: Ibde16d4cf932475b34a1cb9e392838a9cb56c7f8
Sharvil Nanavati [Thu, 19 Jun 2014 16:51:52 +0000 (09:51 -0700)]
Fix build, replace logging macro.
Change-Id: Ib1189b887d57253940fa38e8af24ea03462c403e
Sharvil Nanavati [Sun, 4 May 2014 17:12:26 +0000 (10:12 -0700)]
Logging cleanup: BTIF and APPL.
Change-Id: I5b1214642bbb4b9aecc0fd2c899a6ec2c9793286
Sharvil Nanavati [Sun, 4 May 2014 17:03:35 +0000 (10:03 -0700)]
Logging cleanup: AVRC, MCA, GATT, and SMP.
Change-Id: I6d1e61ff023b5fd19f144955cff16831cc18c6e6
Sharvil Nanavati [Sun, 4 May 2014 16:53:44 +0000 (09:53 -0700)]
Logging cleanup: A2D, AVDT, and AVCT.
Change-Id: I5a9d4bcdd65f6e965b434bf86949bba7155fd300
Sharvil Nanavati [Sun, 4 May 2014 16:41:24 +0000 (09:41 -0700)]
Logging cleanup: HIDH, BNEP, and PAN.
Change-Id: I3b81b6875c764f0642be4f4d8905aa24524ea902
Sharvil Nanavati [Sun, 4 May 2014 08:33:15 +0000 (01:33 -0700)]
Logging cleanup: RFCOMM and GAP.
Change-Id: I83fda4f0805aaeb2ca060870449868879edcff78
Sharvil Nanavati [Sun, 4 May 2014 08:08:21 +0000 (01:08 -0700)]
Logging cleanup: L2CAP and SDP.
Change-Id: I62b5d4f330312dc466a758cb554952017f899696
Matthew Xie [Wed, 18 Jun 2014 21:47:00 +0000 (21:47 +0000)]
Merge "Reload Hid info only for bonded device" into klp-wireless-dev
Satya Calloji [Tue, 10 Jun 2014 23:52:25 +0000 (16:52 -0700)]
Address allocation scheme for multiple advertisers
bug
15329248
Change-Id: Ia5f2ce91f672c2c577dd3712a004f3cd3f573533
Priti Aghera [Thu, 15 May 2014 19:34:17 +0000 (12:34 -0700)]
Reload Hid info only for bonded device
Check if the device is bonded before loadind HID device information
after BT reset. If the HID info exists in NVRAM for unbonded device,
the device will not be able to repair.
bug
14837902
Change-Id: I5e6d5e8c5344ca8ae18f102e40867745d3f460ab
Prerepa Viswanadham [Wed, 11 Jun 2014 04:04:43 +0000 (21:04 -0700)]
Fix build for aosp_manta
Change-Id: Ic1e2363e7fb7d23dcaef8e989cae37606f2af664
Chris Manton [Tue, 10 Jun 2014 05:01:12 +0000 (22:01 -0700)]
Remove dead timer code from btu
Change-Id: I28fb3fb64546aac6e08886f71f80fdeaf86fc5af
Mike Lockwood [Tue, 10 Jun 2014 23:52:39 +0000 (16:52 -0700)]
Fix build breakage due to bad rebase
Change-Id: Ide8190f10add027b18a34bb2604d3cd407d94224
Mike Lockwood [Tue, 10 Jun 2014 23:26:37 +0000 (16:26 -0700)]
Fix garbage left in makefile
Change-Id: Iaf1482b3a8d83ee2f45723229e57195a13652824
Mike Lockwood [Mon, 2 Jun 2014 23:21:49 +0000 (16:21 -0700)]
Move AVRCP controller support to separate HAL interface
Change-Id: Ib7dcd7b90f85cf3b25148e2929d8921c6db37aa2
Mike Lockwood [Fri, 23 May 2014 19:42:24 +0000 (12:42 -0700)]
More work on A2DP Sink:
Output audio data through A2DP audio HAL rather than playing directly
to native AudioTrack API.
Add separate HAL interface for A2DP sink
Change-Id: I6c6cb6088c350e104b4a7354f328b29c7178e295
Hemant Gupta [Thu, 20 Mar 2014 15:17:04 +0000 (20:47 +0530)]
SBC Decoder for A2DP SINK
Change-Id: Ic8d1dd81d1788324ec140fe0d1379dfff33deb54
Hemant Gupta [Thu, 24 Oct 2013 10:07:17 +0000 (15:37 +0530)]
Add A2DP Sink Support
Change-Id: I9affefdd2d00597545e49c593ef3bddb110d4c9c
Sharvil Nanavati [Fri, 6 Jun 2014 08:26:23 +0000 (01:26 -0700)]
Eliminate more dead code in GKI.
Change-Id: I4c0000445535e5300b83a18f5f6ca45f1ef797da
Chris Manton [Wed, 7 May 2014 23:21:00 +0000 (16:21 -0700)]
Re-layout Android.mk for single shared library
Shared object libraries require complete symbol resolution
while archives do not. The hci, btutil and a2dp hbtutil were
built as shared, but used the other archive libraries (e.g. gki).
To resolve all symbols in each of the so's, they stubbed out
data interfaces to the common structures.
(e.g. hci/include/utils.h)
This will unify all libraries and eliminate multiple definitions
of the same structure.
Change-Id: I2af9a3e8a87888cd007aaf0809cdfc09039cd460
Sharvil Nanavati [Fri, 6 Jun 2014 07:18:40 +0000 (00:18 -0700)]
Eliminate dead code: remove GKI_sched* from the codebase.
Change-Id: I607bd3bf88ef8847c8a7e984a54eabedd4fb7516
Sharvil Nanavati [Wed, 4 Jun 2014 01:12:32 +0000 (18:12 -0700)]
Parse auto_pair_devlist.conf file with the generic config parser.
Change-Id: Idfd1aca2417d74725a8f9ac67b1ca946a33bf14d
Sharvil Nanavati [Sat, 7 Jun 2014 07:56:14 +0000 (00:56 -0700)]
Fix build: BTM_BleLocalPrivacyEnabled is called from outside BLE_PRIVACY_SPT guard.
Change-Id: I1ca7f824e035b496c9c038b9afdb4c4f2af4234b
Sharvil Nanavati [Mon, 2 Jun 2014 05:38:46 +0000 (22:38 -0700)]
Disable BLE address randomization since it causes excessive timer wakeups.
Change-Id: Ib4c2265d30b8bbaa7b5302537e446e18a97e2cad
Sharvil Nanavati [Thu, 29 May 2014 00:09:46 +0000 (17:09 -0700)]
Implement GKI timers based on wake alarms and wake locks.
Before this change, bluedroid was unable to acquire wake locks
because the Bluetooth process didn't have permissions to write to
/sys/power/wake_*. We are now making wake locks accessible to
bluedroid through a HAL callout back into Java code.
The previous design did not use wake alarms. Bluedroid would attempt
to hold a wake lock until all pending timers expired, which is awful
if a timer is scheduled seconds or minutes from now. There is a
15min timer in bluedroid now so holding a wake lock for the entire
duration of pending alarms is unacceptable (power cost). The new
implementation uses a hybrid approach: if the next deadline is < 3s
away, we take a wake lock. If it is further than 3s away, we set a
wake alarm and release the wake lock.
As a result of this change, we have also eliminated a thread whose
sole purpose was to wake up every 10ms and update timers.
Change-Id: I46cd4edfcad2f5dce23c4003a14a617e7bf00541
Sharvil Nanavati [Sat, 22 Mar 2014 21:27:07 +0000 (14:27 -0700)]
Allow btsnoop logs to be read over a local socket.
This change allows real-time HCI debugging over adb from a
Linux box using hcidump.
Example:
--------
adb forward tcp:8872 tcp:8872
nc localhost 8872 | hcidump -X -r /dev/stdin
Change-Id: I49c32a941f71f612807061284a755a38b76588ff
Wei Wang [Fri, 6 Jun 2014 21:50:39 +0000 (21:50 +0000)]
Merge "Changed the status check for BleObserve" into klp-wireless-dev
Priti Aghera [Fri, 6 Jun 2014 20:54:08 +0000 (13:54 -0700)]
Changed the status check for BleObserve
Bta layer was expecting a successful BLEObserver return status to be BTM_SUCCESS.
Instead BleObserve returns BTM_CMD_STARTED when the scanning is successfully
started. Changed the check to be BTM_CMD_STARTED instead
bug
15167442
Change-Id: Ia600da7e6416e2caef5d34dba24955ae76d06dcc
Nitin Arora [Fri, 6 Jun 2014 00:51:48 +0000 (17:51 -0700)]
Bluetooth: Assign max adv instance value from vendor capabilities
This change assigns the value of the max instances supported
for multiple advertisement, to the multi adv block
Change-Id: Ide181f8cad7a290a0dac8fdd01ae3ed2187868ef
Matthew Xie [Thu, 5 Jun 2014 19:48:11 +0000 (19:48 +0000)]
Merge "Save remote device name immediately" into klp-wireless-dev
Matthew Xie [Thu, 5 Jun 2014 19:44:35 +0000 (12:44 -0700)]
Save remote device name immediately
bug
7381249
Change-Id: Ief1910c608116ebc28f5dc3e5804be65797ec53c
Sharvil Nanavati [Tue, 3 Jun 2014 07:16:07 +0000 (00:16 -0700)]
Rename UNUSED to UNUSED_ATTR in OSI due to symbol collision.
Change-Id: Ib26dbae713b3096adf2496f0ff0fcb607693b163
Ganesh Ganapathi Batta [Fri, 30 May 2014 23:28:00 +0000 (16:28 -0700)]
Support for reading LE specific controller features
Support for reading LE specific controller features via get adapter properties
API
Change-Id: Ia0b813be45fb826ce27d1d7a31ca41650d7286dd
Sharvil Nanavati [Sun, 4 May 2014 07:46:57 +0000 (00:46 -0700)]
Logging cleanup: HCI and BTM trace macros.
Change-Id: Icdea5aede9fde2c11d0cde745a9bedc26d69640c
Conflicts:
stack/btm/btm_acl.c
stack/btm/btm_ble.c
stack/btm/btm_ble_bgconn.c
stack/btm/btm_ble_gap.c
stack/btm/btm_inq.c
stack/btm/btm_pm.c
stack/btm/btm_sec.c
Sharvil Nanavati [Sat, 31 May 2014 04:04:03 +0000 (21:04 -0700)]
Whitelist IPv6 packets so they can be sent over PAN.
Change-Id: I68e96bc34af1dfded2761c9bc780c089076d15e0
Sharvil Nanavati [Sun, 27 Apr 2014 21:34:50 +0000 (14:34 -0700)]
Use an event file descriptor instead of a pipe to control userial.
Change-Id: I480752ab77a8d25eb2a2c770f7bb44f7e400b15f
Sharvil Nanavati [Mon, 5 May 2014 05:48:09 +0000 (22:48 -0700)]
Use the generic config parser to parse bt_stack.conf.
Change-Id: I4dc9307f5f5e0702c7a6283a59c94c56cead2eb6
Sharvil Nanavati [Mon, 5 May 2014 04:33:52 +0000 (21:33 -0700)]
Add a generic config parser for the INI file format.
There are currently multiple INI parsers in bluedroid and they're
special-purpose for the task at hand even though they parse the
same format. This implementation is general-purpose, loosely coupled
with the rest of bluedroid, and has unit tests to verify behaviour.
Change-Id: I61caf416cc16d76b871cbf04f333c26894ab3fef
Sharvil Nanavati [Sun, 4 May 2014 06:06:49 +0000 (23:06 -0700)]
Start cleaning up log macros.
Change-Id: I228fef0198caeb47618a07c4c46526f611933e07
Sharvil Nanavati [Mon, 5 May 2014 04:53:31 +0000 (21:53 -0700)]
Add a couple more tests for list.
Change-Id: I603d8daa81075b93c26f997be2a7caa64370a9a8
Sharvil Nanavati [Sat, 3 May 2014 06:55:09 +0000 (23:55 -0700)]
Implement a fixed queue.
Change-Id: Ifad7605d0b6e1a57f4767f9de1bed7e99284ded7
Nitin Arora [Thu, 29 May 2014 01:50:09 +0000 (18:50 -0700)]
Bluetooth: Changes to enable features on KWD
This patch contains changes needed to enable features,
multiple advertisment, packet content filtering and
privacy mode on kwd branch
Change-Id: If95bfb38eafe26f16db20e7650865c2f19553548
Hemant Gupta [Fri, 7 Feb 2014 11:04:47 +0000 (16:34 +0530)]
[2/4] Add Support for AVRCP Controller Feature
- Provide support for AVRCP Controller CAT 1 and CAT 2
Passthrough commands.
Change-Id: Ia3ca08c1139d9a98b86919b51d7480e0245c35f3
Wei Wang [Tue, 20 May 2014 06:23:35 +0000 (23:23 -0700)]
Fix build issue for devices without BLE features.
Change-Id: I6499663d253c791cc739ed76b839eb3aefe6613a
Satya Calloji [Mon, 12 May 2014 16:13:02 +0000 (09:13 -0700)]
LE: Add RRA offloading and vendor specific PCF commands
Change-Id: Iadca8e73ceaadcd0429421ea70f1b76644e88c42
Satya Calloji [Wed, 30 Apr 2014 22:55:39 +0000 (15:55 -0700)]
LE Multi ADV feature
BTIF and stack changes for LE multi ADV feature
Change-Id: I5e009ff8cbac5fc6f92ca943c61c4faf98e4e2ce
Mike Lockwood [Thu, 15 May 2014 20:06:55 +0000 (20:06 +0000)]
Merge "[2/4] Bluetooth: Add support for HFP Client role." into klp-wireless-dev
Mike Lockwood [Thu, 15 May 2014 20:06:34 +0000 (20:06 +0000)]
Merge "Submitted on behalf of 3rd party copied from external/bluetooth/bluedroid" into klp-wireless-dev
Prerepa Viswanadham [Fri, 9 May 2014 23:08:49 +0000 (16:08 -0700)]
LE: Add API to set scan interval and window (2/4)
Delete client_if from scan api's
Change-Id: I66e0e17221601cd07ea77cf3d61ad9ce20a603a4
Hemant Gupta [Mon, 19 Aug 2013 13:03:01 +0000 (18:33 +0530)]
[2/4] Bluetooth: Add support for HFP Client role.
Implementation changes in BTA and BTIF layer to support
HFP Client role.
Change-Id: I9f939c18e8f989a50f298d0b313c5a0959c030a7
Hemant Gupta [Tue, 29 Apr 2014 10:53:59 +0000 (16:23 +0530)]
Submitted on behalf of 3rd party copied from external/bluetooth/bluedroid
Initial commit for HFP Client
Change-Id: I26b7d49b76ab28b019314ddb514e8f46b3bc4772
Zhihai Xu [Thu, 8 May 2014 23:39:34 +0000 (16:39 -0700)]
Unable to pair and connect A2DP headset with DUT on KWD
this is due to some field type is not defined correctly.
We don't have this problem with old compile option.
recently some compile option change expose this bug.
bug:
14489818
Change-Id: Ief48ec7d1312eb588fc344ea0afb153226bf0541
Sharvil Nanavati [Sat, 26 Apr 2014 17:40:30 +0000 (10:40 -0700)]
Clean up the public functions in userial.c.
Change-Id: I6513296a8c606c49a4cadf196d89573948026e4a
Sharvil Nanavati [Sat, 3 May 2014 22:33:15 +0000 (15:33 -0700)]
Eliminate dead code (helped by compiler warnings).
I've removed all functions that the compiler decided were unused.
Change-Id: I0cbddf874ebd1586abe29b80e8d6390680679542
Sharvil Nanavati [Sat, 3 May 2014 19:11:15 +0000 (12:11 -0700)]
Fix data type for rmt_auth_req; it stores an integral value.
This broke pairing in a bunch of ways, most notably the inability
to use Just Works pairing mode. Just Works is used quite heavily
by iOS devices.
http://b/
14438257
Change-Id: I4d32b446d0435acfc73987b91dbd1a0bd3b53ec3
Sharvil Nanavati [Sat, 26 Apr 2014 07:58:15 +0000 (00:58 -0700)]
Minor cleanup of userial code.
Change-Id: Ib8b094196f2de1515f79f17c4b87eb05f4c113dc
Sharvil Nanavati [Sat, 26 Apr 2014 05:38:55 +0000 (22:38 -0700)]
Update RFCOMM socket code to use list data structure.
Change-Id: I70402d8bfaa36b36d3d4b8f3cec98371691e86c9
Sharvil Nanavati [Sat, 26 Apr 2014 06:16:01 +0000 (23:16 -0700)]
Update btif_profile_queue to use the list data structure.
The profile queue maintains a list of pending connect operations
for each profile. If a connect is followed by a disconnect before
the queued connect is dispatched, the disconnect will have no
effect and the connect will proceed.
This code clearly needs to be re-thought; it may be a good idea to
abandon the connect queue entirely in the long-run.
Change-Id: Ic0e85654abcf7a47f65953edb301eb9524394950
Sharvil Nanavati [Thu, 24 Apr 2014 23:22:45 +0000 (16:22 -0700)]
Add a singly linked list implementation for OSI.
Change-Id: Ifffd6f9eabee482a81b326c9cf8d06163aede0f4
Hemant Gupta [Thu, 5 Sep 2013 14:12:50 +0000 (19:42 +0530)]
Bluetooth: On Suspend ignore media task timer event
On Recieving Suspend confirmation from remote device,
Media task timer reload and tx_timer is made false,
hence media task will not be stopped at that instant.
Media task timer expires causing buffer to be allocated.
Changes done to ensure buffer is allocated only if tx_timer
is true.
Change-Id: I971a82cccc64ba033475ad532b096862968de942
Hemant Gupta [Fri, 2 May 2014 19:01:26 +0000 (00:31 +0530)]
HID: Send Close event to upper layers during reconnection
This patch sends close event callback to upper layers, so that UI
is updated of correct state of HID connection when connection
between hid host and hid device drops for some reason and host is
attempting reconnection. Without this patch, upper layers gives
false update of connection still present when actually no connection
exists between hid devices. Connection state was only getting updated
if reconnection attempt was also failing.
Change-Id: Ic276d9b57c5c84c4264ddeeadc34c983c718ba3a
Hemant Gupta [Thu, 19 Dec 2013 15:07:16 +0000 (20:37 +0530)]
GAP: Return BTM_CMD_STARTED from btm_sec_l2cap_access_req
Return BTM_CMD_STARTED from btm_sec_l2cap_access_req when
remote device link is neither authenticated or encrypted so as
to send L2CAP Peer connect response with status auth pending.
This lets remote device extend the waiting time. This fixes IOT
issues with HP laptop EliteBook 8440p/8460p where pairing was
not possible.
Change-Id: I6cf6a72640de938a8145b541d4bad1bcba758ac5
Hemant Gupta [Mon, 5 May 2014 12:15:08 +0000 (17:45 +0530)]
MHF: Route call to correct HS in multi call scenario.
- This change makes sure that audio routes back to correct
headset in multi call scenario even though the other
headset tries to answer or dial.
- Ignore setting hf_idx for ATA/BLDN received from HS
for a waiting call when an active/held call is already
present.
Change-Id: I19949471d481bf911fda2222dc6d730d1a821b65
Matthew Xie [Mon, 5 May 2014 18:06:38 +0000 (18:06 +0000)]
Merge "fix random crashes in bd2str caused by exceeding string array" into klp-wireless-dev
Ganesh Ganapathi Batta [Mon, 28 Apr 2014 23:30:55 +0000 (16:30 -0700)]
Resolve Pairing failure with IPhone
When pairing is initiated from the iPhone side, it sets Bonding bit
without MITM. We responded to this with No bonding, No MITM. This resulted
in JustWorks & Unauthenticated link key. After pairing iPhone initiates a
RFCOMM connection. This caused a link key upgrade to be done, which the iPhone
rejected, resulting in pairing failure. To resolve this the following
enhancements were made
1. If locally initiated pairing always set Bonding bit + MITM
2. If remote initiated
a. copy over the bonding bit
b. if peer has DisplayYesNo set MITM
3. As a fallback if remote had MITM, enable MITM in our response
This forces pairing to use Bonding bit+MITM thus resulting in authenticated
combination linkkey
Change-Id: I08f16c80821bc822023180d01868614ba41e6d88
Sharvil Nanavati [Sun, 4 May 2014 00:12:15 +0000 (17:12 -0700)]
Temporarily fix test suite to swap arguments until code from AOSP is merged in.
Change-Id: I5d8e56f7581df9bcefc8c46518835cac588f47df
Sharvil Nanavati [Thu, 10 Apr 2014 05:20:40 +0000 (22:20 -0700)]
Initial import of HAL-layer tests for bluedroid.
The test cases are in cases/, the support infrastructure for the
tests are in support/. Initially, as new test cases are being added
for different functional areas (e.g. BT socket) we'll need to also
write support functions to make those tests easier to write.
Over time, however, the support functions will be complete enough
that writing additional tests won't require also writing support
routines.
Change-Id: I54abb1011ca5132834a334cc256e3ff18cc20cbb
Matthew Xie [Fri, 2 May 2014 22:19:38 +0000 (22:19 +0000)]
Merge "Fix Null pointer access in GKI timer library" into klp-wireless-dev
Matthew Xie [Fri, 2 May 2014 21:33:24 +0000 (21:33 +0000)]
Merge "Fix issue of HDP select thread not exiting during BT OFF" into klp-wireless-dev
Hemant Gupta [Fri, 18 Apr 2014 09:34:43 +0000 (15:04 +0530)]
GAP: Avoiding two disconnections from DUT
Avoid sending two hci disconnect commandss from DUT when remote
initiated connection fails when user presses cancel for incoming
pairing request.
Change-Id: Idd05ffbcaac427515a54216adcdd7dbe26cb21c8
Hemant Gupta [Mon, 6 Jan 2014 08:58:28 +0000 (14:28 +0530)]
GAP: Update local device name immediately
Though the function btif_config_set_str requests to
save device name immediately, sometimes it doesn't
call save device name if the cached changes are more.
So calling the "btif_config_save" explicitly to avoid
failure cases.
Change-Id: I9fb05caf284d6a6feb906f87a4db19896182d2c9
Ganesh Ganapathi Batta [Mon, 28 Apr 2014 23:21:04 +0000 (16:21 -0700)]
Fix Null pointer access in GKI timer library
Change-Id: Iada2d426fe4592416eed988202c14599656b33e4
Ganesh Ganapathi Batta [Wed, 16 Apr 2014 23:50:09 +0000 (16:50 -0700)]
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
Ganesh Ganapathi Batta [Wed, 30 Apr 2014 00:32:14 +0000 (17:32 -0700)]
fix random crashes in bd2str caused by exceeding string array
remove all casts to avoid sign extension of bd address as this may
exceed the size of destination str buffer
Change-Id: I27dc7e61b52440c6b284b7e9931e6daa66afbf12
Zhihai Xu [Tue, 29 Apr 2014 23:08:48 +0000 (16:08 -0700)]
fix compilation error due to not include correct header
Change-Id: Ic4c1fb319f9c4202efd108d180f438a6fa26e05a
Nitin Srivastava [Fri, 14 Mar 2014 23:19:58 +0000 (16:19 -0700)]
Add support for Multi-HFP devices
1. Add multi headset support in stack.
2. Each HS will be associated with unique CB in BTIF
and also corresponding SCB in BTA.
3. Upstream event callbacks will be sent to
specific HS based on BD_ADDR.
4. Similiarly all commands to BTIF will be for
specific HS.
Change-Id: I0dc6b1b54f16244b802d818ae60944877a41d020
Nitin Srivastava [Thu, 13 Feb 2014 14:01:40 +0000 (19:31 +0530)]
Bluetooth: Clear Notification array on AVRCP disconnect
DUT does not clear previous AVRCP notification registration
on AVCTP disconnect hence DUT sends response even when remote
device hasn't registered.
Changes made to clear notification array and while sending
notification respose check if event is registered.
Change-Id: I610f8ae6381a63236378f179bb2a619ec0c6549e
Nitin Srivastava [Fri, 31 Jan 2014 10:21:24 +0000 (15:51 +0530)]
Set out stream to null if control socket fails to connect
Set out stream to null if control socket fails to connect.
This helps in avoiding wrong usage of audio device out stream
even after the same is freed as part of control socket connection
failure.
Change-Id: I8e2a7bbc71d581525b7eef1955e411c220d01627
Nitin Srivastav [Fri, 21 Feb 2014 13:03:14 +0000 (18:33 +0530)]
Bluetooth: retry recv in case of EINTR
- retry recv call in HAL, in case socket call
fails with EINTR
Change-Id: I3ab27752b0ce0a68f6776cf5da340580e7d1f345
Zhihai Xu [Wed, 27 Nov 2013 08:40:53 +0000 (14:10 +0530)]
Bluetooth: GAP: Remove bonded device info on Authentication fail
Remove bonded device information from the BT-IF layer storage
on authentication failure if already bonded with just works
model.
from QCOM
Change-Id: Ia3c1635c446f39b1dbd4cdd0122c2f70cbbc8dd7
Ganesh Ganapathi Batta [Mon, 28 Apr 2014 23:25:52 +0000 (16:25 -0700)]
Fix issue of HDP select thread not exiting during BT OFF
Change-Id: I52a0a3caff327a7a51e293c431ddbc99db690180
Sharvil Nanavati [Thu, 17 Apr 2014 04:51:56 +0000 (21:51 -0700)]
Use standard C99 integral types. This offers better type safety.
Notice that I had to change a couple of function declarations
because the compiler caught the inconsistency with the new typedefs.
Change-Id: I202fd1dc086de41e1cfe083eb1a5f74a942d01e5