OSDN Git Service
Jakub Pawlowski [Mon, 10 Oct 2016 21:27:36 +0000 (21:27 +0000)]
Remove return value from btsnd_hcic_* functions
am:
763abdfe79
Change-Id: I4248cbfafdc297d8053b12d26f1791d00dbf359e
Jakub Pawlowski [Mon, 10 Oct 2016 21:27:34 +0000 (21:27 +0000)]
Ignore return value of btsnd_hcic_* functions
am:
b6ab9b3af6
Change-Id: Id0f22cafe797ddd5934d5e0685a65123c6a4f089
Jakub Pawlowski [Mon, 10 Oct 2016 18:39:39 +0000 (11:39 -0700)]
Remove return value from btsnd_hcic_* functions
btsnd_hcic_* functions are always returning true, so this return value
is not really useful.
Test: unit tests pass
Change-Id: I06ced65392d180ceed565e45b7831de6aede283c
Jakub Pawlowski [Mon, 10 Oct 2016 16:35:13 +0000 (09:35 -0700)]
Ignore return value of btsnd_hcic_* functions
btsnd_hcic_* functions return only true. This patch makes sure that no
logic is waiting for "false" value.
Few methods, that had their return value dependent on result of
btsnd_hcic_* were made void.
Test: unit tests pass
Change-Id: I43cff62f461ff35f4bd84e5338f1a587b6a05c58
Gurpreet Ghai [Fri, 7 Oct 2016 19:58:52 +0000 (19:58 +0000)]
Merge "Add null check to avoid exception after L2CAP psm assigned"
am:
ee85d35220
Change-Id: Ie16d5d2af12291c02a47e6ce39fc002503063b93
Ben YoungTae Kim [Fri, 7 Oct 2016 19:58:43 +0000 (19:58 +0000)]
HID: Fix to handle UHID_OUTPUT_EV command from UHID driver
am:
960b9c391d
Change-Id: I47e7a4edfdf075223b8eb3115a31ff0a5541aa7d
Treehugger Robot [Fri, 7 Oct 2016 19:51:54 +0000 (19:51 +0000)]
Merge "Add null check to avoid exception after L2CAP psm assigned"
Ben YoungTae Kim [Wed, 10 Aug 2016 20:31:23 +0000 (13:31 -0700)]
HID: Fix to handle UHID_OUTPUT_EV command from UHID driver
Incorrect size check for UHID_OUTPUT_EV for incoming data from
UHID driver of kernel was leading to exiting of poll thread.
This was causing IOT issues with Apple Magic Mouse that require
output report to be sent for proper functioning of scroll functionality.
Bug:
28942565
Change-Id: I2eaba1f70b7cd51fb21933031d439543eb141fd2
Gurpreet Ghai [Wed, 3 Feb 2016 09:31:41 +0000 (15:01 +0530)]
Add null check to avoid exception after L2CAP psm assigned
Use case: BT will get crash in SNS testing.
steps: SNS testing BT ON/OFF.
Failure: Crash is observed.
Root Cause: If the number of supported services increased,
larger service record array is required. Smaller array is
resulting in out of record error causing L2CAP deregister.
Fix: Check added to avoid null pointer exception if null
is returned while fetching sock from id. Also cleanup of
SDP and security records done during BT turning Off.
Change-Id: I2e77127262119cabf2c372f894427dcdf3350e80
Jakub Pawlowski [Thu, 6 Oct 2016 23:15:45 +0000 (23:15 +0000)]
Refactor advertising data types
am:
9eaf776867
Change-Id: I164b968032be28ea1ac5e1dceeb614d1b1945826
Jakub Pawlowski [Wed, 5 Oct 2016 02:30:09 +0000 (19:30 -0700)]
Refactor advertising data types
Currently we have some unnecessary complicated code for handling
advertising data. Get rid of it.
Bug:
30622771
Test: Tests making sure flags and tx power are filled are added
Change-Id: I807cdf11577c357c116c54cab50bbf3261e1ee16
Pavlin Radoslavov [Wed, 5 Oct 2016 23:46:51 +0000 (23:46 +0000)]
Use the correct API to check whether a codec is valid
am:
a0db321d98
Change-Id: I1ffc55d6a5d79aa62c191249a590a9bc2d0209bb
Pavlin Radoslavov [Wed, 5 Oct 2016 21:25:08 +0000 (14:25 -0700)]
Use the correct API to check whether a codec is valid
Use the (new) A2D_IsPeerSinkCodecValid() API call as appropriate
to check whether the codec information of a Sink peer is valid.
Previously, A2D_IsSourceCodecSupported() was used, and that didn't
match the original code (before the refactoring).
A2D_IsSourceCodecSupported() has extra checks, including min/max bitpool
oundaries, and those shouldn't be used for this initial check - the
bitpool boundaries can be adjusted later.
Similarly, use the new A2D_IsPeerSourceCodecValid() API call instead of
A2D_IsSinkCodecSupported().
Also:
* Replaced A2D_IsValidCodec() with
A2D_IsSourceCodecValid(), A2D_IsSinkCodecValid()
A2D_IsPeerSourceCodecValid(), A2D_IsPeerSinkCodecValid()
and added the appropriate unit tests.
* Added extra debug messages to help identify similar issues in the future
Bug:
31749230
Test: manual test with a carkit, and unit tests
Change-Id: Iafaeb82744df9758e686194c91624992a0c55bdf
Jakub Pawlowski [Wed, 5 Oct 2016 18:03:37 +0000 (18:03 +0000)]
Remove unnecessary checks of BTM_MAX_LOC_BD_NAME_LEN
am:
be43ee7658
Change-Id: I1dbcfc9e49433b83426ee13df9bdbfda9a5deab9
Jakub Pawlowski [Wed, 5 Oct 2016 17:22:52 +0000 (17:22 +0000)]
Make Bluetooth LE multi-advertising testable
am:
e47b769e71
Change-Id: I9dfc10c8849e1ac63494dbc9295d6e354127ec40
Jakub Pawlowski [Tue, 4 Oct 2016 23:47:01 +0000 (16:47 -0700)]
Remove unnecessary checks of BTM_MAX_LOC_BD_NAME_LEN
Change-Id: I6e68f80d0d97081a4fc3879e6c11342923cfef7b
Jakub Pawlowski [Wed, 28 Sep 2016 14:36:54 +0000 (07:36 -0700)]
Make Bluetooth LE multi-advertising testable
This patch turns the code that manages LE multi-advertising into the
BleAdvertisingManager class. All HCI calls made by this code were
abstracted into BleAdvertiserHciInterface.
Thanks to those changes, we can mock BleAdvertiserHciInterface and test
the advertising manager.
The BleAdvertisingManagerTest, still has some dependencies on other
code from the "stack" module. These have to be implemented on top of the
test file. In the future, this dependencies should be replaced by mockable
classes.
Test: Tests covering the change are added in this patch.
Bug:
30622771
Change-Id: I4a363678815c235ee01255f462db2a671ef89610
Myles Watson [Wed, 5 Oct 2016 04:03:33 +0000 (04:03 +0000)]
vendor_lib: Apply clang-format with the new config
am:
015834df15
Change-Id: I23daee752536e6758e9d06714d04edcaa68b9f9b
Myles Watson [Fri, 30 Sep 2016 15:45:15 +0000 (08:45 -0700)]
vendor_lib: Apply clang-format with the new config
cd vendor_libs/test_vendor_lib/
clang-format ../linux/bt_vendor_linux.c -style=file -i
clang-format include/* test/* src/* -style=file -i
Update the style guide since clang-format help uses the
-style=file option.
Test: mm -j32
Change-Id: I166adfb2bb9a87fefa1242c91e5f180011caa2ad
Mark Salyzyn [Tue, 4 Oct 2016 19:41:47 +0000 (19:41 +0000)]
bt: replace cutils/log.h with android/log.h
am:
5201f95102
Change-Id: Ieefd12664db41ec7e8a1c08088a3463a58a39d86
Mark Salyzyn [Wed, 28 Sep 2016 22:31:49 +0000 (15:31 -0700)]
bt: replace cutils/log.h with android/log.h
Test: compile
Bug:
26552300
Bug:
31289077
Change-Id: I8fb392150441ca5b6bc43dc43a10a3009e22202b
Jakub Pawlowski [Tue, 4 Oct 2016 00:41:45 +0000 (00:41 +0000)]
Merge "Fix bad GATT client state machine state after successfull cache load"
am:
69b916046d
Change-Id: Ib8fedecce74779755c2ebb285db6ca31b8714b68
Jakub Pawlowski [Tue, 4 Oct 2016 00:38:14 +0000 (00:38 +0000)]
Merge "Fix bad GATT client state machine state after successfull cache load"
Mark Salyzyn [Mon, 3 Oct 2016 22:48:20 +0000 (22:48 +0000)]
Replace log/log.h with android/log.h
am:
2f0c1fff33
Change-Id: I137539cc1f2cdeda6ceb6f7e4106fb379dc50555
Mark Salyzyn [Thu, 29 Sep 2016 16:16:01 +0000 (09:16 -0700)]
Replace log/log.h with android/log.h
Actually, remove reference, android logging is not used here.
Test: compile
Bug:
26552300
Bug:
31289077
Change-Id: I37731dc37f61c129f3440e5d9ff1d0e71fe193d0
Jakub Pawlowski [Mon, 3 Oct 2016 20:25:01 +0000 (13:25 -0700)]
Fix bad GATT client state machine state after successfull cache load
If the GATT service cache was successfully loaded from a file, the
state must be reset to idle.
Bug:
31175159
Change-Id: I92ebf1bec9d2e7467d7412b41923614ec5a13b6d
Jorge E. Moreira [Mon, 3 Oct 2016 17:28:07 +0000 (17:28 +0000)]
test_vendor: Refactor scheduling of dual_mode_controller event handling
am:
3c4f59fc27
Change-Id: Ia9a9860a9744580349921a5d9cb0ad9771bdefaf
Jorge E. Moreira [Fri, 16 Sep 2016 23:50:41 +0000 (16:50 -0700)]
test_vendor: Refactor scheduling of dual_mode_controller event handling
Moved all controller actions out of read callbacks to task callbacks to
avoid race conditions when modifying internal controller state.
Change-Id: Ie8bb762992755db2dddb6b7bb6a4fe52ab2d0020
Jack He [Fri, 30 Sep 2016 21:51:55 +0000 (21:51 +0000)]
Remove redundant logic from system/bt/bta
am:
e143d941d2
Change-Id: I4fbe813cfa2809efd083cd36d567860fc7fe5ceb
Jack He [Fri, 30 Sep 2016 19:57:44 +0000 (12:57 -0700)]
Remove redundant logic from system/bt/bta
Bug:
31274290
Test: Manual
Change-Id: I5a4bff5e25b08a32709cdc81bac86a641d80f113
Kim Schulz [Fri, 30 Sep 2016 19:46:29 +0000 (19:46 +0000)]
Merge "Do not request remote name from non-connectable dev"
am:
49109aefb0
Change-Id: Iae4d72d5ed0c452085adf36b0c27daa61c45a8ae
Treehugger Robot [Fri, 30 Sep 2016 19:40:53 +0000 (19:40 +0000)]
Merge "Do not request remote name from non-connectable dev"
Patrick Tsai [Fri, 30 Sep 2016 19:40:06 +0000 (19:40 +0000)]
Merge "Fix warnings of implicit function declaration in Linux vendor lib"
am:
c4c9923724
Change-Id: I1d4d89be2d72f13e9bd5ae8b4b90856b21e3a0b9
Treehugger Robot [Fri, 30 Sep 2016 19:33:46 +0000 (19:33 +0000)]
Merge "Fix warnings of implicit function declaration in Linux vendor lib"
Sebastien Griffoul [Fri, 30 Sep 2016 19:08:42 +0000 (19:08 +0000)]
Fix NULL pointer crash in send_at_cmd
am:
5c8fa2b199
Change-Id: I64b04cbf63438f25e58b700a9af6fe1d51a3905b
Kim Schulz [Fri, 29 Apr 2016 08:26:02 +0000 (10:26 +0200)]
Do not request remote name from non-connectable dev
if an LE device is found during an LE scan, the BT host will try to fetch its name (creating an LE
connection) even though the advertising report received indicates that it is a non-connectable
advertising.
This is pointless and should not happen.
Change-Id: I246e4795b4f4e33f3202908ebff3724e8e89523c
Patrick Tsai [Sat, 19 Mar 2016 04:12:34 +0000 (21:12 -0700)]
Fix warnings of implicit function declaration in Linux vendor lib
Change-Id: I482f1096e87966f33ba8584ea60188abab3bcc42
Sebastien Griffoul [Fri, 17 Oct 2014 10:14:19 +0000 (12:14 +0200)]
Fix NULL pointer crash in send_at_cmd
If the string argument of send_at_cmd is a null pointer,
then the function should not crash: indeed this is a valid
parameters which can be used to send an AT cmd which doesn't
require any extra parameter.
Test: trivial fix. Existing unit tests still pass.
Change-Id: I3d83eebed660d703cd5a93a19dc73f4f354ab7bf
Signed-off-by: Sebastien Griffoul <sebastien.griffoul@intel.com>
Jakub Pawlowski [Fri, 30 Sep 2016 00:22:21 +0000 (00:22 +0000)]
Enable libbase logging for whole stack
am:
75b83661ea
Change-Id: Ic09c0c3bfefbad2e8949f29b9d36c8fa13b266ae
Jakub Pawlowski [Wed, 28 Sep 2016 01:24:59 +0000 (18:24 -0700)]
Enable libbase logging for whole stack
Currently, only C++ code in the service/ folder can use libbase logging.
This patch makes sure that logging can be used and is properly
configured for usage when the stack is running as part of Bluetooth.apk.
Bug:
31806042
Change-Id: I1f8be79ba9999b53ece0b5217a893b4bd20ecafc
Victor Khimenko [Thu, 29 Sep 2016 06:13:07 +0000 (06:13 +0000)]
Merge "Support TARGET_TRANSLATE_2ND_ARCH case"
am:
d09a76a935
Change-Id: Ib9c919256db089ed4ef859016d46ae8ec7791bdd
Victor Khimenko [Thu, 29 Sep 2016 06:08:00 +0000 (06:08 +0000)]
Merge "Support TARGET_TRANSLATE_2ND_ARCH case"
Andre Eisenbach [Thu, 29 Sep 2016 02:02:20 +0000 (02:02 +0000)]
Fix 100 LE device connection limitation
am:
426da5ad3c
Change-Id: Ie9d7439eda57bfaeac544bc35f6100413b1fe354
Andre Eisenbach [Wed, 28 Sep 2016 01:07:58 +0000 (18:07 -0700)]
Fix 100 LE device connection limitation
Currently after 100 devices are added to the device security database,
any subsequent LE connection to a newly discovered LE device address
will fail as entries in the security record database are not reused.
This patch removes a device record if the device itself is removed and
also ensures that the oldest device security record is deleted if the
limit is reached to ensure a new record can be allocated.
Bug:
31625900
Test: SL4A multi-device connection test + regression
Change-Id: I22f6c82c64a9a9bfb2a16d79182903e5aa011355
(cherry picked from commit
013c32bf98b8d511dc29fcd7de7578a421a52590)
Victor Khimenko [Wed, 28 Sep 2016 22:40:03 +0000 (00:40 +0200)]
Support TARGET_TRANSLATE_2ND_ARCH case
Build-only change to support the multilib case where the second arch
is translated (and thus bluetooth library is needed).
"True" multilib case is explicitly not supported.
Test: Build system refactoring CL. Existing unit tests still pass.
BUG=
31422117
Change-Id: I09f239d39f5dbe0848a89367327db1ea1074ca39
Jakub Pawlowski [Wed, 28 Sep 2016 21:24:01 +0000 (21:24 +0000)]
Separate the definition of BTM layer types from control blocks
am:
dc3c1f2afa
Change-Id: Iea26880f80f623744cd96b40c27188428b7d9860
Jakub Pawlowski [Wed, 28 Sep 2016 16:02:39 +0000 (09:02 -0700)]
Separate the definition of BTM layer types from control blocks
Right now, data types, control blocks, and functions used in the BTM
layer are defined in the same header files. This means that if someone
wants to write a test that uses those data types, they must also define
all control blocks, or compile the whole module.
This patch separates the data types from other definitions. Thanks to
it, we will be able to write unit tests, once other dependencies get
separated.
Change-Id: Ibc089e273cc37642fbb8672964b266c20f8d825d
Jakub Pawlowski [Tue, 27 Sep 2016 18:42:32 +0000 (18:42 +0000)]
Use better callbacks in LE multi advertising
am:
0a009c382f
Change-Id: Ia9e39fe19443641b6d17cc8e78e8156b5304619f
Jakub Pawlowski [Tue, 6 Sep 2016 14:42:36 +0000 (07:42 -0700)]
Use better callbacks in LE multi advertising
Right now, LE multi advertising related code uses it's own
implementation of queue on top of static array. Use std::queue, and
base::Callback instead.
Changing function pointers to base::Callback instances is required for
further refactoring, which will turn this code into class.
Bug:
30622771
Test: sl4a BleAdvertiseApiTest ConcurrentBleAdvertisingTest
Change-Id: I839e036c6edb4e19a17def4d68d351296468f88c
Jakub Pawlowski [Tue, 27 Sep 2016 15:33:33 +0000 (15:33 +0000)]
Update BUILD.gn files
am:
29796eb6de
Change-Id: I41391c0764e9def86ff32e72e65222e0c3f6043f
Jakub Pawlowski [Tue, 27 Sep 2016 15:21:55 +0000 (08:21 -0700)]
Update BUILD.gn files
Nitin Arora [Sat, 24 Sep 2016 00:31:06 +0000 (00:31 +0000)]
Bluetooth: Prevent gatt DB copy if server cache is absent
am:
c695f2578d
Change-Id: Ic25dfb446c5133823523e3b707177739d1296a9a
Nitin Arora [Thu, 14 Jul 2016 01:02:03 +0000 (18:02 -0700)]
Bluetooth: Prevent gatt DB copy if server cache is absent
In case the server cache does not exist for a specific
connection, the API used to copy the server DB into the
DB structure needs to return immediately. This change
makes sure of that and prevents dereferencing of a null
block causing the runtime error.
Change-Id: Iec3040a1280ef9d80b1b9c76eca8071dff499411
Jakub Pawlowski [Fri, 23 Sep 2016 21:02:40 +0000 (21:02 +0000)]
Merge "Convert BLE multi-advertising code to C++"
am:
6cbb6f8c37
Change-Id: I917c9c38fafc5b8a4e537c89038e5bdd056e7c4c
Jakub Pawlowski [Fri, 23 Sep 2016 20:53:24 +0000 (20:53 +0000)]
Merge "Convert BLE multi-advertising code to C++"
Ajay Panicker [Fri, 23 Sep 2016 19:13:32 +0000 (19:13 +0000)]
Merge "Move btsnoop_hci.log to /data/misc/bluetooth/logs"
am:
b64d604c0c
Change-Id: I87d5ef9224da76d569c2e4b32782f839686590df
Ajay Panicker [Fri, 23 Sep 2016 19:00:17 +0000 (19:00 +0000)]
Merge "Move btsnoop_hci.log to /data/misc/bluetooth/logs"
Jakub Pawlowski [Mon, 5 Sep 2016 11:31:34 +0000 (04:31 -0700)]
Convert BLE multi-advertising code to C++
This patch converts btm_ble_multi_adv.c file to .cc. It also separate
header definitions from rest of BTM layer. It is another step towards
making BLE advertising-related code testable.
Bug:
30622771
Change-Id: I89965e10fbf773e48176ee19ef613dd0df2fb951
Pavlin Radoslavov [Thu, 22 Sep 2016 23:25:37 +0000 (23:25 +0000)]
Removed usage of A2DP codec_type as a separate field
am:
b3e5af36e9
Change-Id: I886c6b3cbaa9cd1abdfc8340e586f5cd2dc33cc2
chaoyu.x.wu [Thu, 22 Sep 2016 21:58:35 +0000 (21:58 +0000)]
Fix the BLE connection failure with some mice
am:
1ec17e06c7
Change-Id: Ib5b03ac545fee9c71ae53d869615a1f0fc155182
Pavlin Radoslavov [Tue, 20 Sep 2016 21:10:08 +0000 (14:10 -0700)]
Removed usage of A2DP codec_type as a separate field
The value of codec_type can be extracted from the codec_info,
so it is not needed to pass it around as an argument, or keep
it as an field.
Also:
* Added new APIs and the corresponding unit tests:
- A2D_GetPacketTimestamp()
- A2D_BuildCodecHeader() - replacement for bta_av_sbc_bld_hdr()
- A2D_CodecName()
* Replaced tBTA_AV_SEP.codec_type with tBTA_AV_SEP.codec_info
Bug:
30958229
Test: A2DP tested manually. Unit tests included in the CL.
Change-Id: I3bfd4750e8639d77a9938ab3c274c9d6ea859fb6
Ajay Panicker [Wed, 14 Sep 2016 18:46:23 +0000 (11:46 -0700)]
Move btsnoop_hci.log to /data/misc/bluetooth/logs
Bug:
31466840
Change-Id: Ibd8f8b85eb59be8bfbb8a7c83b5935802624a748
chaoyu.x.wu [Mon, 11 Apr 2016 06:08:48 +0000 (14:08 +0800)]
Fix the BLE connection failure with some mice
If enable the "connection parameters update" during GATT discovery,
it may cause some device connection failure due to connection timeout.
Since the the "connection parameter update" is enabled again when GATT
discovery completed, remove the enable of "connection parameter update"
after SMP complete to fix the issue.
This issue was already fixed in commit
2d41fe1c, but then it was
re-introduced in commit
444a8da8, which also removed comment explaining
the issue, added back in this patch.
Bug:
29060797
Change-Id: I42b0b36056821c30d887484e22bfcbd04ea7ca03
Ajay Panicker [Thu, 22 Sep 2016 08:21:11 +0000 (08:21 +0000)]
Merge "Fix improper null check when handling rc features"
am:
e90972c9f2
Change-Id: I228b1a0befa5becf1c60ca5eaa4b8b1a1e2292f8
Ajay Panicker [Thu, 22 Sep 2016 08:09:28 +0000 (08:09 +0000)]
Merge "Remove net_bt_stack group and replace it with bluetooth"
am:
b85d405374
Change-Id: Iea39edaa3c6294001384597a151906aacf423980
Treehugger Robot [Thu, 22 Sep 2016 01:49:03 +0000 (01:49 +0000)]
Merge "Fix improper null check when handling rc features"
Ajay Panicker [Thu, 22 Sep 2016 01:32:33 +0000 (01:32 +0000)]
Merge "Remove net_bt_stack group and replace it with bluetooth"
Ajay Panicker [Wed, 21 Sep 2016 23:35:00 +0000 (16:35 -0700)]
Fix improper null check when handling rc features
Bug:
31533166
Change-Id: Ia04e9c51280a3e379c0670b39a84eb5a53c5332b
Keizo Mendori [Wed, 21 Sep 2016 22:08:29 +0000 (22:08 +0000)]
Blacklist Motorola Roadster for Absolute Volume
am:
e89122a9c9
Change-Id: Id7753a999d4e7c283c901c1eb9a80666f5dda767
Keizo Mendori [Wed, 8 Jun 2016 02:40:43 +0000 (11:40 +0900)]
Blacklist Motorola Roadster for Absolute Volume
Motorola Roadster is advertizing Absolute Volume but it has a
buggy implementation.
Bug:
29740052
Change-Id: I18c1a2f03617669138be2e7e1d9c7bb391cd1129
Pavlin Radoslavov [Tue, 20 Sep 2016 20:56:06 +0000 (20:56 +0000)]
Merge changes from topics 'bt-only-pcm-media-feeding-format', 'bt-a2d-sbc-cie-localize'
am:
ab8facfc57
Change-Id: If307b1c892e394e0d273ce346f4b57fff0164068
Pavlin Radoslavov [Tue, 20 Sep 2016 20:56:05 +0000 (20:56 +0000)]
Use only PCM as the media feeding format
am:
c66edf3144
Change-Id: I053b54f9306b607f9cef3a94511b60c7815939b6
Pavlin Radoslavov [Tue, 20 Sep 2016 20:56:04 +0000 (20:56 +0000)]
Localize the usage of tA2D_SBC_CIE only within the SBC codec
am:
b18f03ecb0
Change-Id: I0aee46e8312931fa3a67f893682340dcea00ff1d
Treehugger Robot [Tue, 20 Sep 2016 20:29:39 +0000 (20:29 +0000)]
Merge changes from topics 'bt-only-pcm-media-feeding-format', 'bt-a2d-sbc-cie-localize'
* changes:
Use only PCM as the media feeding format
Localize the usage of tA2D_SBC_CIE only within the SBC codec
Jorge E. Moreira [Tue, 20 Sep 2016 19:25:56 +0000 (19:25 +0000)]
test_vendor: Use kInvalidTaskId in the controller
am:
6d835905f0
Change-Id: I45669e742ef1e9241a5f708bbfb9253f534cbb9a
Pavlin Radoslavov [Fri, 16 Sep 2016 00:50:18 +0000 (17:50 -0700)]
Use only PCM as the media feeding format
* Removed field tA2D_AV_MEDIA_FEEDINGS.format, because we always
use/assume the feeding format is PCM.
* Removed tA2D_AV_MEDIA_FEED_CFG_PCM, tA2D_AV_MEDIA_FEED_CFG,
tA2D_AV_CODEC_PCM, and tA2D_AV_CODEC_NONE, because they are not
needed/used anymore.
* Removed feeding mode:
- tBTIF_MEDIA_INIT_AUDIO_FEEDING.feeding_mode
- tBTIF_AV_FEEDING_MODE, BTIF_AV_FEEDING_ASYNCHRONOUS,
BTIF_AV_FEEDING_SYNCHRONOUS
- tBTIF_MEDIA_CB.feeding_mode
* Added new APIs and the corresponding unit tests:
- A2D_CodecConfigMatchesCapabilities()
- A2D_BuildSinkConfig()
- A2D_CodecEquals()
- A2D_CodecRequiresReconfig()
Also:
* Removed header file btif/include/btif_av_api.h because it is not
needed anymore.
* Removed functions or typedefs that are unused or replaced:
- bta_av_co_audio_codec_match() -> replaced by
A2D_CodecConfigMatchesCapabilities()
- bta_av_co_audio_codec_cfg_matches_caps()
- bta_av_co_audio_peer_reset_config()
- bta_av_co_audio_discard_config()
- bta_av_co_get_codec_info()
- bta_av_co_peer_cp_supported()
- tA2D_AV_CODEC_ID
- tBTIF_AV_CODEC_INFO
* Increased the sampling_freq storage from uint16_t to uint32_t
* Decreased the number of channels n_channels storage from uint16_t
to uint8_t
* Removed unneessary global function declarations inside btif_av_co.h
* Changed the order of the A2D_BuildSrc2SinkConfig() arguments, so
the order is more intuitive.
* Misc other cleanup:
- file bta_av_co.cc: code simplification, renamed snk -> sink,
Removed unnecessary cast-away of a const argument: bta_av_co_cp_scmst
Renamed/updated bta_av_co_audio_peer_supports_codec() ->
bta_av_co_find_peer_sink_supports_codec()
Renamed/updated bta_av_co_audio_peer_src_supports_codec() ->
bta_av_co_find_peer_src_supports_codec()
Bug:
30958229
Test: A2DP tested manually. Unit tests included in the CL.
Change-Id: I60981c62b1a88491b5232c4f6515933c4261fac9
Ajay Panicker [Tue, 20 Sep 2016 18:43:03 +0000 (11:43 -0700)]
Remove net_bt_stack group and replace it with bluetooth
Bug:
31549206
Change-Id: I10504d73a962dde583ddb5771cb0a0fe6ca6d580
Jorge E. Moreira [Mon, 19 Sep 2016 22:58:16 +0000 (15:58 -0700)]
test_vendor: Use kInvalidTaskId in the controller
Test: make test-vendor
Change-Id: I6eefd385ecb992f854544ca92c5a8559b6f281f0
Pavlin Radoslavov [Tue, 13 Sep 2016 22:02:52 +0000 (15:02 -0700)]
Localize the usage of tA2D_SBC_CIE only within the SBC codec
* Added new A2DP API and use it as appropriate
- A2D_IsValidCodec()
- A2D_CodecTypeEquals()
- A2D_GetMinBitpool()
- A2D_GetMaxBitpool()
* Removed A2D_GetDefaultConfigSbc(), because it is not needed anymore.
* Removed bta_av_co_audio_get_sbc_config() and replaced it
with code that is not SBC codec-specific:
bta_av_co_audio_encoder_init() and bta_av_co_audio_encoder_update()
* Removed bta_av_co_get_remote_bitpool_pref() because it is
not used/needed anymore.
* Moved the following declarations the a2d_sbc.h header file to
the a2d_sbc.c codec-specific implementation, because they don't need
to be exposed anymore.
- struct tA2D_SBC_CIE
- function A2D_BldSbcInfo()
- function A2D_ParsSbcInfo()
* Added corresponding unit tests for the new API
Bug:
30958229
Test: A2DP tested manually. Unit tests included in the CL.
Change-Id: Ib242956c303f0ca3c5f70ebc00416a7a45e70228
Jakub Pawlowski [Mon, 19 Sep 2016 19:38:32 +0000 (19:38 +0000)]
Fix gatt_server_old service added logic
am:
aeafd3967e
Change-Id: Id59e5f407a7f30542ed75554ab877ec5686bb71f
Jakub Pawlowski [Mon, 19 Sep 2016 17:38:20 +0000 (10:38 -0700)]
Fix gatt_server_old service added logic
Bug:
31274906
Change-Id: Ifb4ee2a5f1ebcc14e2e1b60caa2fe6536d20946b
Jakub Pawlowski [Fri, 16 Sep 2016 17:15:48 +0000 (17:15 +0000)]
Fix bad address type assumption
am:
f5566938ba
Change-Id: Ib3bc8b2e8299960ead6c9b6f7969df8453300431
Jakub Pawlowski [Fri, 16 Sep 2016 15:03:16 +0000 (08:03 -0700)]
Fix bad address type assumption
LE related code should not use BTM_ACL_IS_CONNECTED, because it assumes
classic transport.
In this particular case, connection created event, which was result of
advertising, caused cancellation of "LE Create Connection".
Attempt to send "LE Create Connection Cancel" was checking if connection
is already established, but was failing to do so becuase
BTM_ACL_IS_CONNECTED was used instead of btm_bda_to_acl with proper
transport. This caused just created connection to be dropped.
Bug:
31442085
Change-Id: Ia345a3d00e8567160f4abb2a31c4130ee69d67a3
Myles Watson [Thu, 15 Sep 2016 22:12:46 +0000 (22:12 +0000)]
Merge "Update the style guide"
am:
02b83686b6
Change-Id: Idd4299419cb9326577478bc60e86ee53f571dc0c
Andre Eisenbach [Thu, 15 Sep 2016 22:10:56 +0000 (22:10 +0000)]
Add .clang-format
am:
99a236f01a
Change-Id: I83b914993265bf0c7f2a3dd17437a60feaef38f9
Treehugger Robot [Thu, 15 Sep 2016 22:09:32 +0000 (22:09 +0000)]
Merge "Update the style guide"
Andre Eisenbach [Wed, 14 Sep 2016 21:32:49 +0000 (14:32 -0700)]
Add .clang-format
Change-Id: I3750edd23be239d1b19aa1b7d949cfa3d074cb2f
Jakub Pawlowski [Thu, 15 Sep 2016 21:53:07 +0000 (21:53 +0000)]
Fix NPE in l2cble_notify_le_connection
am:
b4458c93d5
Change-Id: I4d4e647734515a2364b69afb31ca838725d014b8
Jakub Pawlowski [Thu, 15 Sep 2016 21:53:07 +0000 (21:53 +0000)]
Merge "Add a missing case for BTA_DM_SEARCH_CANCEL_CMPL_EVT"
am:
2d8048d72f
Change-Id: Ie0e87e60834c9223b4a5ee338f7aa157f8b37095
Jakub Pawlowski [Thu, 15 Sep 2016 15:04:04 +0000 (08:04 -0700)]
Fix NPE in l2cble_notify_le_connection
Accessing p_lcb must be guarded with NULL check.
Bug:
31442085
Change-Id: I0f6e3f8e0247c5e8946c4d098f8a3ba442f5fb28
Treehugger Robot [Thu, 15 Sep 2016 21:41:57 +0000 (21:41 +0000)]
Merge "Add a missing case for BTA_DM_SEARCH_CANCEL_CMPL_EVT"
Pavlin Radoslavov [Thu, 15 Sep 2016 20:55:31 +0000 (20:55 +0000)]
Merge "Add BT_HCI_UNKNOWN_MESSAGE_TYPE log event"
am:
c94437561f
Change-Id: Id78a7d380b1a1cbedecec73d26b9d41067211d74
Treehugger Robot [Thu, 15 Sep 2016 20:35:41 +0000 (20:35 +0000)]
Merge "Add BT_HCI_UNKNOWN_MESSAGE_TYPE log event"
Jakub Pawlowski [Thu, 15 Sep 2016 15:02:05 +0000 (08:02 -0700)]
Add a missing case for BTA_DM_SEARCH_CANCEL_CMPL_EVT
Cancelling discovery was not handled properly in
btif_dm_search_services_evt and was causing crashes due to assert in
default case.
Bug:
31442085
Change-Id: If9a2c203730c9b06df5ff8d8e251f0c35addcb82
Myles Watson [Thu, 15 Sep 2016 16:19:10 +0000 (09:19 -0700)]
Update the style guide
Add a pointer to the C++ style guide.
Add a HOWTO for those who have outstanding patches that
they'd like to reformat.
Change-Id: Ia749c6498424cfbdf0bb759a1736978f91a34289
Jakub Pawlowski [Thu, 15 Sep 2016 13:38:30 +0000 (13:38 +0000)]
Don't use move in FOR_EACH_* macro
am:
10c37e63c1
Change-Id: Ieb71b05695a6e362aab1f79aa8d83e520bd70321
Jakub Pawlowski [Thu, 15 Sep 2016 11:04:37 +0000 (04:04 -0700)]
Don't use move in FOR_EACH_* macro
FOR_EACH_* macros are resolved to for loop. Using std::move inside it
will cause already moved object to be used when more than one observer
is registered. This patch fixes that.
This issue was already fixed in commit
e84c4bd, but was reintroduced in
a641b6fa.
Change-Id: I14b72371d369e4bdcaf3a6e30045bf8a1e8c3e1b
Pavlin Radoslavov [Wed, 14 Sep 2016 23:39:02 +0000 (16:39 -0700)]
Add BT_HCI_UNKNOWN_MESSAGE_TYPE log event
If the received HCI type is unknown, then log an event and abort.
The most likely reason for that to happen is if the UART stream
is corrupted. We cannot recover from that, and there is not much
else we can do.
Also, fixed a bug in an HCI-related unit test that was exposed
by the above change.
Bug:
31432127
Change-Id: Ia888c485f177af4962268bf8f593b27fd7a4b080
Andre Eisenbach [Wed, 14 Sep 2016 22:06:06 +0000 (22:06 +0000)]
Merge "Add security record for devices found through LE batch scan"
am:
c8bd6de515
Change-Id: If593628632df3b60b2906de10f830fed464661be
Treehugger Robot [Wed, 14 Sep 2016 22:02:25 +0000 (22:02 +0000)]
Merge "Add security record for devices found through LE batch scan"