OSDN Git Service
Satish Kodishala [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Handle unknown codecs sent by HF
am:
f95c12a
* commit '
f95c12a8e7c3f264b03a51644368ca4232cc3cc4':
Handle unknown codecs sent by HF
Srinu Jella [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Avoid double-free on SDP search failure
am:
8ac46ef
* commit '
8ac46ef1e4910c1db12b0243dca140c3075d3238':
Avoid double-free on SDP search failure
Andre Eisenbach [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Remove bluedroidtest
am:
74b0f5f
* commit '
74b0f5faa463529a94930a343de5019caf345694':
Remove bluedroidtest
Sharvil Nanavati [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Delete unused function declarations from sdp_api.h.
am:
1300a48
* commit '
1300a48605f6307a7dd9002b363cfd74ae7250ef':
Delete unused function declarations from sdp_api.h.
Nitin Arora [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Avoid SMP process if another pairing is in progress
am:
77ebf2c
* commit '
77ebf2c8a7b0bd233999e68bbd7b11ca0d708f35':
Avoid SMP process if another pairing is in progress
Srinu Jella [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Increase the number of security slots for other new profiles
am:
310d5c7
* commit '
310d5c7ada40cca70b352e12a9cfddc44dffdc36':
Increase the number of security slots for other new profiles
Srinu Jella [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Correct the max SDU length used in BTIF layer
am:
d228f7f
* commit '
d228f7f2abe935fbb8f7d059fe83528d9a35811d':
Correct the max SDU length used in BTIF layer
Srinu Jella [Mon, 28 Mar 2016 05:01:38 +0000 (05:01 +0000)]
Reconstruct new packet to accomodate extra header length
am:
869abd1
* commit '
869abd1d3a45f419054f8815dc86cc53e393b456':
Reconstruct new packet to accomodate extra header length
Srinu Jella [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Enable debug logs for bluetooth process threads, modules
am:
b5754d2
* commit '
b5754d2fdfce8acba35ac8a03aae2ab88152dc6b':
Enable debug logs for bluetooth process threads, modules
Srinu Jella [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Corrected the stream for error checking
am:
874e095
* commit '
874e09529503f223b2c3a87a90d9a6cc72c90d7b':
Corrected the stream for error checking
Ayan Ghosh [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Peer support of Absolute Volume to be updated only if device supports A2DP
am:
69682ac
* commit '
69682acf0149e9e51cda5b8747866ca9dc37b907':
Peer support of Absolute Volume to be updated only if device supports A2DP
Ayan Ghosh [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Limit Max Bitpool value to SPEC recommended one
am:
271c217
* commit '
271c217a2c82b92a4d52dcace40bedea227a6c24':
Limit Max Bitpool value to SPEC recommended one
Ayan Ghosh [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Allow Carkit to trigger play immediately after call
am:
68ad33b
* commit '
68ad33b15a1becf87bca8f0a420b29ffb3342a0a':
Allow Carkit to trigger play immediately after call
Satish Kodishala [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Initialize sco codecs supported with CVSD
am:
65e9c82
* commit '
65e9c8251cd9f70153861aabe09f8767b82ce434':
Initialize sco codecs supported with CVSD
Satish Kodishala [Mon, 28 Mar 2016 05:01:37 +0000 (05:01 +0000)]
Ignore empty optional parameters in CLCC response
am:
3362048 -s ours
* commit '
3362048df98441dc46210fbb7f0aa2014ee717e1':
Ignore empty optional parameters in CLCC response
Satish Kodishala [Mon, 28 Mar 2016 04:58:31 +0000 (04:58 +0000)]
Clear remote BD address if SDP search fails
am:
9d3ef5e
* commit '
9d3ef5ea53a3209881d2bf67342977bee7ceffc7':
Clear remote BD address if SDP search fails
Satish Kodishala [Mon, 28 Mar 2016 04:58:31 +0000 (04:58 +0000)]
Do not reset Sniff Subrating parameters on SCO link
am:
af3e647
* commit '
af3e647479dcf27e17516b6cd2b853c453a1a01c':
Do not reset Sniff Subrating parameters on SCO link
Mallikarjuna GB [Mon, 28 Mar 2016 04:58:31 +0000 (04:58 +0000)]
Update the sniff policy when SCO is active
am:
ba22a41
* commit '
ba22a417d0700715872391ffad79058fe79fbec5':
Update the sniff policy when SCO is active
Jakub Pawlowski [Mon, 28 Mar 2016 04:58:31 +0000 (04:58 +0000)]
Fix broken formatting in README.md
am:
4b5a5fc
* commit '
4b5a5fcbf08475a87c6af3030e0d9b7e89d297c5':
Fix broken formatting in README.md
Jakub Pawlowski [Mon, 28 Mar 2016 04:58:31 +0000 (04:58 +0000)]
Build on linux: final changes and instructions.
am:
5caf67e -s ours
* commit '
5caf67e0f604c407a8b9b4987b0a161165feb90b':
Build on linux: final changes and instructions.
Jakub Pawlowski [Mon, 28 Mar 2016 04:55:25 +0000 (04:55 +0000)]
Move properties get/set code to osi
am:
2998946 -s ours
* commit '
2998946db9b820806d4a3e6decf1d01f090a8031':
Move properties get/set code to osi
Jakub Pawlowski [Mon, 28 Mar 2016 04:52:22 +0000 (04:52 +0000)]
Add missing file to BUILD.gn
am:
41c155c
* commit '
41c155cbfd43c99fed14d3d9b7c277679ade69a5':
Add missing file to BUILD.gn
Jakub Pawlowski [Mon, 28 Mar 2016 04:52:22 +0000 (04:52 +0000)]
Update build files for Fluoride on Linux
am:
107588a -s ours
* commit '
107588ab3e5af9f5df68815d5fe52b0c53e0e089':
Update build files for Fluoride on Linux
Jakub Pawlowski [Mon, 28 Mar 2016 04:30:21 +0000 (04:30 +0000)]
Add Linux-specific version of metrics.
am:
e4bc35b
* commit '
e4bc35bf8bfe06ea174607fde3b645f5f6e9b941':
Add Linux-specific version of metrics.
Jakub Pawlowski [Sat, 26 Mar 2016 05:39:45 +0000 (05:39 +0000)]
linux build fix
am:
815a8d4
* commit '
815a8d41cae1a01abdbeb6586c4365d33fa3bbb0':
linux build fix
Jakub Pawlowski [Sat, 26 Mar 2016 05:31:41 +0000 (22:31 -0700)]
linux build fix
Change-Id: Ibec71d18e664f575f73a472b7a522e87c3a1efa8
Satish Kodishala [Thu, 25 Jun 2015 07:48:35 +0000 (13:18 +0530)]
Handle unknown codecs sent by HF
Use case:
1. Connect to headset supporting CVSD, mSBC and other codecs.
2. Verify if headset sending AT+BAC with supported codecs.
3. Check if SCO is established with mSBC codec.
Failure:
SCO is established with CVSD codec.
Root cause:
When parsing AT+BAC command, if unknown codec is received,
we are falling back to CVSD although mSBC is supported in HF.
Fix:
AT+BAC parsing function modified to return correct codecs
supported by HF when it encounters unknown codecs in arguments
of AT+BAC.
Bug:
27852645
Change-Id: I9ac7675c9d863e7362f85e3b7b8d9a42462bd5e9
Srinu Jella [Tue, 29 Dec 2015 08:00:19 +0000 (13:30 +0530)]
Avoid double-free on SDP search failure
Use case: BT transfer fails in Doze mode.
Pre-condition:
1. Device is in Doze mode.
2. Device is in Active state.
Steps to reproduce:
1. On test device and support device, turn on Bluetooth and keep test device in Bluetooth on screen.
2. Put device in Doze mode:
adb shell dumpsys battery unplug
adb shell dumpsys deviceidle step
3. From support device send pair request to test device.
4. Pair two devices.
5. Put test device in Doze mode again.
6. Share one picture from support device to test device by Bluetooth.
7. Accept Bluetooth file transferring request.
Failure: From DUT, BT transfer is failed.
Root cause: Free buffer is called twice for the SDP search failure case.
Fix: Added null check for p_sdp_db to avoid freeing same buffer
again on SDP search failure.
Bug:
27852645
Change-Id: Ic7776e842c52418c2b0fb6d6479233d01c709dc2
Andre Eisenbach [Fri, 4 Mar 2016 06:36:51 +0000 (22:36 -0800)]
Remove bluedroidtest
Use bluetooth-cli/bluetoothtbd instead.
Bug:
25369253
Change-Id: I485919dce4bf3229733c85e6a33c754b9cbd62fc
Sharvil Nanavati [Thu, 11 Jun 2015 06:20:24 +0000 (23:20 -0700)]
Delete unused function declarations from sdp_api.h.
Change-Id: I8db02d557fdfc138f2ec8de2b2d45049175fd999
Nitin Arora [Thu, 28 Jan 2016 01:07:55 +0000 (17:07 -0800)]
Avoid SMP process if another pairing is in progress
This change prevents the incoming pairing/security request
from a remote device when pairing with another remote has
been initiated by the host and has not yet begun.
The pairing request by the second remote will be rejected
Bug:
22525598
Change-Id: I676c85af39d5418c699161ad11eee5951f9203d7
Srinu Jella [Tue, 25 Aug 2015 13:12:32 +0000 (18:42 +0530)]
Increase the number of security slots for other new profiles
Use case: MAP Sanity Test fail in multi-profile scenario.
Steps:
1. Connect to Instance 1 - Email Sanity Test Case
2. Connect to Instance 0&1 - Email & SMS Sanity Test Case
Failure: MAP sanity fail in multi-profile scenario.
Root Cause: some profile coonnection may fail in multi
profile scenario due to non availability of security id.
Fix: Increased the security slots to 75 to accomadate new
profiles introduced.
Bug:
27852645
Change-Id: Ic7c0268aea654cba2dee0c323ca0342e71ebc577
Srinu Jella [Fri, 22 Jan 2016 10:04:16 +0000 (15:34 +0530)]
Correct the max SDU length used in BTIF layer
Use case: OPP Tx over L2CAP are failing due to invalid PUT packet from DUT.
Steps:
1. Make the Remote device setup with OPP server which supports MTU
of more than 8k.
2. Send file from DUT to Remote device.
3. Transfer always fails.
Failure: OPP Tx over L2CAP file transfer fail. It will always fail
if remote supports more than 8076 as the MTU.
Root Cause: Max SDU of L2CAP layer will be communicated to the upper
layers, and same length of SDU being sent from upper layer
to BTIF layer, but because of change in the max SDU of
BTIF, it will receive less bytes than expected will lead
to form incomplete PUT request.
Fix: Correct the max SDU length used from BTIF layer to be in
sync with max SDU calculation from L2CAP layer.
Bug:
27852645
Change-Id: Ie037c85e798bebf6a71c56488aae37455725028c
Srinu Jella [Sun, 13 Sep 2015 12:54:52 +0000 (18:24 +0530)]
Reconstruct new packet to accomodate extra header length
Use case: Bluetooth process crash problem in the middle of RFCOMM
test cases due to buffer corruption detected while freeing it.
Root Cause: RFCOMM layer trying to reuse the same packet to send
to the lower layer but it will fail due to strick buffer
corruption checks.
Failure: Bluetooth process crash.
Fix: created a new packet to accomadate new header
and copied the same payload to the new packet.
Bug:
27852645
Change-Id: I5d12b76229d11480f7f37bbcd3561de97c80a0c1
Srinu Jella [Tue, 1 Mar 2016 11:29:35 +0000 (16:59 +0530)]
Enable debug logs for bluetooth process threads, modules
Use case: Debug enhancement for bluetooth threads,
modules
- Most of the bluetooth process threads,modules uses
APIs provided from the OSI layer.
- This patch enables the debug logs to know when the
thread, module is created and exited.
- This would be useful while debugging the ON/OFF,
ANR issues.
Bug:
27852645
Change-Id: I17f4f583d2c431725a8c44c586b29980b4bdab3f
Srinu Jella [Tue, 1 Mar 2016 14:15:41 +0000 (19:45 +0530)]
Corrected the stream for error checking
Replace event_stream with acl_stream
Bug:
27852645
Change-Id: I9ceb75ee05bad5d2ef1af819b3930216cc750507
Ayan Ghosh [Tue, 3 Dec 2013 09:22:22 +0000 (14:52 +0530)]
Peer support of Absolute Volume to be updated only if device supports A2DP
Peer support of absolute Volume feature should be updated to Audio
frameworks only for device which supports A2DP Sink and AVRCP Absolute
Volume TG roles together.
Audio manager need not be updated for AVRCP only peer devices as
that would cause sudden rise in ongoing stream volume when avrcp only
device connects, if it is set to some lower value with other device
connected for A2DP.
Bug:
27852645
Change-Id: I75509d0b0fd1b06fa08390940a327dd2887d7562
Ayan Ghosh [Fri, 26 Dec 2014 12:48:28 +0000 (18:18 +0530)]
Limit Max Bitpool value to SPEC recommended one
Preferred bipool for 44.1 KHz sampling rate for SBC
codec is considered as 53. Hence limit Max Bitpool
value to 53 in setconfig request to have it same as
the one DUT sets in getConfig response and in encoding
pcm packets.
few BMW series of CKs does not connect unless DUT
configures max bitpool in setconfig request to 53.
Bug:
27852645
Change-Id: Ie7ca504c23f6bae8fda997cdeb3e0ff0733defb0
Ayan Ghosh [Wed, 7 Aug 2013 14:35:29 +0000 (20:05 +0530)]
Allow Carkit to trigger play immediately after call
Removing check in stack where AVRCP Play and Pause commands
are being dropped if carkit initiates play or pause within
six seconds.
This addresses the scenario where JCI-Mazda CK pauses the
streaming by initiating Avrcp Pause right before making call
and can not resume the streaming by sending Avrcp Play right
after call ends.
Bug:
27852645
Change-Id: Ibb04223de746f528b356e78bd65130d3fd526a44
Satish Kodishala [Thu, 27 Aug 2015 05:21:45 +0000 (10:51 +0530)]
Initialize sco codecs supported with CVSD
Usecase:
1. Connect headset/carkit supporting codec negotiation
but does not send AT+BAC with available codecs.
2. Make a call and create SCO connection.
3. Transfer audio to AG from headset/carkit.
4. Transfer audio back to carkit.
Failure:
AG will not establish SCO connection with remote.
Rootcause:
We initialize codecs supported by remote as 0 and update
it with codecs received as part of AT+BAC. When AG sends
+BCS to start codec negotiation, it received AT+BCS=1 from
remote. Since 1 is not in the list of remote supported codecs
(0), AG will not create SCO connection in step#4.
Fix:
Initialize sco codecs supported by remote with mandatory
codec, CVSD.
Bug:
27852645
Change-Id: Ibe0e1a7bd3e59e8618568d320acfbde88f3fc11e
Satish Kodishala [Tue, 15 Sep 2015 14:16:41 +0000 (19:46 +0530)]
Ignore empty optional parameters in CLCC response
Usecase:
Pair and connect with AG that sends the optional parameters
in CLCC response.
Failure:
When optional parameters in CLCC response from AG is empty,
HF client is not parsing the empty optional parameters.
User may not be see the phone number on UI properly on
hf client device.
Root cause:
AGs like iPhone sends optional parameters in the CLCC response.
HF client is returning NULL when it encounters empty optional parameters.
Fix:
Ignore empty optional parameters in CLCC Response from AG.
Bug:
27852645
Change-Id: Ia90986ccc4c9c9f1a6fb3a914bc1df8b0a75ba0f
Satish Kodishala [Thu, 25 Jun 2015 08:53:17 +0000 (14:23 +0530)]
Clear remote BD address if SDP search fails
Use case:
1. Enable multi hf.
2. Pair and connect to a headset.
3. Turn off headset and try connecting to headset from AG.
4. After the connection fails, turn on headset.
5. Make sure headset initiates HF connection to AG.
6. Make MO/MT call, switch from headset to AG, vice versa using headset.
Failure:
When call is transferred from AG to headset, headset initiated
SCO connection request is rejected by AG.
Root cause:
For outgoing connection in step 3, SDP search fails. BD address of
remote headset is stored in scb[0]. BD address of headset with which
we tried to connect is not cleared in scb[0].
When incoming HF connection request is accepted in step 5, BD address
of headset is stored in scb[1]. Now, BD address of the same headset is
stored in both scb[0], scb[1].
When SCO connection request is received from headset, we get scb
information using BD address. However, since BD address in scb[0]
is not cleared, we end up selecting scb[0] for which there is no
headset connected. This makes us think that remote is initiating
SCO connection without SLC and we reject the SCO connection.
Fix:
Clear the BD address of remote when SDP search fails.
Bug:
27852645
Change-Id: I21a0b83fcd47fed91e28fe27bdfd6d541b6a527c
Satish Kodishala [Tue, 2 Feb 2016 11:52:15 +0000 (17:22 +0530)]
Do not reset Sniff Subrating parameters on SCO link
Usecase:
1. Pair and connect to BT headset
2. Pair and connect to a watch
3. Pair and connect a LE device
4. Make a call and reset BT on phone
5. Verify devices connect back and SCO is established
Failure:
After BT reset, devices connect and SCO is up. After some time,
SCO and ACL link disconnects due to connection timeout.
Rootcause:
When Headset is connected during active call, HFP is connected
first. Due to active call, SCO is also established. When SCO is
established, we disable sniff subrating(SSR). When A2DP is
connected after SCO connection, it enables SSR. This enabling
of SSR is causing ACL disconnect.
Fix:
When there is new profile connection for the same device which
has SCO, we should not enable SSR. It should be enabled only
when there is no SCO.
Bug:
27852645
Change-Id: I7815dba90851366ecc0523447c2394631c10ede1
Mallikarjuna GB [Tue, 23 Jun 2015 09:49:29 +0000 (15:19 +0530)]
Update the sniff policy when SCO is active
Use case:
1. Connect BT headset.
2. Make an outgoing call or receive a call on BT headset.
3. Check if sniff parameters are taking affect when SCO is active.
Failure:
Sniff parameters when SCO is active are not taking affect.
Root cause:
SCO link was not checked when updating power manager(PM)
about idle or busy states.
Fix:
During AG tx/rx activity, update PM based on SCO state.
Bug:
27852645
Change-Id: I4c09406395998bacf13471a273402a60f3b77f89
Jakub Pawlowski [Fri, 26 Feb 2016 00:13:31 +0000 (16:13 -0800)]
Fix broken formatting in README.md
Markdown formatter at:
https://android.googlesource.com/platform/system/bt/
interpret some things differently than other formatters.
This patch fixes badly formatted parts.
Change-Id: Ibe8a9c159d9d47396ef073f6555f06720bc3e661
Jakub Pawlowski [Thu, 25 Feb 2016 20:16:31 +0000 (12:16 -0800)]
Build on linux: final changes and instructions.
After this patch anyone should be able to build Fluoride on Linux.
Bug:
27324453
Change-Id: I7776be12591b8fed6d38fc0375019606d311ddb9
Jakub Pawlowski [Wed, 24 Feb 2016 18:39:46 +0000 (10:39 -0800)]
Move properties get/set code to osi
Currently we use Android-specific property_get and property_set
through the code. This patch adds osi_property_get and osi_property_set
that is encapsulating all external dependencies. This is step further
for errorless compilation on linux.
Bug:
27324453
Change-Id: I97c34344617a5855b683328bcd196a21a2fae6f9
Jakub Pawlowski [Wed, 24 Feb 2016 23:40:27 +0000 (15:40 -0800)]
Add missing file to BUILD.gn
This patch adds missing osi_module.c file. Without it Fluoride
on Linux compiles, but fails to run.
Bug:
27324453
Change-Id: I08eb6bc55149d1b70580643fdf131b197c027caf
Jakub Pawlowski [Tue, 23 Feb 2016 02:04:24 +0000 (18:04 -0800)]
Update build files for Fluoride on Linux
uprev build/secondary/third_party/**/BUILD.gn"
Other BUILD.gn files were updated to match current state of project.
Change-Id: Ie895d25680d510f5e69e6f15553311f6671cdce3
Jakub Pawlowski [Tue, 23 Feb 2016 23:28:35 +0000 (15:28 -0800)]
Add Linux-specific version of metrics.
This patch adds empty metrics implementation for Linux in
order to fix build errors.
Bug:
27324453
Change-Id: I2f45db6147689bf295176b7ad30a613a7f5a8d9f
Zhao Xuewen [Thu, 24 Mar 2016 23:45:11 +0000 (23:45 +0000)]
Bluetooth: Fix the issue that peer A2DP SNK device can not auto-reconnect.
am:
5bd9ffb
* commit '
5bd9ffbe6fbf22b7072bc1a63e3152a916276ddf':
Bluetooth: Fix the issue that peer A2DP SNK device can not auto-reconnect.
Joe Onorato [Thu, 24 Mar 2016 23:31:33 +0000 (23:31 +0000)]
Turn down excess logging in bt hci
am:
11cfdf3
* commit '
11cfdf303c420d14e6cf3e4d2ca856b827ba44cf':
Turn down excess logging in bt hci
Zhao Xuewen [Thu, 4 Feb 2016 03:20:14 +0000 (11:20 +0800)]
Bluetooth: Fix the issue that peer A2DP SNK device can not auto-reconnect.
If peer A2DP SNK disconnected by some reason, the device will reject reconnection request from peer.
This CL will judge the peer device is A2DP SRC, will reject the reconnection request.
So if peer device is A2DP SNK, will accept the reconnection request.
BUG:
26274393
Change-Id: Idecef527a763693f08d76d90512546f013312aa1
Signed-off-by: z00184990 <z00184990@notesmail.huawei.com>
Signed-off-by: Zhao Xuewen <zhaoxuewen@huawei.com>
Joe Onorato [Fri, 18 Mar 2016 20:38:44 +0000 (13:38 -0700)]
Turn down excess logging in bt hci
Bug:
27744135
Change-Id: I30c975ceac7b4f7d74ab77e2279b080b049ece1b
Hall Liu [Thu, 24 Mar 2016 18:14:29 +0000 (18:14 +0000)]
Stop turning on SCO audio automatically during call
am:
d22226b
* commit '
d22226b58bc753808f4b5c06c695773669493b41':
Stop turning on SCO audio automatically during call
Hall Liu [Sat, 20 Feb 2016 01:20:08 +0000 (17:20 -0800)]
Stop turning on SCO audio automatically during call
Remove some code that turns on SCO audio automatically when a device
connects, since Telecom should be responsible for routing audio to
bluetooth during a call.
Bug:
22507913
Change-Id: Iabf9cb8dd77d47505e87d865f8208268d9b417b7
Jakub Pawlowski [Wed, 23 Mar 2016 21:43:40 +0000 (21:43 +0000)]
service: use AIDL
am:
a4bd0d2
* commit '
a4bd0d2370bd469942e92e724cfc9c7c01d3da74':
service: use AIDL
Jakub Pawlowski [Wed, 23 Mar 2016 21:43:40 +0000 (21:43 +0000)]
service: use Parcelable instead of helpers
am:
9bceebb
* commit '
9bceebb4a441ef7f3c5d9ad2e9b84ec7e1974007':
service: use Parcelable instead of helpers
Jakub Pawlowski [Tue, 16 Feb 2016 19:53:14 +0000 (11:53 -0800)]
service: use AIDL
Change-Id: Ic6261a9bafc65a5534f4e580ef9cae1fa82b4086
Ying Wang [Wed, 23 Mar 2016 20:48:41 +0000 (20:48 +0000)]
Tell the build system this is a host module.
am:
df515a4
* commit '
df515a46dd4fe27040c39d35b14b3e071319156d':
Tell the build system this is a host module.
Jakub Pawlowski [Tue, 16 Feb 2016 04:18:19 +0000 (20:18 -0800)]
service: use Parcelable instead of helpers
In order to user .aidl in the future, all types will have to be
parcelable. We don't add Parcelable to base types, as they might
be also used with other transports than binder in future.
Change-Id: I88e6961e69ac0e5d04bd4b6fe3cd7d79bd6f73ba
Ying Wang [Wed, 23 Mar 2016 19:53:20 +0000 (19:53 +0000)]
Tell the build system this is a host module.
am:
06b3a57
* commit '
06b3a5741afa443966ec1268241c98b8549f8c44':
Tell the build system this is a host module.
Ying Wang [Wed, 23 Mar 2016 18:41:15 +0000 (11:41 -0700)]
Tell the build system this is a host module.
We need to tell the build system this is a host module before calling
local-generated-sources-dir.
Change-Id: Ie36ad938c0c7124865148f20fcb70d5187f158b8
(cherry-pick from commit
df515a46dd4fe27040c39d35b14b3e071319156d)
Ying Wang [Wed, 23 Mar 2016 18:41:15 +0000 (11:41 -0700)]
Tell the build system this is a host module.
We need to tell the build system this is a host module before calling
local-generated-sources-dir.
Change-Id: Ie36ad938c0c7124865148f20fcb70d5187f158b8
Nitin Shivpure [Wed, 23 Mar 2016 17:58:51 +0000 (17:58 +0000)]
HID: Fix to show mouse pointer movements on UI
am:
5e8b724
* commit '
5e8b7245ae98436b34ecce6dc7b45d7f7dba74d7':
HID: Fix to show mouse pointer movements on UI
Mallikarjuna GB [Wed, 23 Mar 2016 17:58:51 +0000 (17:58 +0000)]
Initiate SCO after Mode change event
am:
8847ff1
* commit '
8847ff137b311a37c57366ac8d138b605397dce1':
Initiate SCO after Mode change event
Mallikarjuna GB [Wed, 23 Mar 2016 17:54:52 +0000 (17:54 +0000)]
Avoid sending SCO disconnect when power mode is processing
am:
9ab2a9d
* commit '
9ab2a9d97f4e0c4b3cd76416e3d6ed03b610ec6f':
Avoid sending SCO disconnect when power mode is processing
Nitin Shivpure [Fri, 15 Jan 2016 11:04:37 +0000 (16:34 +0530)]
HID: Fix to show mouse pointer movements on UI
As per the UHID implementation, UHID_OPEN & UHID_CLOSE
can be ignored, but it is useful for power-management.
Since these events are handled on hid host, ready_for_data
needs to be set to TRUE. Previously the hid reports were not
sent to kernel UHID driver leading to no mouse pointer movement
on UI of DUT.
Change-Id: I708f5be4240f07826c6eefc5404af3e42f80cfa4
Mallikarjuna GB [Mon, 1 Jun 2015 07:28:38 +0000 (12:58 +0530)]
Initiate SCO after Mode change event
Use case:
1. Connect a headset to AG.
2. Make an outgoing call using headset.
Failure:
SCO connection request is rejected by headset.
Root cause:
AG initiated SCO connection when mode change is pending
on headset. Remote is coming out of sniff and rejected
SCO connection request.
Fix:
AG initiates SCO connection request once AG receives mode
change event. It resolves a corner case where remote failed
to accept SCO connection when initiated in between unsniff
LMP request. Issue is seen with WEP301 headset.
Change-Id: I4ea5d073630320b30f90e6141f4daf25943cca0b
Mallikarjuna GB [Sat, 30 May 2015 18:03:58 +0000 (23:33 +0530)]
Avoid sending SCO disconnect when power mode is processing
Use case:
1. Pair and connect with Mercedes car kit.
2. Answer incoming call by phone or car kit.
3. Switch audio between car kit and phone.
4. Repease 1-3 steps.
Failure:
Car kit is going into bad state and not accepting SCO disconnect.
Root cause:
Phone has sent SCO disconnect command to car kit when
power mode command(sniff/unsniff) is in the processing
on the ACL where SCO is active. Car kit didn't accept
remove SCO request command and gone into bad state.
Fix:
AG should send sco disconnect once power mode change is completed
to avoid this failure.
Change-Id: I7eba162a8fd9615795009ab26005535a3e5c7e86
Satish Kodishala [Wed, 23 Mar 2016 17:42:59 +0000 (17:42 +0000)]
Process complete AT cmd response.
am:
8c10b05
* commit '
8c10b05eda5f1676668cb1504e976f4437851032':
Process complete AT cmd response.
Satish Kodishala [Wed, 23 Mar 2016 17:42:59 +0000 (17:42 +0000)]
Abort parsing in case of format error
am:
e77ecc5
* commit '
e77ecc51ba21ebcaba74fb8c890bffba14d652bb':
Abort parsing in case of format error
Satish Kodishala [Thu, 11 Feb 2016 17:05:40 +0000 (22:35 +0530)]
Process complete AT cmd response.
Usecase:
1. Enable hf client role and connect with AG.
2. Receive an incoming call and accept from hf client.
3. End call from hf client.
4. Repeat the steps few times.
Failure:
UI is not updated with proper call status although
call is active.
Root cause:
When OK is received as part of AT command response,
application is not updated for it. This caused response
state mismatch in application and hence queue was not
cleared properly.
Fix:
Parse complete AT command response and update application
accordingly.
Change-Id: I8cb2362369b209903700e87330ed2a3e3052b188
Satish Kodishala [Thu, 11 Feb 2016 14:32:08 +0000 (20:02 +0530)]
Abort parsing in case of format error
Usecase:
1. Enable hf client and connect to AG.
2. Send +COPS with length more than allowed 16 characters.
Failure:
Crash might be seen while parsing +COPS response from AG.
Root cause:
sscanf used for parsing the AT commands does not update
the characters scanned when there is format error.
Fix:
Abort the processing in case of format error.
Change-Id: Id3ca80712df3d0251cf9ffb04d9c766be809ae84
Ayan Ghosh [Wed, 23 Mar 2016 17:26:58 +0000 (17:26 +0000)]
Move to idle when remote disconnects during connection.
am:
4d10d7f
* commit '
4d10d7f5a0bb9444867b2f77b3e92725a851f8ac':
Move to idle when remote disconnects during connection.
Ayan Ghosh [Wed, 23 Mar 2016 17:26:58 +0000 (17:26 +0000)]
Allocate buffer for AV SDP in Stack
am:
a986d61
* commit '
a986d610aa91222b3387497705aa12ccebe3835b':
Allocate buffer for AV SDP in Stack
Ayan Ghosh [Tue, 7 Jan 2014 11:17:19 +0000 (16:47 +0530)]
Move to idle when remote disconnects during connection.
Chrysler Uconnect Touch initiates disconnect for a2dp on
l2cap just after discovery on AVDTP channel, stack does not
send any message to BTIF layer for disconnection, this
causes btif getting stuck in opening state and later no stable
connection update is sent to app. Since it is intermediate
state all subsequent connection trials fails.
Send disconnect event from incoming state to closing state
and then closing state will send proper msg to btif layer. Add
closing msg handling in btif layer so that we can update app
for connection disconnect when initiated from remote and move to
proper stable state for accepting/initiating connection.
Change-Id: I011d9ffe9d721235217320c1e5281f70328c7f13
Ayan Ghosh [Wed, 23 Mar 2016 17:18:34 +0000 (17:18 +0000)]
Do not initiate SDP for incoming AVDTP connection
am:
c90c0d4
* commit '
c90c0d48e2adfaf42908177ea7eeab85787d84fc':
Do not initiate SDP for incoming AVDTP connection
Ayan Ghosh [Thu, 3 Mar 2016 10:37:38 +0000 (16:07 +0530)]
Allocate buffer for AV SDP in Stack
Remove buffer allocation in BTA while going for SDP before triggering
A2DP connection. This strategy is followed to address memory corruption
issues due to freeing of BTA buffer before SDP RSP call back is
triggered and access the freed buffer from there, leads to crash when
running Codemonicom tests.
The change allocates and frees buffer in stack.
Change-Id: If6d60d2aa60d19ce5120dd38c2f365d70943db81
Ayan Ghosh [Wed, 23 Mar 2016 17:11:17 +0000 (17:11 +0000)]
Process AV HAL start only when previous instance is cleaned up
am:
59e97c2
* commit '
59e97c20314b51cf0c2854e4d2aa889e7137207e':
Process AV HAL start only when previous instance is cleaned up
Ayan Ghosh [Wed, 23 Mar 2016 17:11:16 +0000 (17:11 +0000)]
Restrict DUT supported SBC configuration in GET_CAP response
am:
d565837
* commit '
d56583705e63a8a508b908d2a0c62003834accae':
Restrict DUT supported SBC configuration in GET_CAP response
Ayan Ghosh [Thu, 11 Dec 2014 12:26:02 +0000 (17:56 +0530)]
Do not initiate SDP for incoming AVDTP connection
There are few instances when remote initiates L2CAP
channel for AVDTP signaling but keeps quite after that,
and later on timeout DUT goes for rest of the signalling
procedure but does sdp prior to the same.Few peer
devices deletes a2dp sink sdp record when there is an
ongoing connection, as a result sdp request fails and
DUT fails to proceed with signalling procedure and
connection setup fails.
This patch makes sure that DUT does not go for redundant
sdp request for AVDTP, provided remote has already
established L2cap connection for the same. SDP is done
explicitly only incase of outgoing AV connection.
This issue is seen with Nokia Es headset.
Change-Id: Id44368687d5b3f97bf0258f8d4ff75f185db23af
Ayan Ghosh [Thu, 3 Mar 2016 13:28:24 +0000 (18:58 +0530)]
Process AV HAL start only when previous instance is cleaned up
Change-Id: Iee232dacd3b79e6e94d26c73fb3e563fddced75c
Ayan Ghosh [Thu, 17 Mar 2016 09:29:06 +0000 (14:59 +0530)]
Restrict DUT supported SBC configuration in GET_CAP response
DUT shows all possible SBC configurations as supported
as part of GET_CAP response and also allows AV SINK to
opt for any of these values from that set as part of
SET_CONFIG request, but later opts for only recommended
figures while streaming so that leads to mismatch in
configuration between the config values SINK sets during
SET_CONFIG and config values DUT chooses for streaming
and hence it causes PTS (version 6.4 onwards) certification
failure for below A2DP and AVDTP cases:
A2DP:
TC_SRC_SET_BV_04_I
TC_SRC_SET_BV_06_I
AVDTP:
TC_ACP_SRC_SIG_SMG_BV_18_C
TC_ACP_SRC_SIG_SMG_BV_20_C
TC_ACP_SRC_SIG_SMG_BV_22_C
Restricting DUT supported SBC configurations to reflect only
the configuration DUT opts for during streaming makes sure
remote also opts for those config values during SET_CONFIG
and later there is no mismatch.
Change-Id: I13dbe94e0ca52708fc62c6db7513f7985237c18c
Jakub Pawlowski [Tue, 22 Mar 2016 03:44:36 +0000 (03:44 +0000)]
Use handles to identify GATT attributes (1/4)
am:
26f8828
* commit '
26f8828cdb5f02b0b01bafaccd4ad0b0ba9d57ab':
Use handles to identify GATT attributes (1/4)
Jakub Pawlowski [Tue, 22 Mar 2016 03:44:36 +0000 (03:44 +0000)]
HID service discovery refactor
am:
0673013 -s ours
* commit '
06730134eb2d99cc1abb0e648bbff19641adc1ab':
HID service discovery refactor
Jakub Pawlowski [Tue, 22 Mar 2016 03:41:57 +0000 (03:41 +0000)]
Restructure GATTC
am:
36b6707 -s ours
* commit '
36b67072266468e4b4becc76c0ddbff6154bb12c':
Restructure GATTC
Jakub Pawlowski [Tue, 22 Mar 2016 03:39:19 +0000 (03:39 +0000)]
Merge changes from topic \'bug-
27455533-to-nyc-dev-merge-1\' into nyc-dev
am:
1af9063 -s ours
* commit '
1af906353999b8f25ddd1030803292a4c84087f6':
Remove bta_gattc_id2handle
Use attribute handle instead of id in GATT cache
HID multi-device refactoring
GATT cache storage refactoring
Remove dead methods and callbacks
Simplify UUID handling in GATT cache
Jakub Pawlowski [Thu, 17 Mar 2016 19:05:54 +0000 (12:05 -0700)]
Use handles to identify GATT attributes (1/4)
Bug:
27778668
Change-Id: Id7454450c1ce2164001a1f9ca0b91f18d84e3fd6
Jakub Pawlowski [Tue, 15 Mar 2016 22:35:38 +0000 (15:35 -0700)]
HID service discovery refactor
This patch changes how HID is initialized.
Up till now, HID discovery was intricately chained,
to make sure two operations are not scheduled at same time.
From now on, all discovery is done and all operations are
scheduled for execution right away. There is separate set
of functions making sure all operations will be executed
without collisions.
This patch also removes BTA_HH_SCPP_INST_DEF, which was
used as hardcoded service id.
Bug:
27698756
Change-Id: I30a7388e129844c5e4727b2ed2b7c05867cc73a8
Jakub Pawlowski [Tue, 15 Mar 2016 22:35:00 +0000 (15:35 -0700)]
Restructure GATTC
This patch changes how GATTC is structured. Up till now, it
contained tBTA_GATTC_CACHE and tBTA_GATTC_CACHE_ATTR. Those
structures were so ugly, someone hide them inside internal
header, to make sure noone would ever access them from outside
GATTC. They are now replaced with:
tBTA_GATTC_SERVICE,
tBTA_GATTC_CHARACTERISTIC,
tBTA_GATTC_DESCRIPTOR and
tBTA_GATTC_INCLUDED_SVC.
Those looks much better, and were made globally avaliable.
Thanks to way they're build, we no longer need set of access
methods, which were also very ugly:
BTA_GATTC_GetFirstChar
BTA_GATTC_GetNextChar
BTA_GATTC_GetFirstIncludedService
etc.
This patch breaks HID, DO NOT SUBMIT without HID refactor.
Bug:
27455533
Change-Id: Ic42cfff175e0cc1a0d8e1a1216e2b4b756cbf77d
Andre Eisenbach [Tue, 22 Mar 2016 02:55:32 +0000 (02:55 +0000)]
Merge changes from topic 'bug-
27455533-to-nyc-dev-merge-1' into nyc-dev
* changes:
Remove bta_gattc_id2handle
Use attribute handle instead of id in GATT cache
HID multi-device refactoring
GATT cache storage refactoring
Remove dead methods and callbacks
Simplify UUID handling in GATT cache
Jakub Pawlowski [Tue, 22 Mar 2016 02:47:26 +0000 (02:47 +0000)]
Use handles to identify GATT attributes (1/4)
am:
9dc9985
* commit '
9dc998503590163068845827d951fc2f05a17bda':
Use handles to identify GATT attributes (1/4)
Jakub Pawlowski [Thu, 17 Mar 2016 19:05:54 +0000 (12:05 -0700)]
Use handles to identify GATT attributes (1/4)
Bug:
27778668
Change-Id: Id7454450c1ce2164001a1f9ca0b91f18d84e3fd6
Pavlin Radoslavov [Tue, 22 Mar 2016 02:30:36 +0000 (02:30 +0000)]
Cleanup after p_mcb if L2CA_ConnectReq() failed
am:
d212571
* commit '
d2125712aa0988434d7809e8497f49525a9eae9b':
Cleanup after p_mcb if L2CA_ConnectReq() failed
Pavlin Radoslavov [Tue, 22 Mar 2016 02:30:36 +0000 (02:30 +0000)]
Add missing initialization of queue btm_cb.sec_pending_q
am:
16c97b9
* commit '
16c97b9a1732558868901f4315f4f0b3850be2a1':
Add missing initialization of queue btm_cb.sec_pending_q
Pavlin Radoslavov [Fri, 18 Mar 2016 08:02:45 +0000 (01:02 -0700)]
Cleanup after p_mcb if L2CA_ConnectReq() failed
If L2CA_ConnectReq() failed, make sure that
we cleanup the lcid cache state after the
affected p_mcb.
Also, extra check and a log message inside function
rfc_check_send_cmd().
Bug:
27334916
Change-Id: Ib2950d12ce456d74355f4bcc0e3c4d87603f8f91
Pavlin Radoslavov [Tue, 22 Mar 2016 01:47:09 +0000 (01:47 +0000)]
Add missing initialization of queue btm_cb.sec_pending_q
am:
6aef394
* commit '
6aef394995e2c99bb29be05fa63298ea56ea3f60':
Add missing initialization of queue btm_cb.sec_pending_q
Pavlin Radoslavov [Mon, 21 Mar 2016 23:35:41 +0000 (16:35 -0700)]
Add missing initialization of queue btm_cb.sec_pending_q
Bug:
27763878
Change-Id: I93001a679e22b744c3feafda1997e5f7e707db4e
Andre Eisenbach [Tue, 22 Mar 2016 01:17:45 +0000 (01:17 +0000)]
Log error code on wakelock acquisition/release failure
am:
b71bdd6
* commit '
b71bdd6f5bef9514eb358c4279dca57ae8c1df70':
Log error code on wakelock acquisition/release failure