OSDN Git Service
Andre Eisenbach [Tue, 27 Dec 2016 22:48:34 +0000 (14:48 -0800)]
Fix pointer arithmetic in BTA_DmBleCfgFilterCondition
Using the pointer to the beginning of a union in a member of the union,
which will then be over-written, is a bad idea(TM).
Bug:
33910711
Test: manual
Change-Id: I0b979e493688bf8c02119a2ef6707d6c8e730dcb
Myles Watson [Sat, 17 Dec 2016 01:01:42 +0000 (17:01 -0800)]
osi: Return 0 on osi_property_get failure
Test: mma -j32
Change-Id: Ia1aae4cd5618816b529449844b3a0724e4eb3200
Jakub Pawlowski [Tue, 20 Dec 2016 20:55:51 +0000 (12:55 -0800)]
Linux build fix
Test: compilation test
Change-Id: I0834431378b015eafbb26c48af342af4a650972b
Jakub Pawlowski [Tue, 20 Dec 2016 01:05:33 +0000 (17:05 -0800)]
Remove reduntant capabilities check
BTM layer checks if LE is avaliable, and if proper VSC are
avaliable, no need to do additional checks in BTA.
Test: sl4a FilteringTest
Bug:
30622771
Change-Id: I594b152d18f08a46b65930547a991dbb6f188c4b
Jakub Pawlowski [Tue, 20 Dec 2016 00:13:08 +0000 (16:13 -0800)]
Get rid of BLE_ANDROID_CONTROLLER_SCAN_FILTER
All calls to filter related code is guarded by check if HCI VSC are
available. There is no need to keep double check.
Test: sl4a FilteringTest
Bug:
30622771
Change-Id: Ib4c53593d536a2985926ef2b725bc69050bdb035
Treehugger Robot [Tue, 20 Dec 2016 00:39:42 +0000 (00:39 +0000)]
Merge "Remove btif dependency on libmedia"
Jakub Pawlowski [Sun, 18 Dec 2016 01:08:15 +0000 (17:08 -0800)]
Modernize BLE Scanner implementation (2/3)
Get rid of BTA state machine states for BLE scanning.
Test: sl4a FilteringTest
Bug:
30622771
Change-Id: I8a879604f413c9980cf64983d8ef6b9a94669295
Jakub Pawlowski [Mon, 5 Dec 2016 19:46:23 +0000 (11:46 -0800)]
Expose Bluetooth 5.0 properties to JNI
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: I6185e6926e7363824aa573c7d65f7ab66f954e52
Jakub Pawlowski [Tue, 13 Dec 2016 00:22:56 +0000 (16:22 -0800)]
Use LE Extended Advertising Report Event when available
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: Id85504922c21f15bc36ac8bb5e4ab962ee356e3d
Jakub Pawlowski [Fri, 2 Dec 2016 19:34:06 +0000 (11:34 -0800)]
Use extended set scan enable/parameters when available
When LE Advertising Extension is available on the controller we must use
both extended advertising and scanning commands. Otherwise, according to
the spec, controller will return error.
This patch makes sure that proper avaliable HCI calls are made.
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest as scanner
Change-Id: I6906c381f0f758bd24b592390a4ef46e7fae36ed
Jakub Pawlowski [Thu, 1 Dec 2016 23:32:58 +0000 (15:32 -0800)]
Update BleAdvertiserHciInterface
This patch updates BleAdvertiserHciInterface to be on pair with
Bluetooth 5.0 LE Advertising Extension feature.
Bug:
30622771
Test: net_test_stack_multi_adv native test
Change-Id: Ie0ec8c7f8ed0d7a874e392123b3486c767121140
Jakub Pawlowski [Wed, 30 Nov 2016 21:51:01 +0000 (13:51 -0800)]
Handle Advertising Set Terminated event
Make BleAdvertiserHciExtendedImpl report when advertising set is
disabled because of new connection.
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: Ic13a31fe4bb92f121a29d540274d13893775a450
Jakub Pawlowski [Tue, 29 Nov 2016 17:26:16 +0000 (09:26 -0800)]
Advertising Extension Implementation
This patch implements current BleAdvertiserHciInterface using LE
Advertising extension HCI commands.
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: Icaaf24d6d02d8a887b3bb57d5b858b929f11c413
Jakub Pawlowski [Fri, 16 Dec 2016 18:43:49 +0000 (10:43 -0800)]
BLE scan filter setup simplification (2/3)
Bug:
30622771
Test: sl4a BleScanTest
Change-Id: I55e6c201849a057995c0c6fda1c52af826749922
Sanket Agarwal [Mon, 19 Dec 2016 19:15:00 +0000 (11:15 -0800)]
AVRCP CT: Register for UUIDS Changed
-- Also fix a bug introduced by change of data types in AVRCP Open state
and AVRCP Browse Open state. Due to change in data type and field
mismatch the status value was being read incorrectly
Bug: b/
33750053
Test: Manual test of browse connect
Test: PTS test for UUIDs changed
Change-Id: Ifecf9480a3fabeee8ad8302ebb7cd48f5322dea7
Jack He [Sun, 18 Dec 2016 00:29:00 +0000 (16:29 -0800)]
Remove btif dependency on libmedia
* btif uses AudioTrack from frameworks/av which is under libaudioclient
* Current dependency on libmedia is incorrect as it is an indirect
dependency to libaudioclient
Bug:
33718447
Test: code compilation, no user visible effect
Change-Id: I7c44095cd282fabf8595015910670193077c1514
Treehugger Robot [Sat, 17 Dec 2016 02:34:14 +0000 (02:34 +0000)]
Merge "Add unit tests and refactor LE legacy pairing key distribution methods"
Jakub Pawlowski [Wed, 14 Dec 2016 17:49:38 +0000 (09:49 -0800)]
Refactor LE scanning HAL (2/3)
This patch converts btgatt_scanner_interface_t struct into
BleScannerInterface class. It also refactors three most important
methods from this interface: RegisterAdvertiser, Scan, and Unregister.
Rest of this interface will be updated in following patches.
Bug:
30622771
Test: sl4a BleScanApiTest
Change-Id: Ie35356f6c3c4f5488514ef55a48a32c93fb21b83
Sanket Agarwal [Thu, 15 Dec 2016 22:47:29 +0000 (14:47 -0800)]
Incoming HF connection: CB interaction between BTA <-> BTIF
For incoming connections we are not storing the handles in BTIF which
implies that BTIF ignores the message (and so does jni -> java). This is
fixed by sending the handle as part of BTA message on incoming accept.
Other bugs include connection from remote (incoming) and disconnecting
from host. They also depended on not storing the handle properly in
first place.
Bug: b/
33555377
Bug: b/
30984220
Test: Manual testing of incoming connections
Change-Id: I84950d42aba2d2c975ea86cc8217fd0129cc90e9
Jack He [Thu, 15 Dec 2016 10:48:33 +0000 (02:48 -0800)]
Add unit tests and refactor LE legacy pairing key distribution methods
* Add unit test for confirm (c1), p1, and p2
* Refactor the code to reduce number of methods
* Refactor c1's code to make it testable
Bug:
32413756
Test: Code compilation, Unit Test, PTS SM Tests
Change-Id: I5cc876b7dd2b21a0780ac9a5236420223df6cddb
Myles Watson [Fri, 16 Dec 2016 16:13:07 +0000 (08:13 -0800)]
test_vendor: Use pipe2 to set pipe flags
Simplify the code to fix a typo. F_SETFD should have been
F_SETFL.
Test: run unit tests
out/host/linux-x86/nativetest/test-vendor_test_host/test-vendor_test_host \
--gtest_filter=AsyncManagerSocketTest.*
Change-Id: I215381d6e130428acae7d73d80fefc97cbf64651
Treehugger Robot [Fri, 16 Dec 2016 18:07:46 +0000 (18:07 +0000)]
Merge "Replace assert with CHECK from base/logging.h"
Myles Watson [Thu, 8 Dec 2016 22:34:20 +0000 (14:34 -0800)]
test_vendor: Add more unit tests for async_manager
Test: run the unit tests
out/host/linux-x86/nativetest/test-vendor_test_host/test-vendor_test_host \
--gtest_filter=AsyncManagerSocketTest.*
Change-Id: I8c5e05c5506a067a6148d54dc23bbb931ad612e7
Jack He [Tue, 13 Dec 2016 09:59:12 +0000 (01:59 -0800)]
Replace assert with CHECK from base/logging.h
* Replace assert with CHECK
* Remove all NDEBUG definitions
* Remove hacks for BT_LIBCHROME_NDEBUG
* Removed some removed directories from Makefile such as hcis, brcm, rpc
Coccinelle-assisted:
@@
@@
- #include "base/logging.h"
+ #include <base/logging.h>
@ assert_included @
@@
@ base_logging_included @
@@
@ depends on (assert_included && !(base_logging_included)) @
@@
- #include <assert.h>
+ #include <base/logging.h>
@ depends on (assert_included && base_logging_included) @
@@
- #include <assert.h>
@@
expression E;
@@
- assert(E);
+ CHECK(E);
And a bash script:
for file in $(find . -name "*.cc"); do
spatch --sp-file replace_assert_with_CHECK.cocci --in-place $file
done
The following files are maually edited:
btif/src/btif_config.cc
btif/src/btif_avrcp_audio_track.cc
btif/src/btif_gatt_client.cc
osi/src/data_dispatcher.cc
osi/src/reactor.cc
osi/src/thread.cc
osi/src/fixed_queue.cc
osi/src/list.cc
osi/src/allocation_tracker.cc
osi/src/alarm.cc
osi/test/wakelock_test.cc
Bug:
31781465
Test: Code compilation, Unit Tests, BtStressTest, BtFunhausMetricsTest
Change-Id: I21dc10a45be31665e41441b75b0515ed87523988
Jakub Pawlowski [Thu, 15 Dec 2016 22:35:15 +0000 (14:35 -0800)]
BTA Application registration refactor
This patch replace BTA state machine state associated with registration
of new application, together with BTA_GATTC_API_REG_EVT, and
tBTA_GATTC_API_REG. Instead, it uses closure to post registration task,
and callback for registration event.
Bug:
30622771
Test: sl4a ConcurrentBleAdvertiserTest GattConnectTest
Change-Id: I62d68485170ef5472237d62b285353f2c9bc8250
Jack He [Thu, 15 Dec 2016 18:56:55 +0000 (10:56 -0800)]
Change the parameter type of smp_debug_print_nbyte_little_endian
* This function used to take (const uint8_t*) as the second parameter
and it causes all its calls to cast a (const char*) to this type
* This patch changes it to (const char*) so no cast needed
Coccinelle-assisted:
@ rule1 @
type T;
expression A, B, C;
@@
smp_debug_print_nbyte_little_endian(A,
- (T)
B, C);
and
for file in $(find . -name "*.cc"); do
spatch --sp-file refactor_smp_print_func.cocci --in-place $file
done
Bug:
33663033
Test: code compilation, no user visible effect
Change-Id: Ibeed0b414514acc4a8e94e47e99117bdb3e454ff
Ajay Panicker [Tue, 29 Nov 2016 01:40:09 +0000 (17:40 -0800)]
Remove unused function definitions
Test: Code still compiles
Change-Id: I4a86cd3b515ad3da8f852f024952e3f7a85d1071
Jakub Pawlowski [Wed, 14 Dec 2016 02:33:14 +0000 (18:33 -0800)]
Remove unused btm_set_random_address
Bug:
30622771
Test: compilation test
Change-Id: I0e502fb9b5b2cc3ccad0aa142a0ec9fedea7d1df
Jakub Pawlowski [Mon, 28 Nov 2016 19:16:04 +0000 (11:16 -0800)]
LE Extended Advertising
This patch checks if LE Extended Advertising, and LE Periodic Advertising
features are supported. Also if they are supported, it will read number of
avaliable advertisers, and maximum advertisement data size supported by
controller.
Bug:
30622771
Test: sl4a ConcurrentBleAdvertisingTest
Change-Id: Iabfda3dd081519ed70c99eb4290667e10790e047
Pavlin Radoslavov [Sat, 10 Dec 2016 01:50:59 +0000 (17:50 -0800)]
Replace usage of "vector<>" with "std::vector<>"
This change is needed so we can remove the last instances
of "using std::vector" statements in hardware/libhardware.
Test: code compilation
Change-Id: I6a9fc62152371d1bba6ead71e7ff8c2610799637
Jack He [Wed, 7 Dec 2016 02:29:15 +0000 (18:29 -0800)]
Remove unnecessary error message in PORT_DataInd
* Removed unnecessary error message in PORT_DataInd
* Removed unnecessary spaces
* Reformat the code a little bit
Bug:
33398566
Test: code compilation as there is no functional change
Change-Id: I6f4b16f3fd3bdbb58aa09d1548a96f1289124cd3
Jakub Pawlowski [Wed, 7 Dec 2016 19:25:15 +0000 (11:25 -0800)]
Get rid of selective connection procedure
Bug:
30622771
Test: compilation test
Change-Id: I1a7e4c49f93f11a350b96ffe7b2e69974ed82f46
Jakub Pawlowski [Wed, 7 Dec 2016 18:54:44 +0000 (10:54 -0800)]
Simplify LE Advertising Report Event processing
Bug:
30622771
Test: compiliation test
Change-Id: I78ac958b62462dc7aa322336c047670eec6bda0f
Jakub Pawlowski [Sat, 10 Dec 2016 22:20:18 +0000 (14:20 -0800)]
Fix UUID comparision when enabling HID protocol mode for LE devices
Change-Id: Ie635b3b763db5da25e58d7366c2438df67438a81
Emil Lenngren [Mon, 12 Dec 2016 18:47:12 +0000 (18:47 +0000)]
Fix maximum connections reached for BLE
There was a patch some time ago:
https://android.googlesource.com/platform/system/bt/+/
24adb37e4106bf8544c7729d34451fdf2777c4dc
But that patch assumes the error code sent is Connection Rejected Due
To Limited Resources. Most controllers however send Connection Limit
Exceeded, which is more correct. This patch accept both error codes.
Change-Id: Ifead1718cfecb4d6f73c668b5ea743cc68fdaf73
Signed-off-by: Emil Lenngren <emil.lenngren@gmail.com>
Treehugger Robot [Mon, 12 Dec 2016 19:34:29 +0000 (19:34 +0000)]
Merge "test-vendor: Fixed a race condition on the destructor of AsyncManager."
Jorge E. Moreira [Sat, 10 Dec 2016 23:11:30 +0000 (15:11 -0800)]
test-vendor: Fixed a race condition on the destructor
of AsyncManager.
Test: Run the unit tests
Change-Id: Icfbaf96b40f10f57e7c925422985ed7004adea64
Jack He [Sat, 10 Dec 2016 01:42:28 +0000 (17:42 -0800)]
Remove extern "C" from header files
Since change 290046, most files in system/bt is compiled as C++ source.
Therefore, there is no longer a need for the extern "C" wrapper around
includes that export symbols from those sources.
The following python script is applied to each file in the directory:
front = '#ifdef\s+__cplusplus\s+extern\s+"C"\s+{\s+#endif\s+'
back = '#ifdef\s+__cplusplus\s+}\s+#endif'
with open(sys.argv[1], "r") as f:
data = f.read()
data = re.sub(front, "", data)
data = re.sub(back, "", data)
print data
through a shell script:
for file in $(find . -name "*.h"); do
python remove_cpp_extern_c.py $file > tmp
cat tmp > $file
rm tmp
done
with following files not edited:
* stack/include/a2dp_*
* include/bt_trace.h
* embdrv/sbc/*
Bug:
33492510
Test: Code compilation, BtFunhausMetricsTest, BtStressTest
Change-Id: Iac21cdfb1924b50478dd0b82326e092602cbc9d4
Sanket Agarwal [Wed, 7 Dec 2016 21:39:02 +0000 (13:39 -0800)]
Write unit test for bta/btif HF client role
Also fix a bug discovered by unit tests:
bdcmp returns 0 on success hence use negation
Bug: b/
30984220
Test: Unit test
Change-Id: I37f7c71c5dd809e4df3d8c2c79906a74c2b19d34
Treehugger Robot [Thu, 8 Dec 2016 22:43:07 +0000 (22:43 +0000)]
Merge "Remove additional usages of UINT_TO_PTR"
Treehugger Robot [Thu, 8 Dec 2016 21:26:22 +0000 (21:26 +0000)]
Merge "Initialize SDP rmt_io_cap to UNKNOWN (0xFF)"
Ajay Panicker [Wed, 23 Nov 2016 04:28:21 +0000 (20:28 -0800)]
Remove additional usages of UINT_TO_PTR
Bug:
32995283
Test: TestTracker/69659
Change-Id: If37b8bcf30f098f6fc2c4dff82118a9f47a125a3
Ajay Panicker [Thu, 8 Dec 2016 01:52:43 +0000 (17:52 -0800)]
Remove usages of SDP_CLIENT_ENABLED
Test: Sanity test connecting to headset and carkit
Change-Id: I215743c9d07881b9fa8213c52853b9a389f8452d
Treehugger Robot [Thu, 8 Dec 2016 15:07:41 +0000 (15:07 +0000)]
Merge "Remove double includes"
Jakub Pawlowski [Wed, 7 Dec 2016 22:16:35 +0000 (14:16 -0800)]
Build fix
Test: compilation test with BLE_PRIVACY_SPT == FALSE
Change-Id: Icd811584638e37101dabd433d7a4f86807e928fb
Jakub Pawlowski [Wed, 7 Dec 2016 21:34:20 +0000 (13:34 -0800)]
Build fix
Test: compilation test
Change-Id: I44648bcb5e41103066861d7060c0a7dc85cad936
Sanket Agarwal [Wed, 7 Dec 2016 20:29:43 +0000 (20:29 +0000)]
Merge "Implement multiple control blocks for HF Client in BTA/BTIF"
Jakub Pawlowski [Tue, 6 Dec 2016 23:40:58 +0000 (15:40 -0800)]
Simplify btm_ble_resolve_random_addr
Bug:
30622771
Test: manual testing
Change-Id: I604d0e909a6fe270e2b413abbdb497d622780261
Sanket Agarwal [Thu, 1 Dec 2016 03:43:47 +0000 (19:43 -0800)]
Implement multiple control blocks for HF Client in BTA/BTIF
Test: Manual test for multiple incoming/outgoing HF connections
Bug: b/
30984220
Change-Id: If66cad7c9bbc92051ebb7efb2b352c10e7514af3
Sanket Agarwal [Thu, 1 Dec 2016 03:43:47 +0000 (19:43 -0800)]
BTA HF Client should use dynamic control block
Most of the functions in bta_hf_client_at.cc are
currently using a static field for passing callbacks to
BTIF layer. In order to support multi device we need to make
the functions have a parameter which denotes the device.
In order to pass all the required information we choose to
pass the control block for the device instead.
Bug: b/
30984220
Test: Manual regression test
Change-Id: Iac692d7e28df3955ddbd28707c323c41714bd86a
Stephen Hines [Thu, 1 Dec 2016 11:23:35 +0000 (03:23 -0800)]
Properly align some packed data structures.
Bug: http://b/
31532493
Test: Built with -Waddress-of-packed-member enabled.
These data structures later take the address of their uuid field, which
results in a possibly unaligned access to the underlying data. To
prevent the misalignment, we add a further attribute to ensure that the
base of these packed structures is aligned at least as much as the uuid
data member requires (so we can continue using the address of it for
direct dereferences).
Change-Id: I3ec6945b6ea343bef11326a10343309a863786cf
Jack He [Thu, 1 Dec 2016 21:34:07 +0000 (13:34 -0800)]
Initialize SDP rmt_io_cap to UNKNOWN (0xFF)
* Set rmt_io_cap to 0xFF (Unknown) when initializing security device record
* Check if rmt_io_cap is unknown when processing passkey confirmation
request and fail the confirmation if rmt_io_cap is never updated since
record creation
Bug:
33269435
Test: BtStressTest:test_pair_bluetooth_stress
Change-Id: I329f3da37422d34548e4ef5d16fae4b5159fca22
Marie Janssen [Tue, 6 Dec 2016 18:50:32 +0000 (18:50 +0000)]
Replace pthread_mutex with std::mutex
am:
21da63773c
Change-Id: I58a70a7ffbeae8ea19beb828512e863f06fc8fec
Marie Janssen [Thu, 3 Nov 2016 01:31:55 +0000 (18:31 -0700)]
Replace pthread_mutex with std::mutex
In an effort to simplify and reduce errors, replace pthread_mutexes
with std equivalents.
Test: run unit tests & manual sanity checks
Change-Id: I5c33e0b4f4c85133ae4f7415cd19372fc4c7ca1a
liuchao [Tue, 6 Dec 2016 17:01:49 +0000 (17:01 +0000)]
Fix invvalid lcid check in mca_tc_tbl_by_lcid()
am:
7678dcacd8
Change-Id: I6c9de612bb6f7eac37aaf553af0e22a179aeb928
liuchao [Mon, 5 Dec 2016 08:24:04 +0000 (16:24 +0800)]
Fix invvalid lcid check in mca_tc_tbl_by_lcid()
This fixes a potential bug when (lcid - L2CAP_BASE_APPL_CID)
is used as an array index.
Test: mm -j 8
Change-Id: I7f917bf66e4002f65cf1c0bec02eff7d39181790
Myles Watson [Mon, 5 Dec 2016 17:51:25 +0000 (09:51 -0800)]
Remove double includes
Test: mma -j32
Change-Id: I0df664eaadf06af0881c1f55c826ecab52239526
liuchao [Mon, 5 Dec 2016 20:29:35 +0000 (20:29 +0000)]
Remove redundant added bta_hh_find_cb call in read_rpt_clt_cfg
am:
ecff82227b
Change-Id: Ie06a1c231254746f1a30b53a0b51b65c9c311e36
liuchao [Mon, 5 Dec 2016 08:13:39 +0000 (16:13 +0800)]
Remove redundant added bta_hh_find_cb call in read_rpt_clt_cfg
This fixes an redundant call to bta_hh_find_cb to get a bta_hh_index
Test: mm -j 8
Change-Id: I455837d00d992248db8d8432b85227d1f92b3b02
Jaekyun Seok [Mon, 5 Dec 2016 00:43:31 +0000 (00:43 +0000)]
Merge "Use shared lib of libtinyxml2 instead of static one."
am:
344ca410c4
Change-Id: I055cac5d25d03ed8f0b2f3785f5970f794959313
Jaekyun Seok [Mon, 5 Dec 2016 00:38:22 +0000 (00:38 +0000)]
Merge "Use shared lib of libtinyxml2 instead of static one."
Pavlin Radoslavov [Sat, 3 Dec 2016 04:58:18 +0000 (04:58 +0000)]
Add extra logs by default inside sdp_copy_raw_data()
am:
9f9166c583
Change-Id: I13ec9823ecc24cac9f4c353cb233dcc8a1a8ed7a
Myles Watson [Sat, 3 Dec 2016 04:22:51 +0000 (04:22 +0000)]
Fix formatting of config files
am:
dde03b2b53
Change-Id: Ib62f5d6550f395a0f8b3b142a01f1777681d2ecd
Pavlin Radoslavov [Tue, 29 Nov 2016 00:59:43 +0000 (16:59 -0800)]
Add extra logs by default inside sdp_copy_raw_data()
The extra logging is needed for investigating an issue that
is hard to reproduce.
Test: code compilation
Bug:
31795382
Change-Id: Ibe500e332dba8f44485b44bcac32d11be52520a6
Myles Watson [Fri, 2 Dec 2016 20:44:57 +0000 (12:44 -0800)]
Fix formatting of config files
Revert "Apply clang-format to the rest of the tree" for
.conf files
Change-Id: If3f4a06bd8ebceedf1911b77afb29605fbeb92ef
Test: mma -j32
Myles Watson [Fri, 2 Dec 2016 21:15:52 +0000 (21:15 +0000)]
Remove coverity comments
am:
37492db916
Change-Id: I7ce8bb8ace45c456e5830fe26c2bad9bc50a1a24
Myles Watson [Fri, 2 Dec 2016 01:16:23 +0000 (17:16 -0800)]
Remove coverity comments
We aren't actively using coverity, and these may be out
of date.
Test: mma -j32
Change-Id: I3ce75c561dae57019597db85a383a8e434803926
Myles Watson [Fri, 2 Dec 2016 18:11:12 +0000 (18:11 +0000)]
Apply clang-format to the rest of the tree
am:
911d1ae03e
Change-Id: I343d7e7123479d7eb93621b01afed4bad71fd240
Myles Watson [Fri, 2 Dec 2016 18:11:10 +0000 (18:11 +0000)]
Reformat long comments before clang-format
am:
9ca07091a1
Change-Id: Ib93e89aaf7ef4a73c0db1779240958b09a00fa3e
Myles Watson [Tue, 29 Nov 2016 00:44:40 +0000 (16:44 -0800)]
Apply clang-format to the rest of the tree
find * | grep "\.[ch]" | xargs clang-format --style=file -i
Test: mma -j32
Change-Id: I6fcc9862bb7bc07c2a367ca58fef2b3cd27a6f05
Myles Watson [Tue, 29 Nov 2016 00:41:53 +0000 (16:41 -0800)]
Reformat long comments before clang-format
Test: mma -j32
Change-Id: I86a2a4af9dcd22d675ca1f764bb2c9623d63edcc
Jaekyun Seok [Tue, 29 Nov 2016 01:08:10 +0000 (10:08 +0900)]
Use shared lib of libtinyxml2 instead of static one.
libtinyxml2 is used commonly by vendors. So using its shared lib will reduce
total image size even though Android framework size increases as following for
now.
bluetooth.default.so:
1470356 ->
1440664 (-29692)
libtinyxml2.so : 0 -> 46144 (+46144)
total : (+16452)
Test: building succeeded, and the image was tested on angler.
Bug:
33056637
Change-Id: I3bd3cf7128e3ad6daa8157d57935f7422c1f2662
Pavlin Radoslavov [Fri, 2 Dec 2016 07:37:07 +0000 (07:37 +0000)]
Add a mechanism for Audio Feeding Parameters negotiation
am:
4ebaa86a3a
Change-Id: I9ccf11b2a53af91f6ec9ffab10af0de9ce0b0564
Pavlin Radoslavov [Tue, 22 Nov 2016 19:42:11 +0000 (11:42 -0800)]
Add a mechanism for Audio Feeding Parameters negotiation
Previously, the Audio Feeding Parameters between the Media Framework
and A2DP were hard-coded: 44.1 KHz sample rate, 16-bits per sample, Stereo.
Now the Media Framework queries A2DP, and uses the returned values.
Bug: b/
30958229
Test: Manual testing: A2DP streaming to headphones. TestTracker/68727
Change-Id: I70b90d2961ceb9efcd7021d2e12c240fe531ee1c
Jack He [Fri, 2 Dec 2016 02:00:42 +0000 (02:00 +0000)]
Merge "Add dependency installation files for x86_64"
am:
d4e30c774a
Change-Id: I1331151b40af6f7dc164814a74ca3dc7f7edc797
Treehugger Robot [Fri, 2 Dec 2016 01:49:32 +0000 (01:49 +0000)]
Merge "Add dependency installation files for x86_64"
Pavlin Radoslavov [Fri, 2 Dec 2016 01:43:04 +0000 (01:43 +0000)]
A2DP Codec related cleanup
am:
cd02ce9c60
Change-Id: I0d46fa536ecbad215a2031496b5450de9a29f0b0
Pavlin Radoslavov [Sat, 5 Nov 2016 00:18:51 +0000 (17:18 -0700)]
A2DP Codec related cleanup
* Add new A2DP API and the corresponding unit tests:
- A2DP_InitSource2SinkCodec()
- A2DP_SourceCodecSepIndex()
- A2DP_GetTrackBitsPerSample()
* Use the new API to simplify the codec selection and setup
* Rename A2DP_BldSbcMplHdr() to A2DP_BuildMediaPayloadHeaderSbc()
* Remove the following APIs, because they are not needed anymore:
- A2DP_BuildSinkConfig()
- A2DP_CodecConfigMatchesCapabilities()
- A2DP_SetSourceCodec()
- A2DP_CodecRequiresReconfig()
- A2DP_IsSourceCodecSupported()
* Remove the following generic APIs, and keep only the SBC-specific APIs.
The information returned by those functions is SBC-specific, and doesn't
apply to other codecs:
- A2DP_GetNumberOfSubbands()
- A2DP_GetNumberOfBlocks()
- A2DP_GetAllocationMethodCode()
- A2DP_GetChannelModeCode()
- A2DP_GetSamplingFrequencyCode()
- A2DP_GetMinBitpool()
- A2DP_GetMaxBitpool()
* Rename:
A2DP_GetTrackFrequency() -> A2DP_GetTrackSampleRate()
tA2DP_FEEDING_PARAMS.sampling_freq -> sample_rate
tA2DP_FEEDING_PARAMS.num_channel -> channel_count
tA2DP_FEEDING_PARAMS.bit_per_sample -> bits_per_sample
* Remove btif_a2dp_source_encoder_update(), tA2DP_ENCODER_UPDATE_PARAMS
and associated events and processing mechanism, because they are not
needed anymore.
* Remove tA2DP_ENCODER_INTERFACE.encoder_update, because it is not
used anymore.
Now it is superceded by tA2DP_ENCODER_INTERFACE.encoder_init.
* Fix a bug inside bta_av_api_register() when initializing
the stream control block.
* Refactor bta_av_co_audio_getconfig() and bta_av_co_audio_setconfig()
* Remove tBTA_AV_CO_CB.codec_config_setconfig field, because it is not
needed anymore.
* Remove unused arguments when opening/closing audio stream
* Remove #ifdef BTA_AV_DEBUG guards: BTA_AV_DEBUG is always TRUE
* Remove SBC Mono -> Stereo hack
Test: Manual testing: A2DP streaming to headphones. TestTracker/68727
Change-Id: Ie0b209f7ad6c21c2c6d8d2e6277b86dfa63388c6
Jack He [Wed, 30 Nov 2016 01:46:15 +0000 (17:46 -0800)]
Add dependency installation files for x86_64
* The installation script installs the necessary dependencies based on
host OS version on Ubuntu OS
* clang toolchain BUILD.gn will only use clang-3.5 or above
* Update documentation
Test: gn gen out/Default; ninja -C out/Default
Change-Id: Ibc732ebc68009af25e9a911a724a888e008d45ac
Myles Watson [Thu, 1 Dec 2016 22:30:09 +0000 (22:30 +0000)]
Fix asterisks in block quotes
am:
ee96a3c60f
Change-Id: I3bf248c9dd9b28f7f18b55df4357489f4999f549
Myles Watson [Thu, 1 Dec 2016 20:43:32 +0000 (20:43 +0000)]
embdrv: Fix include ordering before clang-format
am:
c7caa5066e
Change-Id: I8af6aa03984d2283b213dbf320e5d0751a94edf6
Myles Watson [Wed, 23 Nov 2016 22:49:54 +0000 (14:49 -0800)]
Fix asterisks in block quotes
Remove double asterisks from block quotes.
git grep -lP '^[*][*]' | xargs sed 's/^[*][*]/ \*/' -i
Fix asterisk line lengths
git grep -l '^[ /][*]\{79,\}[*/]' | \
xargs sed -i s,"^\([ /]\)[*]\([*]\{78\}\)[*]*\([*/]\)","\1\2\3",
Test: mma -j32
Change-Id: Ie3fd375ac2f804cb0f53bf1314a005e85973b3d7
Myles Watson [Tue, 29 Nov 2016 17:40:47 +0000 (09:40 -0800)]
embdrv: Fix include ordering before clang-format
clang-format re-orders #include statements. Fix the includes
so that order is less important.
Test: mma -j32
Change-Id: Ia548c2c7d5669e0e759b3c5e7fa12a1ec48cc03e
Ajay Panicker [Thu, 1 Dec 2016 02:57:15 +0000 (02:57 +0000)]
Remove more usages of UINT_TO_PTR macro
am:
531fe1a8c1
Change-Id: I93895d5e6aa42d0ec75a9c69df9121e542b57e86
Ajay Panicker [Tue, 22 Nov 2016 21:28:43 +0000 (13:28 -0800)]
Remove more usages of UINT_TO_PTR macro
Bug:
32995283
Test: Sanity tests with a carkit and a headset
Change-Id: Ie74ece4814499f771eb1f229558de7df5c726180
Pavlin Radoslavov [Wed, 30 Nov 2016 20:10:43 +0000 (20:10 +0000)]
Merge "Add a missing error check when processing AVDT_RECONFIG_CFM_EVT event"
am:
845623f07e
Change-Id: I5f34508a6762023f93893886e62430513e21f2b2
Treehugger Robot [Wed, 30 Nov 2016 19:49:44 +0000 (19:49 +0000)]
Merge "Add a missing error check when processing AVDT_RECONFIG_CFM_EVT event"
Myles Watson [Wed, 30 Nov 2016 18:35:54 +0000 (18:35 +0000)]
Run clang-format on every commit
am:
b42db6400f
Change-Id: I26e77b2d66154d5e9206dae2a9cceb7b6e6bf6e5
Pavlin Radoslavov [Mon, 28 Nov 2016 22:32:40 +0000 (14:32 -0800)]
Add a missing error check when processing AVDT_RECONFIG_CFM_EVT event
Bug:
33114181
Test: Code compilation
Change-Id: Ic2d432b651ea80af2b0ff40fdb61221b0fc31f82
Myles Watson [Tue, 29 Nov 2016 18:58:00 +0000 (10:58 -0800)]
Run clang-format on every commit
Test: repo upload --cbr .
Change-Id: Ib4bea4649320db8890399dda8a285bab69f4b482
Jack He [Wed, 30 Nov 2016 01:38:41 +0000 (01:38 +0000)]
Merge "AVRCP: Fix get metadata attribute responses"
am:
376dfb8071
Change-Id: I2890fc0fd14dfced01702a4dad30020e0222cf18
Treehugger Robot [Wed, 30 Nov 2016 01:31:20 +0000 (01:31 +0000)]
Merge "AVRCP: Fix get metadata attribute responses"
Sanket Agarwal [Wed, 30 Nov 2016 01:28:50 +0000 (01:28 +0000)]
Merge "Add Bluetooth device address parameter to HF Client APIs"
am:
00a022cbef
Change-Id: If717859f243fa737a6487fe6b595320e08ed31c8
Sanket Agarwal [Wed, 30 Nov 2016 01:23:42 +0000 (01:23 +0000)]
Merge "Add Bluetooth device address parameter to HF Client APIs"
Jakub Pawlowski [Tue, 29 Nov 2016 23:58:40 +0000 (23:58 +0000)]
Cleanup GATT cache when remote device is disconnected
am:
9580a30918
Change-Id: I41d6b37b9cec3917c79bb89b8f03ff7912a49ece
Sanket Agarwal [Mon, 28 Nov 2016 23:46:29 +0000 (15:46 -0800)]
Add Bluetooth device address parameter to HF Client APIs
Bug:
30984220
Test: SL4A tests for HFP
Change-Id: I62cb69b4296e1b5bdf951ccfafc55433f1ea0a1a
Jakub Pawlowski [Tue, 29 Nov 2016 19:45:09 +0000 (11:45 -0800)]
Cleanup GATT cache when remote device is disconnected
According to Bluetooth spec, GATT cache should not be persisted between
reconnections for unbonded devices. Bonded devices store the cache on
the disk and will read it on reconnection.
Bug:
33123476
Test: sl4a GattReadTest
Change-Id: If2ca53c7b22a346e7236514ea7b461695c923f74
Jack He [Sun, 20 Nov 2016 01:08:28 +0000 (17:08 -0800)]
AVRCP: Fix get metadata attribute responses
* Add checks for remaining buffer capacity to handle long metadata
* Change the attribute number max to AVRC_MAX_NUM_MEDIA_ATTR_ID
* Consolidate attribute value filling code between GetElementAttributes
and GetItemAttributes
* Check requested media attribute IDs before building response
Bug:
32407250,
33001066
Test: manual - connect to carkit and play music, see metadata and hear audio
Change-Id: I8f0c47148be35100202398c754861abb1fb9def1
Marie Janssen [Mon, 28 Nov 2016 21:01:53 +0000 (21:01 +0000)]
readability fix: No assigns in if conditionals
am:
f33b6f434f
Change-Id: I11c5af715b2ad86f33491fae7a5bd530f07a2e96
Marie Janssen [Tue, 22 Nov 2016 23:01:42 +0000 (15:01 -0800)]
readability fix: No assigns in if conditionals
Coccinelle-assisted:
@@
variable i;
expression E;
statement S1, S2;
@@
+ i = E;
if (
(
- (i = E)
+ i
!= ...
|
- (i = E)
+ i
== ...
|
- (i = E)
+ i
< ...
|
- (i = E)
+ i
> ...
|
- (i = E)
+ i
<= ...
|
- (i = E)
+ i
>= ...
|
- (i = E)
+ i
)
) S1 else S2
for file in $(find . -name "*.cc"); do
spatch --sp no-if-assigns.cocci --in-place $file
done
clang-format --style=file -i bta/**/*.cc
Test: mma -j37 and basic sanity testing on angler, sailfish
Change-Id: I41a2964afac347c24e13869b6c172e321e646091