OSDN Git Service
Jaganath Kanakkassery [Wed, 6 Jan 2016 07:27:51 +0000 (15:27 +0800)]
Suspend properly when receiving events without response
In the BTU handler for messages from the controller, rn event may be
received that the stack does not have to respond to. In this case, the
stack should go to sleep.
This patch calls the provided function in the BTU to enter sleep.
Signed-off-by: Jaganath Kanakkassery <jaganathx.kanakkassery@intel.com>
Signed-off-by: Yingkai Cheng <yingkaix.cheng@intel.com>
Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
Change-Id: Ie7c3fcae418eb2480338509e86b7cc870177a965
Loic Poulain [Fri, 18 Dec 2015 01:35:07 +0000 (02:35 +0100)]
Fix data reporting state when using HID device
Start and Stop are called on HID driver probe/unprobe.
Open/Close are called when driver is interesed/not-interested
in data reports, typically when user-space open/close the input
device. So we can have several open/close calls for one start/stop
cycle.
https://www.kernel.org/doc/Documentation/hid/hid-transport.txt
Problem is that current implementation disables data reporting on close
but never enables it on open. This patch fixes this issue to match the
expected behavior.
Change-Id: Id5d4627dba389338b06df60a6e1d993ac3e3e5ec
Signed-off-by: Loic Poulain <loic.poulain@intel.com>
Signed-off-by: Zhiquan Liu <zhiquan.liu@intel.com>
Jakub Pawlowski [Thu, 11 Feb 2016 19:34:38 +0000 (11:34 -0800)]
service: Use built-in byte vector parser
Change-Id: I72369c0b7678338fc8ccf520b59a95affdfd2994
Andre Eisenbach [Tue, 16 Feb 2016 01:50:11 +0000 (17:50 -0800)]
Remove the need for -Wno-constant-logical-operand
Change-Id: Iea44eeed487df3236d9b482b7e5bbc92f7f46797
Andre Eisenbach [Thu, 4 Feb 2016 21:19:32 +0000 (13:19 -0800)]
Remove Porsche car-kit pairing workaround
Bug:
26551752
Change-Id: I14c5e3fcda0849874c8a94e48aeb7d09585617e1
Andre Eisenbach [Tue, 16 Feb 2016 00:38:36 +0000 (16:38 -0800)]
Fix compile error due to interop_feature_t not being public
Change-Id: I3c6d2d28d98098aea1854ebd2726fdaac9cc14e9
Andre Eisenbach [Mon, 15 Feb 2016 22:51:07 +0000 (14:51 -0800)]
Add new HAL functions to fake Bluetooth interface
Change-Id: I5b2b5a495ea14fd743885c4061a6bcd3e7c39c23
Andre Eisenbach [Thu, 14 Jan 2016 10:00:24 +0000 (02:00 -0800)]
Add ability to add interop entries dynamically (2/2)
Add ability and interface for adding dynamic entries to the interop
workaround database.
Bug:
26548845
Change-Id: Id886e4233fc1548727e79f1581cdc0c6f0738d59
Pavlin Radoslavov [Mon, 15 Feb 2016 19:47:37 +0000 (11:47 -0800)]
Fix compilation warnings/errors on fugu
Fix compilation warnings/errors on fugu about unused
variables.
Change-Id: Ib68097122f27c631ab36b71a6815d4e1f3b60558
Pavlin Radoslavov [Sat, 13 Feb 2016 16:47:19 +0000 (08:47 -0800)]
Fix C/C++ compiler generated warnings
* Remove unused functions: -Wno-unused-function
* Fix logical operations that are missing parentheses:
-Wno-logical-not-parentheses, -Wno-parentheses
* Add missing braces in initializers: -Wno-missing-braces
* Remove unused variables: -Wno-unused-variable
* Fix printf()-like formatting issues: -Wno-format
* Avoid using unitialized variables:
-Wno-maybe-uninitialized, -Wno-uninitialized
* Fix a bug inside bta_gattc_get_gatt_db_impl()
when the processed GATT DB attribute type is unknown.
* Fix warnings about missing field initializers:
-Wno-missing-field-initializers
* Re-implement macro COMPILE_ASSERT(COND) to fix a compilation warning:
-Wno-non-literal-null-conversion
* Fix sign mismatch comparison warnings:
-Wno-sign-compare
* Fix warnings related to enum conversion:
-Wno-enum-conversion
* Fix warnings related to incompatible pointer types:
-Wno-incompatible-pointer-types
* Fix warnings related to enum conversion:
-Wno-enum-conversion
Bug:
26879229
Change-Id: I522931fe156aeab23ae841051a9e25ceab00b1c2
Jakub Pawlowski [Thu, 11 Feb 2016 17:05:14 +0000 (09:05 -0800)]
service: Add services removed/added handlers
Change-Id: Ida3f232b4e77bfb95dec78ea4af7677c9c12b411
Pavlin Radoslavov [Fri, 12 Feb 2016 03:44:47 +0000 (19:44 -0800)]
Cleanup C and C++ compiler flags
Cleanup the setting of C and C++ compiler flags:
* (Almost) all compiler flags are set uniformly
in the system/bt/Android.mk file.
* Enable by default breaking the compilation if there is a
compilation warning: -Werror
* Enable most compilation warnings: -Wall -Wextra
* Renamed Android.mk related flags:
- bdroid_C_INCLUDES -> bluetooth_C_INCLUDES
- bdroid_CFLAGS -> bluetooth_CFLAGS
* Introduce variables for C-only and C++ only compiler:
- bluetooth_CFLAGS: common C and C++ compiler flags
- bluetooth_CONLYFLAGS: C only compiler flags
- bluetooth_CPPFLAGS: C++ only compiler flags
* Disable warnings for existing issues - to be removed as issues are
resolved
* Add a workaround for libchrome and -DNDEBUG usage.
Bug:
26879229
Change-Id: Ie7595965ca0c8ead0e95e983e76c327e7891b2c3
Jakub Pawlowski [Fri, 12 Feb 2016 23:15:52 +0000 (15:15 -0800)]
Pick proper addres type for unknown devices
Change-Id: I46641d0fe065b5e5a6620dc34c770429ac8dbe11
Jakub Pawlowski [Fri, 12 Feb 2016 18:35:01 +0000 (10:35 -0800)]
Fix discovery status handling
This typo was introduced in commit
48db2d25 3years ago.
This cause unnecesary purge of cache and rediscovery even though
discovery was successfull.
Change-Id: I828e148ad489af1e231d33d7807bbe0e46f445c5
Subramanian Srinivasan [Tue, 2 Feb 2016 00:21:10 +0000 (16:21 -0800)]
Validates the PDU length of GATT Prepare Write attribute requests
Validates whether the PDU length of GATT Prepare Write
requests satisfy the minimum length requirements of
GATT write attribute request format.
Change-Id: Id18d32b050389ff8c71341bb738dd77225029acd
Ajay Panicker [Thu, 11 Feb 2016 20:33:30 +0000 (12:33 -0800)]
Create backup for bt_config.conf
Move current config file to a backup when a new config file is
saved. This backup can be used in case there is an error loading
the current config file.
Change-Id: Icc210c457dc71a72fc2e82ff72c91207b25deaf1
Ajay Panicker [Wed, 10 Feb 2016 01:35:49 +0000 (17:35 -0800)]
Removed function bte_load_ble_conf
The functionality provided by this function is not needed anymore.
Change-Id: I59696c7a7e1d7ddb095f3a450f58ce1db97927b6
Jakub Pawlowski [Wed, 10 Feb 2016 23:26:14 +0000 (15:26 -0800)]
Add handle range to BTA_GATTC_GetGattDb
Change-Id: Iaf0280853278a4f28dde5b952b646096cfb12d97
Pavlin Radoslavov [Sat, 6 Feb 2016 16:36:06 +0000 (08:36 -0800)]
Removed checks for NULL returns after osi_calloc() / osi_malloc()
Removed explicit checks for NULL pointer returns after calls
to osi_calloc() and osi_malloc(), because those are not needed.
If the memory allocation fails, osi_calloc() and osi_malloc()
will trigger an assert.
Bug:
27048759
Change-Id: I2791eb2f69c08f991f8fcdef10e101a41568cd95
Marie Janssen [Wed, 10 Feb 2016 23:36:48 +0000 (15:36 -0800)]
osi: Don't use -std=c99 to compile
Using -std=c99 to compile breaks when we are using C++ files, which
metrics uses for protobufs.
Bug:
27077250
Change-Id: Ie94e3ea5d8b219671329108e7795cdc02ecc38b4
Ajay Panicker [Wed, 10 Feb 2016 01:08:09 +0000 (17:08 -0800)]
Remove code related to legacy config file
Change-Id: Ia82d9bbffcc5df1ec4cddff28d812ca221505ab9
Satya Calloji [Fri, 5 Feb 2016 23:39:07 +0000 (15:39 -0800)]
Add Privacy 1.0/1.1 check for BG connection
Check for privacy 1.0 and 1.1 controller and do not start
background connection, if RPA offloading is not supported,
since it will not connect after change of random address
Bug:
22102400
Change-Id: Ida618f8dc70e0a3860f76f856bb88de8b55b90d7
Marie Janssen [Wed, 3 Feb 2016 02:51:52 +0000 (18:51 -0800)]
binder: fix possible stack corruption
The stack could be corrupted by crafting a IPC call in interesting ways
when a character buffer was passed.
This patch also removes code duplication where these would occur.
Bug:
26917241
Change-Id: Ib6c149a293abf01f31c69a94c8f6dd91d8a2fff2
Marie Janssen [Sat, 16 Jan 2016 00:14:14 +0000 (16:14 -0800)]
osi: add metrics API
Add a metrics API, which supports creating events which are eventually
passed up to the clearcut logging to track pairings and other events.
Connect this to the dumpsys call when it is called.
Change-Id: Idcf75541fd18b0413cc843d6c7e23a5f08a634a5
Jakub Pawlowski [Wed, 10 Feb 2016 17:17:50 +0000 (09:17 -0800)]
Fix possible memory leak
Fix possible memory leak when allocating reused server cache control
block.
Change-Id: I3aab727e4f60e55530f49b0b05ccf2c891c72760
Jakub Pawlowski [Wed, 10 Feb 2016 00:20:41 +0000 (16:20 -0800)]
Fix auto disconnect right after connecting
Change-Id: Ia36cd898c21058b9a3ed56a0d300c3ea8384a5cf
Priti Aghera [Sat, 6 Feb 2016 01:16:42 +0000 (17:16 -0800)]
Set GATT link inactivity timer to 1
GATT_LINK_IDLE_TIMEOUT_WHEN_NO_APP timer was zero. Due to this zero
inactivity timer after the authentication is complete the link is brought
down immediately. Set it to 1 instead.
Bug:
22100369
Change-Id: I6ba4f63b9e48759e4255f230d6bbf426eda31c6f
Andre Eisenbach [Mon, 8 Feb 2016 23:37:45 +0000 (15:37 -0800)]
Add Developer menu entry to disable Bluetooth absolute volume
Bug:
27078729
Change-Id: I24ac605c6d02dc3fe3904c441ec416cb66b63168
Pavlin Radoslavov [Fri, 5 Feb 2016 21:54:43 +0000 (13:54 -0800)]
Replaced osi_getbuf()/osi_freebuf() with osi_malloc()/osi_free()
Removed the alternative buffer allocation osi_getbuf() / osi_freebuf()
and use instead osi_malloc() / osi_free().
Correspondingly, replaced usage of osi_freebuf_and_reset()
with osi_free_and_reset().
Bug:
24914560
Change-Id: I7a9599ba7fa900321f087da684428133eb0ddd6b
Jakub Pawlowski [Fri, 5 Feb 2016 07:50:45 +0000 (23:50 -0800)]
Use dynamic memory for keeping GATT cache
Change-Id: I60674c47246d8fe2094fe78ce31b752fa2acb89e
Jakub Pawlowski [Tue, 9 Feb 2016 01:11:55 +0000 (17:11 -0800)]
Add missing "\" at end of line
Change-Id: I6b8a275769387cc731f4bf5ec9ec4d10700fc0ba
Pavlin Radoslavov [Fri, 5 Feb 2016 02:20:06 +0000 (18:20 -0800)]
Removed function osi_get_buf_size()
Refactored code that uses function osi_get_buf_size(), and removed
the need for that function.
Bug:
24914560
Change-Id: I0d002635024a9703acb78f47735aafc957a2b761
Jakub Pawlowski [Mon, 8 Feb 2016 23:21:53 +0000 (15:21 -0800)]
Disable gnu-variable-sized-type-not-at-end warning
This warning is triggered unnecessary in too many places.
It spills through the build log and cause very useful warnings
to stay unnoticed.
Change-Id: Iee75327d05cbece4b9dc9c13005a9bfdf94c0d56
Andre Eisenbach [Mon, 8 Feb 2016 20:51:42 +0000 (20:51 +0000)]
Merge "Remove BCM_STR* macros"
Jakub Pawlowski [Mon, 8 Feb 2016 19:11:25 +0000 (11:11 -0800)]
Add missing log tags
When building for Linux, missing log tags cause errors.
Change-Id: I0b3cda3333c059251b00a25bbfc7e764057286be
Andre Eisenbach [Mon, 8 Feb 2016 19:34:00 +0000 (11:34 -0800)]
Remove BCM_STR* macros
This also fixes very incosistent null termination and various string
length issues.
Bug:
27069905
Change-Id: I527256d224ac5b18e3943d6038b9c912b247676f
Jakub Pawlowski [Fri, 5 Feb 2016 23:48:29 +0000 (15:48 -0800)]
Add list_back_node method to osi list
Change-Id: I919ce97373701cbdea03b8228b3a90263d7ef180
Jakub Pawlowski [Fri, 5 Feb 2016 01:59:43 +0000 (17:59 -0800)]
Remove unused return value of bta_gattc_alloc_cache_buf
Change-Id: I624aeaa0c562b5c7404ad37411ad209beac3a5e1
Pavlin Radoslavov [Fri, 7 Aug 2015 02:38:32 +0000 (19:38 -0700)]
Suppress some of the Power Management debug log messages
Suppress some of the Power Management debug log messages that
are printed by default. Some of those messages can be very chatty
if the pairing devices cannot agree on the sniff interval.
For performance reasons, we cannot relax the Nexus Player's
sniff interval, hence those debug log messages shouldn't be
printed by default.
Bug:
22040710
Change-Id: I9a01c7a547b3c592192547e3e6000135ee97d6bf
Pavlin Radoslavov [Fri, 5 Feb 2016 19:22:12 +0000 (11:22 -0800)]
Fix a call to osi_freebuf_and_reset()
Add missing ampersand in a call to osi_freebuf_and_reset()
Bug:
27038970
Change-Id: Idcbd406a8c790bdddfe1c4fbc0381577bedd8c9c
Jakub Pawlowski [Mon, 1 Feb 2016 19:53:36 +0000 (11:53 -0800)]
Keep sec_dev_rec in list instead of static array
This reduces the computational complexity of most BLE operations.
Change-Id: Ife35a50d9ef3467abdc5259c2712bf5d85b8f909
Pavlin Radoslavov [Wed, 3 Feb 2016 02:12:08 +0000 (18:12 -0800)]
Refactor usage of osi_free() and osi_freebuf()
* Allow to call osi_freebuf(ptr) on NULL pointers. This simplifies
the code: a notable number of "if (foo != NULL)" checks are removed.
* Add new function osi_free_and_reset(p_ptr) that frees the buffer,
and explicitly resets the pointer to NULL.
This prevents unintended usage of free memory.
* Add corresponding function osi_freebuf_and_reset(p_ptr)
* Minor cleanup around usages of osi_free() and osi_freebuf()
Also:
* Removed unused function btif_gattc_cleanup()
* Replaced usage of the following functions with osi_freebuf_and_reset()
- mca_free_buf()
- utl_freebuf()
- btif_hl_free_buf()
* Replaced usage of rc_supported_event_free() with osi_freebuf()
* Replaced usage of btif_hl_get_buf() with osi_getbuf()
* Eliminate some of the osi_get_buf_size() calls
Bug:
22948224
Change-Id: Ife860658b26274da6f228d7353cb0f1531587337
Marie Janssen [Fri, 29 Jan 2016 21:37:12 +0000 (13:37 -0800)]
osi: add native wakelocks to metrics
Metrics were only being counted for callout wakelocks.
Move metrics collection to the wrapping functions to account more
centrally.
Change-Id: I772198c3ae05bcb83965420931ddee87b1996b6b
Pavlin Radoslavov [Tue, 2 Feb 2016 18:31:44 +0000 (10:31 -0800)]
Fix the processing of AVRCP Rcvd Pass Through messages
The assignment and handling of the optional tAVRC_MSG_PASS.p_pass_data
data buffer pointer was inconsistent:
- For originating AVRCP packets, it was assigned to osi_getbuf()
allocated memory.
- For received AVRCP packets, it was a pointer in the middle of the
received data buffer.
However, in the common function avrc_pass_msg(), the p_pass_data pointer
was deallocated by osi_freebuf(). This triggered an assert when processing
AVRCP Rcvd Pass Through messages with non-zero Data Length field.
Bug:
26865159
Change-Id: I1b2eb6713636c290caca16e77226c114d99dcb8e
Jakub Pawlowski [Wed, 3 Feb 2016 19:15:05 +0000 (11:15 -0800)]
Register for Service Changed notifications for untrusted devices
As required by Bluetooth Spec 4.2 [Vol 3, Part G] 2.5.2:
Clients without a trusted relationship shall receive an indication
when the service change occurs only during the current connection.
This means that even we're not paired, we should still register
and receive Service Changed.
Change-Id: Ifd6b69f4cdef6d7114a596221d2dd290a3b7044f
Jakub Pawlowski [Thu, 4 Feb 2016 01:22:50 +0000 (17:22 -0800)]
Don't unregister notifications for unmodified services
Change-Id: Ie02dd72a2d4a423ab532ec84a4d588ab83f3e22b
Andre Eisenbach [Wed, 3 Feb 2016 18:30:28 +0000 (10:30 -0800)]
Revert "Keep sec_dev_rec in list instead of static array"
Breaks pairing...
This reverts commit
c9f86da73bfb637426c83b86497c50fede4e0f63.
Jakub Pawlowski [Wed, 3 Feb 2016 01:11:45 +0000 (17:11 -0800)]
Make autoconnect work properly for devices not having security record
Change-Id: I16f71da85afe780383a5d84a904b44aabe4af9f7
Jakub Pawlowski [Mon, 1 Feb 2016 19:53:36 +0000 (11:53 -0800)]
Keep sec_dev_rec in list instead of static array
This reduces the computational complexity of most BLE operations.
Change-Id: I3997b414680ff4288091b1ddf00ec1ef1c4453fb
Andre Eisenbach [Sat, 30 Jan 2016 00:11:13 +0000 (16:11 -0800)]
Fixed paired device config UUID parsing logic
Also added unit tests to cover this bug.
Bug:
26883553
Change-Id: Ice8641fad5c38ee43f1b080665dde70979f9d60f
Jakub Pawlowski [Mon, 1 Feb 2016 19:51:44 +0000 (11:51 -0800)]
Make list_foreach() even more useful
- Changed |callback| return type to list_node_t to be able to interrupt
iteration (to find specific elements for example).
Change-Id: I00eb83725d03e6f1aec239ae11eb19cf59af35a9
Sharvil Nanavati [Sat, 23 Jan 2016 01:03:03 +0000 (17:03 -0800)]
Assume input from /dev/stdin if no argument provided to btsnooz.py.
Change-Id: I54bd137e67eb1fc959663189bcdaac4690c2c645
Jakub Pawlowski [Sat, 30 Jan 2016 08:53:30 +0000 (00:53 -0800)]
Remove unused method
Change-Id: Icb1a9f76cade28112c084cf6fde4d0f8d9c57ed0
Pavlin Radoslavov [Fri, 29 Jan 2016 21:37:44 +0000 (13:37 -0800)]
Added extra Werror compiler flags
Added extra Werror compiler flags that are globally enabled
by default only on certain targets (e.g., arm64).
Thus, we can catch build errors before submitting the code.
Bug:
26879229
Change-Id: I8b1dae6f61219d2274cd2df019464315d4172da2
Jakub Pawlowski [Fri, 29 Jan 2016 07:57:17 +0000 (23:57 -0800)]
service/client: command line made nicer
Currently we print many unnecessary newlines and redisplay prompt too
often. This patch makes the bluetooth-cli output look much nicer.
Change-Id: I5b9d4844488d188e086f12d94e11c4b3e8bf1ddb
Andre Eisenbach [Fri, 29 Jan 2016 22:24:53 +0000 (14:24 -0800)]
Use C99 for new btif static library
Change-Id: Ica13d4e61f22e9bccfa5e3a5104c057cc7693233
Andre Eisenbach [Fri, 29 Jan 2016 21:52:20 +0000 (13:52 -0800)]
Fix build error in bta_gattc_cache.c
Change-Id: I41e95f880bd37647278ad9dba4e12c2b54db273b
Andre Eisenbach [Fri, 29 Jan 2016 21:35:38 +0000 (21:35 +0000)]
Merge "Make BTIF a static library; add unit test framework"
Andre Eisenbach [Fri, 22 Jan 2016 01:47:46 +0000 (17:47 -0800)]
Make BTIF a static library; add unit test framework
Moving BTIF to a static library allows it to be loaded for unit tests.
The framework has been put in place to add unit tests to
'net_test_btif'.
Change-Id: Ie7e0984e90f11f6e3df5c0f34c77cc976627f1d2
Jakub Pawlowski [Fri, 22 Jan 2016 08:09:10 +0000 (00:09 -0800)]
service: add get_gatt_db and it's callback to HAL
Change-Id: I6412b464c4299ea351446f384b539ffa2e6111b2
Jakub Pawlowski [Fri, 22 Jan 2016 07:26:11 +0000 (23:26 -0800)]
Add new HAL method get_gatt_db
Currently getting GATT database from HAL requires multiple calls
and iterating over each element. This is long, unnecessary
complicated process, error prone process. This patch adds new
method, get_gatt_db that can be used to grab whole GATT database
for remote device just in one call.
Change-Id: Ib5d88fbc28d09d5c191e7c0152ca61d6a34f7a81
Pavlin Radoslavov [Fri, 29 Jan 2016 06:46:31 +0000 (22:46 -0800)]
Revert "Revert "Avoid double memory free and crash during LE discovery or disconnect""
The revert includes a compilation fix as well
(missing include of a header file).
This reverts commit
3a4082d7af5c5941769c700d774022a9b982d45c.
Change-Id: I5bb1f468d2c64839037afe5ed2d3ed5d1b21dca2
Ian Pedowitz [Fri, 29 Jan 2016 04:36:30 +0000 (04:36 +0000)]
Revert "Avoid double memory free and crash during LE discovery or disconnect"
This reverts commit
12091a323ef84cad10d91fcf6588a6657e591ee0.
Change-Id: I01deaa5024bfef1782887fd8f8137f83916d8be0
Nitin Arora [Thu, 28 Jan 2016 01:02:02 +0000 (17:02 -0800)]
Avoid double memory free and crash during LE discovery or disconnect
1. Prevent GATT operations to proceed if queue is not empty
This change returns a FALSE from GATT enqueue operation, in case
there is already a GATT command enqueued. This simple change will
a. Prevent incorrect memory freeing of the currently queued command.
b. Prevent incorrect dequeing of the ongoing command and enqueing
another command which will never be executed.
c. Double free of memory causing segmentation fault
2. Prevent performing pending operations when link is down
This change prevents performing the execution of pending operations
when the link is disconnected. The pending operation in that case
is bound to fail thus freeing the memory pointed to by the p_q_cmd
which is cleaned up again by the discovery completion routine and
thus causing double free.
Bug:
24178843
Change-Id: Ief2756f289a7db73d251ef7e247774dd3f7fc413
Pavlin Radoslavov [Thu, 28 Jan 2016 19:37:43 +0000 (11:37 -0800)]
Add missing include statements
This fixes "implicit declaration of function ..." warnings/errors.
Change-Id: I07d0f6a60fdb34acef6a11a00f6e528adece150f
Pavlin Radoslavov [Thu, 14 Jan 2016 00:27:01 +0000 (16:27 -0800)]
Added metrics for A2DP transmission queue
Collect and display A2DP metrics related to the A2DP transmission queue.
The result can be displayed by "adb shell dumpsys bluetooth_manager":
A2DP State:
TxQueue:
Counts (enqueue/dequeue/readbuf) : 1767 / 1767 / 3504
Last update time ago in ms (enqueue/dequeue/readbuf) : 3 / 3 / 3
Frames per packet (total/max/ave) : 12210 / 11 / 6
Counts (flushed/dropped/dropouts) : 0 / 0 / 0
Last update time ago in ms (flushed/dropped) : 0 / 0
Counts (underflow/underrun) : 0 / 0
Bytes (underflow/underrun) : 0 / 0
Last update time ago in ms (underflow/underrun) : 0 / 0
Enqueue deviation counts (overdue/premature) : 893 / 871
Enqueue overdue scheduling time in ms (total/max/ave) : 242 / 12 / 0
Enqueue premature scheduling time in ms (total/max/ave) : 842 / 20 / 0
Dequeue deviation counts (overdue/premature) : 869 / 897
Dequeue overdue scheduling time in ms (total/max/ave) : 604 / 11 / 0
Dequeue premature scheduling time in ms (total/max/ave) : 1204 / 19 / 1
Change-Id: I75c8f24a26cf9ce7a4164a142d4ac286ff17f322
Pavlin Radoslavov [Thu, 28 Jan 2016 16:45:46 +0000 (08:45 -0800)]
Fix the calling pattern of the debug dump functions
Group together the calls to the internal foo_dump() functions,
so the output file descriptor is not closed prematurely.
Bug:
26847370
Change-Id: I3afc9502169424081efcc5deae055fbbd91ed5f1
Sharvil Nanavati [Thu, 28 Jan 2016 15:48:34 +0000 (15:48 +0000)]
Merge "Spoof response to AT+CNUM if we don't get a reply from the audio gateway."
Sharvil Nanavati [Tue, 26 Jan 2016 21:09:22 +0000 (13:09 -0800)]
Fix return value for HAL function config_clear.
Change-Id: I75712f721f7031705d0accb4ffe89467d52d7aa3
Subramanian Srinivasan [Fri, 15 Jan 2016 01:45:01 +0000 (17:45 -0800)]
Adds null check before freeing LE services list
Prevents the crash which happens when device is
disconnected during service discovery and the
services list is not yet properly allocated
memory and populated. This change frees up the
services list after discovery complete only when
it is not null.
Change-Id: I0ced14d2ee133a332fa2fd7c456267438813a600
Subramanian Srinivasan [Sat, 9 Jan 2016 01:37:28 +0000 (17:37 -0800)]
Fix compilation errors when SMP_DEBUG flag is enabled
Fix compilation errors in SMP related files when
SMP_DEBUG compile time flag is enabled.
Change-Id: I5593750c27241345beb8e8b9278b045803d3fcc9
Sharvil Nanavati [Wed, 27 Jan 2016 17:43:16 +0000 (09:43 -0800)]
Spoof response to AT+CNUM if we don't get a reply from the audio gateway.
The Huawei Honor 4X CHE1-CL10 phone doesn't reply to AT+CNUM so
we end up disconnecting the service level connection. In this CL,
I'm spoofing an OK response to AT+CNUM in case we time out waiting
for a reply.
Bug:
26504036
Change-Id: I91d5ab4ea91fd67b3f6c6f796c39fd0091bff5cf
Pavlin Radoslavov [Thu, 28 Jan 2016 00:03:19 +0000 (16:03 -0800)]
Allow alarm_cancel() on NULL timers
Remove an assert that prevents using alarm_cancel() with NULL
timers.
Bug:
26831803
Change-Id: Ifd1476272b13a3f7fd5a0dbb57ee867cbfe2c2bb
Marie Janssen [Tue, 12 Jan 2016 19:14:24 +0000 (11:14 -0800)]
service: Update HAL call for arguments
The HAL now takes an additional argument for dumpsys arguments.
Change-Id: I286149e4d86ea50c4830a9f6d32e1d57025d01a7
Jakub Pawlowski [Wed, 27 Jan 2016 19:38:54 +0000 (11:38 -0800)]
service: MTU changed callback for GATT server
Change-Id: I8431e970004f9b96cc40c3a5ca7878815d4d53bb
Jakub Pawlowski [Tue, 26 Jan 2016 22:56:21 +0000 (14:56 -0800)]
service/client: add command to change MTU
Change-Id: I096760759991b855efd897adbd6c5aa4e18b26bb
Andre Eisenbach [Tue, 26 Jan 2016 21:29:11 +0000 (13:29 -0800)]
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
Andre Eisenbach [Tue, 26 Jan 2016 19:19:16 +0000 (11:19 -0800)]
Fix invalid pointer de-reference resulting in a crash
Bug:
26792899
Change-Id: I0c9a22ef1574e6214c108a4b247cf24e26f71ee9
Jakub Pawlowski [Tue, 26 Jan 2016 20:58:47 +0000 (12:58 -0800)]
service: add SetMtu and OnMtuChanged
Change-Id: I7a6c6cb46f4710b5d2c57b9d0e9cfac166d7cd62
Dan Willemsen [Wed, 27 Jan 2016 00:34:20 +0000 (00:34 +0000)]
Merge "Remove headers from LOCAL_SRC_FILES"
Jakub Pawlowski [Tue, 26 Jan 2016 17:53:06 +0000 (09:53 -0800)]
service: add bunch of GATT callback handlers
RegisterForNotificationCallback
NotifyCallback
WriteCharacteristicCallback
WriteDescriptorCallback
Change-Id: Ic92104e427d153b5b6567fcd7fe4d967df2b3b61
Jakub Pawlowski [Tue, 26 Jan 2016 03:27:43 +0000 (19:27 -0800)]
service/example: Heart Rate Server: advertise UUID
Change-Id: Iaf7950e9af73926ec7bfb37189882ba8fad4123c
Jakub Pawlowski [Tue, 26 Jan 2016 16:55:58 +0000 (16:55 +0000)]
Merge "service: add pairing callback handling"
Jakub Pawlowski [Tue, 26 Jan 2016 16:55:27 +0000 (16:55 +0000)]
Merge "service: Fix BluetoothInterface locking issues"
Jakub Pawlowski [Tue, 26 Jan 2016 03:38:47 +0000 (19:38 -0800)]
service: add pairing callback handling
Change-Id: I13badc4ab9738374bfa082360a68086524d6bd9b
Jakub Pawlowski [Tue, 26 Jan 2016 15:12:46 +0000 (07:12 -0800)]
service: implement HAL callback for response confirmation
Change-Id: Iec1c33574cef49053cf1f8eb3835b20047cb96eb
Andre Eisenbach [Mon, 25 Jan 2016 22:21:21 +0000 (14:21 -0800)]
Do not enable A2DP sink by default
Bug:
26742931
Change-Id: I70b1fdcd72abae2712e37f49ecb588901998cc12
Jakub Pawlowski [Tue, 26 Jan 2016 03:35:57 +0000 (19:35 -0800)]
service: Fix BluetoothInterface locking issues
ObserverList class handles adding/removing elements during iteration
by itself, therefore we don't need to do any locking.
Additionally, change lock type to shared for better performance, and
to avoid possible deadlocks that might be caused by calling HAL from
observers.
Change-Id: Ie2e6ff61f6a285e2f9d3dd1ab7ed37985ca31082
Dan Willemsen [Tue, 26 Jan 2016 03:48:44 +0000 (19:48 -0800)]
Remove headers from LOCAL_SRC_FILES
The build system does not use headers or directories in LOCAL_SRC_FILES.
To prevent typos, it's becoming a warning to add something to
LOCAL_SRC_FILES that is not used.
Also remove default values while we're here.
Change-Id: Ide7b6ecbe21933719736342d4d545368788c652b
Jakub Pawlowski [Fri, 22 Jan 2016 03:44:43 +0000 (19:44 -0800)]
service: Handle configure_mtu_cb, search_complete_cb and search_result_cb events
This patch adds HAL wrappers for those three events in preparation to
triggering MTU exchange and service discovery.
search_result_cb will not be propagated above HAL, new method will be
implemented to get GATT database content when it's ready.
Change-Id: Id25699879923ff64c8bdb8942581ea32c2390dac
Marie Janssen [Mon, 25 Jan 2016 16:18:55 +0000 (16:18 +0000)]
Merge "service/example: Add advertise flag for hr server"
Jakub Pawlowski [Mon, 25 Jan 2016 14:54:50 +0000 (14:54 +0000)]
Merge "service: handle remote_device_properties_cb callback"
tturney [Thu, 21 Jan 2016 18:19:22 +0000 (10:19 -0800)]
Additional headsets blacklisted for absolute volume
Devices blacklisted:
Bluebuds Freedom
iKross
Jabra
Swage Rokitboost HS
Bug:
26070064
Change-Id: Ic27d225718b84234541bf1b170f94dea0bc4463c
Sharvil Nanavati [Sat, 23 Jan 2016 01:23:35 +0000 (01:23 +0000)]
Merge "Remove unused definition BOARD_HAVE_BLUETOOTH_BCM."
Eric Laurent [Thu, 14 Jan 2016 02:09:37 +0000 (18:09 -0800)]
A2DP audio HAL: fix write error behavior
Do not return -1 status in case of write error but
emulate normal timing and return the number of bytes written
as if no error had occured.
This is because audio flinger does not take any recovery
action in case of write error anyway but does not increment the
number of frames written to the HAL.
In case of persisting error, active audio tracks will not finish playback
and a wakelock will be held indefinitely.
Bug:
25488825
Change-Id: I4f00ba8d7a5c55f70520d448d894240c54685027
Sharvil Nanavati [Sat, 23 Jan 2016 00:54:33 +0000 (16:54 -0800)]
Remove unused definition BOARD_HAVE_BLUETOOTH_BCM.
Change-Id: I4f47ffbec067ad1d7b4db0269cd5f7ee21ae7861
Jakub Pawlowski [Fri, 22 Jan 2016 23:07:07 +0000 (15:07 -0800)]
service/example: Add advertise flag for hr server
From now on if example hr server is run with --advertise flag,
it will start advertising connectable advertisements with name
and tx power.
Change-Id: I9bc9e5037022c7b61d9f466e32a0c2e30a58815b
Pavlin Radoslavov [Fri, 22 Jan 2016 21:13:45 +0000 (13:13 -0800)]
Add missing creation of timer tSMP_CB.smp_rsp_timer_ent
Add missing creation of timer tSMP_CB.smp_rsp_timer_ent so
the timer is not NULL.
Bug:
26611369
Change-Id: I2882d40090599b628ecee777b244376168806776
Pavlin Radoslavov [Fri, 22 Jan 2016 18:44:40 +0000 (10:44 -0800)]
Add extra log if timer_create(CLOCK_BOOTTIME_ALARM) fails
Add explicit log messages if timer_create(CLOCK_BOOTTIME_ALARM)
fails. The most likely reason is the kernel doesn't have
the appropriate patches.
Bug:
25739638
Change-Id: Icbeaa965d729ba11dfb7cfbb6185b1655b3c6de4
Jakub Pawlowski [Fri, 22 Jan 2016 03:14:05 +0000 (19:14 -0800)]
service: handle remote_device_properties_cb callback
remote_device_properties_cb is being triggered by HAL when
scanning for remote devices. Leaving it as null causes lots
of assert errors in log. This patch fixes that.
Change-Id: I4dae3a34adbe59d659608387504206cc06ec6530