OSDN Git Service

android-x86/system-bt.git
8 years agoDefault missing DevType and DevClass in NVRAM. am: 3b6ef54cd2
Jacky Cheung [Fri, 4 Mar 2016 22:00:32 +0000 (22:00 +0000)]
Default missing DevType and DevClass in NVRAM. am: 3b6ef54cd2
am: 4b8cdc78d4

* commit '4b8cdc78d4d665dafc7903877cb7c362807ec782':
  Default missing DevType and DevClass in NVRAM.

8 years agoGATT: Initiate L2CAP disconnect only when the channel is open am: bf955cb7e5
venkata Jagadeesh [Fri, 4 Mar 2016 22:00:24 +0000 (22:00 +0000)]
GATT: Initiate L2CAP disconnect only when the channel is open am: bf955cb7e5
am: e65e09f115

* commit 'e65e09f11598af404915111cf3b027c6d5890081':
  GATT: Initiate L2CAP disconnect only when the channel is open

8 years agoDefault missing DevType and DevClass in NVRAM.
Jacky Cheung [Fri, 4 Mar 2016 21:58:32 +0000 (21:58 +0000)]
Default missing DevType and DevClass in NVRAM.
am: 3b6ef54cd2

* commit '3b6ef54cd262da6a41a16dafe361040740024717':
  Default missing DevType and DevClass in NVRAM.

8 years agoGATT: Initiate L2CAP disconnect only when the channel is open
venkata Jagadeesh [Fri, 4 Mar 2016 21:58:28 +0000 (21:58 +0000)]
GATT: Initiate L2CAP disconnect only when the channel is open
am: bf955cb7e5

* commit 'bf955cb7e50e1047452e741effa504c8aefc8a4f':
  GATT: Initiate L2CAP disconnect only when the channel is open

8 years agoDefault missing DevType and DevClass in NVRAM.
Jacky Cheung [Fri, 4 Mar 2016 21:29:02 +0000 (13:29 -0800)]
Default missing DevType and DevClass in NVRAM.

Missing DevType and DevClass in NVRAM were not properly set to a
default values previously.

8 years agoRemove btla-specific comments am: 1be7ae1a08
Jakub Pawlowski [Fri, 4 Mar 2016 21:52:25 +0000 (21:52 +0000)]
Remove btla-specific comments am: 1be7ae1a08
am: a9b36318f2

* commit 'a9b36318f287a1a3ef4a8dc253b4313dadf00721':
  Remove btla-specific comments

8 years agoGATT: Initiate L2CAP disconnect only when the channel is open
venkata Jagadeesh [Thu, 26 Nov 2015 08:44:00 +0000 (14:14 +0530)]
GATT: Initiate L2CAP disconnect only when the channel is open

Use case:
Crash found during L2CAP disconnect from faulty BLE APP.

Steps:
Run SNS testing.

Failure:
Crash during L2CAP disc.

Root cause:
Faulty BLE application triggering GATT disconnection
which internally triggering L2CAP disconnection without checking
proper state of channel.

Fix:
- Initiate L2CAP disconnect only when the channel is open
- Validate LCB during disconnection from upper layers

Change-Id: Ic9d065f095feba659c861828732647e968c20db8

8 years agoRemove btla-specific comments
Jakub Pawlowski [Fri, 4 Mar 2016 21:50:24 +0000 (21:50 +0000)]
Remove btla-specific comments
am: 1be7ae1a08

* commit '1be7ae1a0890380b8a3daebcade0c1f55b04b167':
  Remove btla-specific comments

8 years agoRemove btla-specific comments
Jakub Pawlowski [Fri, 4 Mar 2016 21:20:05 +0000 (13:20 -0800)]
Remove btla-specific comments

Change-Id: I91a19b2cfbc96d7567e0e0914058619ea364c1d4

8 years agoCorrecting sniff behaviour in multi-connection scenario am: 31d1a2b525
Matadeen Mishra [Fri, 4 Mar 2016 19:38:41 +0000 (19:38 +0000)]
Correcting sniff behaviour in multi-connection scenario am: 31d1a2b525
am: 060b3c2007

* commit '060b3c20079e84ee8de4ab44663a4dd3f4fa9be7':
  Correcting sniff behaviour in multi-connection scenario

8 years agoCorrecting sniff behaviour in multi-connection scenario
Matadeen Mishra [Fri, 4 Mar 2016 19:36:09 +0000 (19:36 +0000)]
Correcting sniff behaviour in multi-connection scenario
am: 31d1a2b525

* commit '31d1a2b52507df33f13d19ed2349585dfa490542':
  Correcting sniff behaviour in multi-connection scenario

8 years agoCorrecting sniff behaviour in multi-connection scenario
Matadeen Mishra [Mon, 1 Feb 2016 13:50:54 +0000 (19:20 +0530)]
Correcting sniff behaviour in multi-connection scenario

Use case: When multiple profiles are connected on same link and if any one of the
profiles deregisters with powermanager, powermanager will initiate a sniff when it
removes the timer for one profile, even if a timeout did not trigger for other profiles.

Steps:
1. Turn on BT
2. Pair with Mi band (Wearable device)
3. Pair with carkit
4. Turn off BT
5. Turn on BT
HF and A2DP connection should successful after BT on to carkit.

Failure: HF connection fails.

Root Cause: powermanager initiates a sniff when it removes the timer for one profile
Even if a timeout did not trigger for other profiles.

Fix: When multiple profiles connect on the same link and if any one profile
deregisters with powermanager, pm should stop the timer for that profile
and restart the other profiles timers.

Change-Id: I8e215a9d868291976c70ff32b61145b4360a7f8f

8 years agoCleanup L2CAP socket properly on close am: 9123096530
Srinu Jella [Fri, 4 Mar 2016 19:14:48 +0000 (19:14 +0000)]
Cleanup L2CAP socket properly on close am: 9123096530
am: 1c42c2314b

* commit '1c42c2314ba17f8d7ffce5dc511a245e5acf3627':
  Cleanup L2CAP socket properly on close

8 years agoCleanup L2CAP socket properly on close
Srinu Jella [Fri, 4 Mar 2016 19:12:48 +0000 (19:12 +0000)]
Cleanup L2CAP socket properly on close
am: 9123096530

* commit '91230965304bc323a96ced0527d560aacb606415':
  Cleanup L2CAP socket properly on close

8 years agoCleanup L2CAP socket properly on close
Srinu Jella [Mon, 21 Sep 2015 06:30:48 +0000 (12:00 +0530)]
Cleanup L2CAP socket properly on close

Use case:
1. Sometimes pairing pop up occurs during Android beam
   transfer though it is not required.
2. No OPP Tx request over OBEX if we cancel during file transfer.

Precondition
1. WIFI ON and conneted with AP.

Steps:
1. Pair and connect from DUT to remote.
2. Go to gallery and send a file.
3. Accept same file and stop it from remote during transfer.
4. Repeat step 2-4 10 times.

Failure:
OPP Tx should not fail.

Root cause:
Close request was not properly handled from BT-IF layer.

Fix:
1. Handled the close request properly from BT-IF layer
   to close the socket variables and instruct the BTA layer
   close from there as well.
2. Clean up L2CAP socket properly on closure to free
   the entry registered with security manager to avoid
   leak in security manager records.

Change-Id: I4f5d6ac92317bcaee5f9285ba71d13eea84c737c

8 years agoGAP Setting remove device pending status as FALSE am: 9412bbaea5
Balraj Selvaraj [Fri, 4 Mar 2016 19:04:50 +0000 (19:04 +0000)]
GAP Setting remove device pending status as FALSE am: 9412bbaea5
am: d58b657e22

* commit 'd58b657e22dc3aa5facfaff8524e950665c71985':
  GAP Setting remove device pending status as FALSE

8 years agoGAP Setting remove device pending status as FALSE
Balraj Selvaraj [Fri, 4 Mar 2016 19:02:47 +0000 (19:02 +0000)]
GAP Setting remove device pending status as FALSE
am: 9412bbaea5

* commit '9412bbaea51f577d903e060b8c8214fbd28b0b4f':
  GAP Setting remove device pending status as FALSE

8 years agoGAP Setting remove device pending status as FALSE
Balraj Selvaraj [Thu, 11 Feb 2016 08:16:02 +0000 (13:46 +0530)]
GAP Setting remove device pending status as FALSE

Use case: DUT deletes Link key and failed to initiate
  authentication request after remote headset turned Off and ON

steps:
- Pair the DUT and HS. (Link Keys get established.)
- Now Switch OFF BT on DUT. (DUT still has the Link key of HS)
- Reset the paired devices memory in HS and keep HS in
  pairing mode. (HS loses DUT's link key)
- Now switch ON BT on DUT. (DUT starts reconnection with HS,
  but as HS lost DUT's key, PIN or KEY missing event will
  come to host)
- DUT reconnects to HS (Using newly established link keys)
- Now power OFF and ON the HS.
- HS will try reconnection with DUT.
- While there is an incoming connection from HS to DUT,
  host is giving negative link key reply always for the
  multiple link key requests from HS.
- HS sends disconnection with "Authentication failure"

Failure: DUT should not delete Link key and DUT should
  initiate Authenticatin request.

Root cause: pending status was not FALSE from security device
  DB, which will causing Authentication Failure.

Fix: Setting the remove device pending status to FALSE from
  security device DB, when the link key notification event
  comes. Basically it will avoid deleting the device from
  security device DB, Which is solving the reconnection
  initated from remote when we remove the link key at
  remote side.

Change-Id: Ic164d8d5b5c2e0b9cc5f04f993047fb0a8e5d9a9

8 years agoTrack TX empty event to manage sniff timer am: 4e972d8c24
Srinu Jella [Fri, 4 Mar 2016 18:50:22 +0000 (18:50 +0000)]
Track TX empty event to manage sniff timer am: 4e972d8c24
am: 09f045bdbc

* commit '09f045bdbcc1d36abc73bd8ec882b13c03c2226e':
  Track TX empty event to manage sniff timer

8 years agoTrack TX empty event to manage sniff timer
Srinu Jella [Fri, 4 Mar 2016 18:48:22 +0000 (18:48 +0000)]
Track TX empty event to manage sniff timer
am: 4e972d8c24

* commit '4e972d8c24ecfb808757ef5c81eb3877ebc93027':
  Track TX empty event to manage sniff timer

8 years agoTrack TX empty event to manage sniff timer
Srinu Jella [Tue, 16 Feb 2016 14:52:16 +0000 (20:22 +0530)]
Track TX empty event to manage sniff timer

Use case:
OPP TX while inquiry is in progress.

Steps:
1. Send any file from DUT to remote using BT.
2. Accept file on remote.
3. During file transfer, start inquiry on DUT and
   observe behaviour.

Failure:
DUT sends sniff command in the middle of the transfer
though it is not required. eventually OPP Tx over
L2CAP file transfer fail.

Root Cause:
As per the current implementation, for tx it will
immediately starts idle timer without checking
for the completion status of tx.

Fix:
Handled the tx complete event from L2CAP properly
to start the idle timer to manage the sniff properly.

Change-Id: I298075590042e82a2f33837f6df6af0b2fd8179a

8 years agoRead local supported codecs as part of boot sequence am: f6dcf79f62
Srinu Jella [Fri, 4 Mar 2016 18:38:35 +0000 (18:38 +0000)]
Read local supported codecs as part of boot sequence am: f6dcf79f62
am: 99a2b14ab4

* commit '99a2b14ab44b388499b0d084265c8b4a21caac39':
  Read local supported codecs as part of boot sequence

8 years agoRead local supported codecs as part of boot sequence
Srinu Jella [Fri, 4 Mar 2016 18:36:36 +0000 (18:36 +0000)]
Read local supported codecs as part of boot sequence
am: f6dcf79f62

* commit 'f6dcf79f62880e716e127b19c70ea328e07c6051':
  Read local supported codecs as part of boot sequence

8 years agoRead local supported codecs as part of boot sequence
Srinu Jella [Wed, 22 Jul 2015 12:00:32 +0000 (17:30 +0530)]
Read local supported codecs as part of boot sequence

Add support to read local supported codecs as part of
controller module initialization.

Also added an API from controller interface to get the
local supported codecs.

Change-Id: I37a4ab9e6a20ed057ca794dbdd4f99c2a8c65a6e

8 years agoAdded fd for monitoring when the channel is not congested am: 7baa1e1792
Srinu Jella [Fri, 4 Mar 2016 18:28:33 +0000 (18:28 +0000)]
Added fd for monitoring when the channel is not congested am: 7baa1e1792
am: 3cc1abb802

* commit '3cc1abb8029acabfe81ee109e95b16365f609577':
  Added fd for monitoring when the channel is not congested

8 years agoAdded fd for monitoring when the channel is not congested
Srinu Jella [Fri, 4 Mar 2016 18:26:34 +0000 (18:26 +0000)]
Added fd for monitoring when the channel is not congested
am: 7baa1e1792

* commit '7baa1e17924cdac702ab9d8146a966fbd26c8d50':
  Added fd for monitoring when the channel is not congested

8 years agoAdded fd for monitoring when the channel is not congested
Srinu Jella [Tue, 11 Aug 2015 13:46:52 +0000 (19:16 +0530)]
Added fd for monitoring when the channel is not congested

Use case:
Skips and Media Audio Loss are Observed During PAN Connection

Steps:
1. Launched Local Music and Media Audio was in Headset.
2. Paired and Connected to other Phone to DUT Over BT Tethering.
3. While  Listening to Media Audio in DUT, Started Watching
   Youtube in other phone.
4. Observed Below Observations During Some 30mins of PAN Connection.

Failure:
Skips and Media Audio Loss are Observed During PAN Connection

Root Cause:
socket monitor thread keeps polling for PAN fd, eventually
it will make the BTU thread also busy, inturn NOCP processing
gets delayed.

Fix:
Add PAN fd for monitoring only when L2CAP channel related to
PAN profile is not congested. It will break loop by checking the
congestion status to put the fd for polling.

Change-Id: I2119c6c86d8e4798e516c512ad7aac7630b85a6a

8 years agoMerge "Shorten local name in EIR data according to UTF encoding rules" am: a9644b77b7
Matadeen Mishra [Fri, 4 Mar 2016 18:16:21 +0000 (18:16 +0000)]
Merge "Shorten local name in EIR data according to UTF encoding rules" am: a9644b77b7
am: ea75e89bbd

* commit 'ea75e89bbd89bc4367a599d8c033ce4cafde03d9':
  Shorten local name in EIR data according to UTF encoding rules

8 years agoMerge "Shorten local name in EIR data according to UTF encoding rules"
Matadeen Mishra [Fri, 4 Mar 2016 18:14:22 +0000 (18:14 +0000)]
Merge "Shorten local name in EIR data according to UTF encoding rules"
am: a9644b77b7

* commit 'a9644b77b7959fef0b58410230930317575d0668':
  Shorten local name in EIR data according to UTF encoding rules

8 years agoMerge "Shorten local name in EIR data according to UTF encoding rules"
Andre Eisenbach [Fri, 4 Mar 2016 18:08:00 +0000 (18:08 +0000)]
Merge "Shorten local name in EIR data according to UTF encoding rules"

8 years agoHID: Handle collisions during incoming and outgoing connections am: 891723a428
Hemant Gupta [Fri, 4 Mar 2016 17:46:00 +0000 (17:46 +0000)]
HID: Handle collisions during incoming and outgoing connections am: 891723a428
am: 852ab5f88b

* commit '852ab5f88b8c67d79fab181fd3a1d0de724ffefb':
  HID: Handle collisions during incoming and outgoing connections

8 years agoHID: Handle collisions during incoming and outgoing connections
Hemant Gupta [Fri, 4 Mar 2016 17:44:01 +0000 (17:44 +0000)]
HID: Handle collisions during incoming and outgoing connections
am: 891723a428

* commit '891723a42851285ec7e6c2f616a405611789da6b':
  HID: Handle collisions during incoming and outgoing connections

8 years agoHID: Reset outgoing connection retry to 1 am: b7d4613b3c
Hemant Gupta [Fri, 4 Mar 2016 17:39:41 +0000 (17:39 +0000)]
HID: Reset outgoing connection retry to 1 am: b7d4613b3c
am: 95d3d43169

* commit '95d3d431693134fc4ff71aa1ce7f7a9086964b74':
  HID: Reset outgoing connection retry to 1

8 years agoHID: Handle collisions during incoming and outgoing connections
Hemant Gupta [Fri, 11 Dec 2015 14:39:22 +0000 (20:09 +0530)]
HID: Handle collisions during incoming and outgoing connections

- This patch handles cases when incoming HID connection is in progress, and
  there is an outgoing connection attempt from upper layers. This was leading
  to a case when ougoing connection would fail as connection was already in
  progress, which triggered cleanup of connection states, which was not proper
  leading to issues in future connection attempts, as disconnection during
  ongoing connection was not handled properly in existing code.

- Reset the incoming flags during open failure to prevent any possible issues
  during further outgoing connections.

Change-Id: I6fb0c6156482d2da41ca0d2d280091d73c27f292

8 years agoHID: Reset outgoing connection retry to 1
Hemant Gupta [Fri, 4 Mar 2016 17:37:40 +0000 (17:37 +0000)]
HID: Reset outgoing connection retry to 1
am: b7d4613b3c

* commit 'b7d4613b3c1fae825b4c7ba94907c75513feb1c7':
  HID: Reset outgoing connection retry to 1

8 years agoHID: Remove bond for device in case Virtual unplug is ongoing am: dc5272a39d
Hemant Gupta [Fri, 4 Mar 2016 17:35:38 +0000 (17:35 +0000)]
HID: Remove bond for device in case Virtual unplug is ongoing am: dc5272a39d
am: 6305a70e15

* commit '6305a70e15fac8bf1088a358b62f9910d293e420':
  HID: Remove bond for device in case Virtual unplug is ongoing

8 years agoHID: Reset outgoing connection retry to 1
Hemant Gupta [Fri, 4 Mar 2016 17:19:55 +0000 (22:49 +0530)]
HID: Reset outgoing connection retry to 1

Reduce the retry time from host to 1 from 3 to prevent collision scenarios
when remote also tries to connect which could lead to potential authentication
issues in SoC.

Change-Id: I3b5db4a4c4aa985cb9c0537499ce608f9e5d5522

8 years agoHID: Remove bond for device in case Virtual unplug is ongoing
Hemant Gupta [Fri, 4 Mar 2016 17:33:38 +0000 (17:33 +0000)]
HID: Remove bond for device in case Virtual unplug is ongoing
am: dc5272a39d

* commit 'dc5272a39d7915d0c921de2fb0727853fadda40a':
  HID: Remove bond for device in case Virtual unplug is ongoing

8 years agoHID: Remove bond for device in case Virtual unplug is ongoing
Hemant Gupta [Fri, 11 Dec 2015 10:17:45 +0000 (15:47 +0530)]
HID: Remove bond for device in case Virtual unplug is ongoing

Remove bond for remote device in case virtual unplug was initiated from
local device, and ACL got disconnected while processing the VUP request.
this can happen when aaplication is sending disconnect and remove bond
in quick succession. Without this fix it was observed that device was
getting disconnected, but was not getting unpaired even when user
tried to unpair from UI.

Change-Id: Ife1fc99ed59b13daf0bcf0dce3e0a59c7d9e87d7

8 years agoShorten local name in EIR data according to UTF encoding rules
Matadeen Mishra [Wed, 3 Feb 2016 15:20:31 +0000 (20:50 +0530)]
Shorten local name in EIR data according to UTF encoding rules

Use case:
Test short name after setting the name with maximum length

Steps to reproduce:
1) Phone A: Rename bluetooth into a 60 character Chinese name
2) Phone B: Discover phone A.
3) The short name of phone A will display in phone B and the short
name cantains unrecognizable chars.

Root cause:
As Chinese characters are encoded in different
length in UTF, if shorten BT name in fixed length,
there will be unrecognized characters

Fix:
Shorten BT name according to UTF encoding rule and decrease
the length.

Change-Id: I5f1e49c1b5d87d5e220538c90e297c50ccc790ff

8 years agoUse correct transport type for GATT client and server connections am: d27af38849
Subramanian Srinivasan [Fri, 4 Mar 2016 07:49:17 +0000 (07:49 +0000)]
Use correct transport type for GATT client and server connections am: d27af38849
am: 001439c495

* commit '001439c495cc49960e83e5d039586f461762bb8d':
  Use correct transport type for GATT client and server connections

8 years agoUse correct transport type for GATT client and server connections
Subramanian Srinivasan [Fri, 4 Mar 2016 07:47:20 +0000 (07:47 +0000)]
Use correct transport type for GATT client and server connections
am: d27af38849

* commit 'd27af388490dbe194035ad779096f98aef92d1a5':
  Use correct transport type for GATT client and server connections

8 years agoUse correct transport type for GATT client and server connections
Subramanian Srinivasan [Thu, 29 Oct 2015 00:05:22 +0000 (17:05 -0700)]
Use correct transport type for GATT client and server connections

Use correct transport type for GATT client and server connect
API calls. This change uses the transport used while calling
the connect frameworks API instead of relying on the NVRAM to
find the transport on which the connect call needs to be sent
to the BT stack.

Change-Id: Idf5817b8980e848c6ebebf1e9a79dbce61d8cfc8

8 years agoRemove MCB from mapping table when entry is released
Pavlin Radoslavov [Fri, 4 Mar 2016 07:28:17 +0000 (07:28 +0000)]
Remove MCB from mapping table when entry is released
am: 8cbd6d6081

* commit '8cbd6d60819ab10d3a27d6dfa14755976e1b552a':
  Remove MCB from mapping table when entry is released

8 years agoUpdate OCF values per 0.96 spec am: ca58b09a91
Satya Calloji [Fri, 4 Mar 2016 07:20:27 +0000 (07:20 +0000)]
Update OCF values per 0.96 spec am: ca58b09a91
am: e6e2ad6c41

* commit 'e6e2ad6c41b60c539b7b89a584ef06f768c8fba5':
  Update OCF values per 0.96 spec

8 years agoUpdate OCF values per 0.96 spec
Satya Calloji [Fri, 4 Mar 2016 07:18:33 +0000 (07:18 +0000)]
Update OCF values per 0.96 spec
am: ca58b09a91

* commit 'ca58b09a9129e334f116b7bbdfc0a3834afa299e':
  Update OCF values per 0.96 spec

8 years agoOCF for LE Extended Set Scan Parameters Cmd is not correct am: b67ada19a7
Eri Kasamatsu [Fri, 4 Mar 2016 07:16:35 +0000 (07:16 +0000)]
OCF for LE Extended Set Scan Parameters Cmd is not correct am: b67ada19a7
am: 24d8dab56c

* commit '24d8dab56c0916f0abe2d0d8035fa4add8df4e15':
  OCF for LE Extended Set Scan Parameters Cmd is not correct

8 years agoUpdate OCF values per 0.96 spec
Satya Calloji [Wed, 2 Mar 2016 19:25:49 +0000 (11:25 -0800)]
Update OCF values per 0.96 spec

HCI command values are updated as per Google HCI
BLE requirements v0.96

Bug: 27069512
Change-Id: I30e0046c5d3198f0986e03baf697bad2be99c06e

8 years agoOCF for LE Extended Set Scan Parameters Cmd is not correct
Eri Kasamatsu [Fri, 4 Mar 2016 07:14:43 +0000 (07:14 +0000)]
OCF for LE Extended Set Scan Parameters Cmd is not correct
am: b67ada19a7

* commit 'b67ada19a7235552c802d3dccca011245379b6d5':
  OCF for LE Extended Set Scan Parameters Cmd is not correct

8 years agoOCF for LE Extended Set Scan Parameters Cmd is not correct
Eri Kasamatsu [Tue, 9 Feb 2016 14:11:51 +0000 (15:11 +0100)]
OCF for LE Extended Set Scan Parameters Cmd is not correct

OCF for LE Extended Set Scan Paramaters Cmd is defined as 0x15A
in documentation but it is defined as 0x160 in stack.
This results in command failing due to unknown hci command error.

Change-Id: Ia779164b7c03daa8053fb65e4fc8281235904031

8 years agoHandle unknown codecs sent by HF am: dccd759e2e
Satish Kodishala [Fri, 4 Mar 2016 07:05:00 +0000 (07:05 +0000)]
Handle unknown codecs sent by HF am: dccd759e2e
am: cea55c8886

* commit 'cea55c888662fa0a7a29878dda31e0f905bd892a':
  Handle unknown codecs sent by HF

8 years agoHandle unknown codecs sent by HF
Satish Kodishala [Fri, 4 Mar 2016 07:03:03 +0000 (07:03 +0000)]
Handle unknown codecs sent by HF
am: dccd759e2e

* commit 'dccd759e2ebb0c348d739e32599e50b419bcf7bc':
  Handle unknown codecs sent by HF

8 years agoHandle unknown codecs sent by HF
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.

Change-Id: I9ac7675c9d863e7362f85e3b7b8d9a42462bd5e9

8 years agoAvoid double-free on SDP search failure am: 07f612cbc0
Srinu Jella [Fri, 4 Mar 2016 06:59:06 +0000 (06:59 +0000)]
Avoid double-free on SDP search failure am: 07f612cbc0
am: c1d8b25a89

* commit 'c1d8b25a89d9e57e2104b07fcea7991ec7c1f4b7':
  Avoid double-free on SDP search failure

8 years agoAvoid double-free on SDP search failure
Srinu Jella [Fri, 4 Mar 2016 06:57:13 +0000 (06:57 +0000)]
Avoid double-free on SDP search failure
am: 07f612cbc0

* commit '07f612cbc08364a622e6e02cdbb039b82586d82c':
  Avoid double-free on SDP search failure

8 years agoAvoid double-free on SDP search failure
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.

Change-Id: Ic7776e842c52418c2b0fb6d6479233d01c709dc2

8 years agoRemove bluedroidtest am: cd0199a20b
Andre Eisenbach [Fri, 4 Mar 2016 06:43:41 +0000 (06:43 +0000)]
Remove bluedroidtest am: cd0199a20b
am: 6f8588d6ad

* commit '6f8588d6ad8fdad56561cd19872684164736348b':
  Remove bluedroidtest

8 years agoRemove bluedroidtest
Andre Eisenbach [Fri, 4 Mar 2016 06:41:45 +0000 (06:41 +0000)]
Remove bluedroidtest
am: cd0199a20b

* commit 'cd0199a20b48fcb191f3178a28a6a503e28b7685':
  Remove bluedroidtest

8 years agoDelete unused function declarations from sdp_api.h. am: 5c35aa44a2
Sharvil Nanavati [Fri, 4 Mar 2016 06:39:42 +0000 (06:39 +0000)]
Delete unused function declarations from sdp_api.h. am: 5c35aa44a2
am: 1d17241105

* commit '1d17241105ee43d953cdd43b97ce4b476421a36f':
  Delete unused function declarations from sdp_api.h.

8 years agoRemove bluedroidtest
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

8 years agoDelete unused function declarations from sdp_api.h.
Sharvil Nanavati [Fri, 4 Mar 2016 06:37:49 +0000 (06:37 +0000)]
Delete unused function declarations from sdp_api.h.
am: 5c35aa44a2

* commit '5c35aa44a2d92185d9eee51781f2522773607986':
  Delete unused function declarations from sdp_api.h.

8 years agoDelete unused function declarations from sdp_api.h.
Sharvil Nanavati [Thu, 11 Jun 2015 06:20:24 +0000 (23:20 -0700)]
Delete unused function declarations from sdp_api.h.

Change-Id: I8db02d557fdfc138f2ec8de2b2d45049175fd999

8 years agoRemove MCB from mapping table when entry is released
Pavlin Radoslavov [Thu, 3 Mar 2016 21:16:45 +0000 (13:16 -0800)]
Remove MCB from mapping table when entry is released

Explicitly remove MCB entry from the LCB mapping table when
the entry is released.

Bug: 27334916
Change-Id: I14e3f1f5eeffa33e733c4a116d0a70cd7c06753f

8 years agoAvoid SMP process if another pairing is in progress am: 0bb891dc54
Nitin Arora [Fri, 4 Mar 2016 00:55:20 +0000 (00:55 +0000)]
Avoid SMP process if another pairing is in progress am: 0bb891dc54
am: e058c1eede

* commit 'e058c1eedebd2b42a774f1f9a39063b670905131':
  Avoid SMP process if another pairing is in progress

8 years agoRemove MCB from mapping table when entry is released am: 5170c746e5
Pavlin Radoslavov [Fri, 4 Mar 2016 00:55:15 +0000 (00:55 +0000)]
Remove MCB from mapping table when entry is released am: 5170c746e5
am: 2de277c6fa

* commit '2de277c6fadef8048f14bc655092920de503ed56':
  Remove MCB from mapping table when entry is released

8 years agoRemove dead methods and callbacks am: ee6b6d0965
Jakub Pawlowski [Fri, 4 Mar 2016 00:55:07 +0000 (00:55 +0000)]
Remove dead methods and callbacks am: ee6b6d0965
am: 40d3f390c7

* commit '40d3f390c75353d5c08e19e658be87e90803ff27':
  Remove dead methods and callbacks

8 years agoAvoid SMP process if another pairing is in progress
Nitin Arora [Fri, 4 Mar 2016 00:53:25 +0000 (00:53 +0000)]
Avoid SMP process if another pairing is in progress
am: 0bb891dc54

* commit '0bb891dc54b64e6cc4f774f565c614dfaff05b3a':
  Avoid SMP process if another pairing is in progress

8 years agoRemove MCB from mapping table when entry is released
Pavlin Radoslavov [Fri, 4 Mar 2016 00:53:20 +0000 (00:53 +0000)]
Remove MCB from mapping table when entry is released
am: 5170c746e5

* commit '5170c746e5b1ac033de0555760be96d68b139695':
  Remove MCB from mapping table when entry is released

8 years agoRemove dead methods and callbacks
Jakub Pawlowski [Fri, 4 Mar 2016 00:53:15 +0000 (00:53 +0000)]
Remove dead methods and callbacks
am: ee6b6d0965

* commit 'ee6b6d096541cc0f8333ad93cdbbf45e221396c4':
  Remove dead methods and callbacks

8 years agoAvoid SMP process if another pairing is in progress
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

8 years agoRemove MCB from mapping table when entry is released
Pavlin Radoslavov [Thu, 3 Mar 2016 21:16:45 +0000 (13:16 -0800)]
Remove MCB from mapping table when entry is released

Explicitly remove MCB entry from the LCB mapping table when
the entry is released.

Bug: 27334916
Change-Id: I14e3f1f5eeffa33e733c4a116d0a70cd7c06753f

8 years agoRemove dead methods and callbacks
Jakub Pawlowski [Mon, 29 Feb 2016 21:23:04 +0000 (13:23 -0800)]
Remove dead methods and callbacks

Bug: 27455533
Change-Id: Ie5661577320810468dd635022027a1e1a2f70a3e

8 years agoSimplify UUID handling in GATT cache am: be18a60781
Jakub Pawlowski [Thu, 3 Mar 2016 22:36:13 +0000 (22:36 +0000)]
Simplify UUID handling in GATT cache am: be18a60781
am: edc4236141

* commit 'edc4236141d04ec27f6c8285cc4ec8ae502ae8d9':
  Simplify UUID handling in GATT cache

8 years agoSimplify UUID handling in GATT cache
Jakub Pawlowski [Thu, 3 Mar 2016 22:32:34 +0000 (22:32 +0000)]
Simplify UUID handling in GATT cache
am: be18a60781

* commit 'be18a6078194547400fa9594a62d9d1bea5d7bea':
  Simplify UUID handling in GATT cache

8 years agoIncrease the number of security slots for other new profiles am: 9fed745a38
Srinu Jella [Thu, 3 Mar 2016 22:01:40 +0000 (22:01 +0000)]
Increase the number of security slots for other new profiles am: 9fed745a38
am: 752e83e8f9

* commit '752e83e8f9e445e7a05b28165afb683a3f366c6d':
  Increase the number of security slots for other new profiles

8 years agoCorrect the max SDU length used in BTIF layer am: f19ca75c17
Srinu Jella [Thu, 3 Mar 2016 22:01:14 +0000 (22:01 +0000)]
Correct the max SDU length used in BTIF layer am: f19ca75c17
am: 8e13d7e8e3

* commit '8e13d7e8e39522dcccd2cf21d87071ff594c0148':
  Correct the max SDU length used in BTIF layer

8 years agoSimplify UUID handling in GATT cache
Jakub Pawlowski [Thu, 3 Mar 2016 04:01:30 +0000 (20:01 -0800)]
Simplify UUID handling in GATT cache

Bug: 27455533
Change-Id: I653b563d3b3c233ffe31b0a35d396a66db363459

8 years agoIncrease the number of security slots for other new profiles
Srinu Jella [Thu, 3 Mar 2016 21:22:14 +0000 (21:22 +0000)]
Increase the number of security slots for other new profiles
am: 9fed745a38

* commit '9fed745a38b1ff2c5d4d67ca06760da5b07b7f11':
  Increase the number of security slots for other new profiles

8 years agoCorrect the max SDU length used in BTIF layer
Srinu Jella [Thu, 3 Mar 2016 21:22:09 +0000 (21:22 +0000)]
Correct the max SDU length used in BTIF layer
am: f19ca75c17

* commit 'f19ca75c17b8ee0c19261d946c5353c820238bc6':
  Correct the max SDU length used in BTIF layer

8 years agoMerge "Reconstruct new packet to accomodate extra header length" am: ab6a1335bf
Srinu Jella [Thu, 3 Mar 2016 21:20:56 +0000 (21:20 +0000)]
Merge "Reconstruct new packet to accomodate extra header length" am: ab6a1335bf
am: d3f0bd6c47

* commit 'd3f0bd6c471c95e6b30f6192662c2eb792d2fbc4':
  Reconstruct new packet to accomodate extra header length

8 years agoEnable debug logs for bluetooth process threads, modules am: 0fa3554630
Srinu Jella [Thu, 3 Mar 2016 21:20:51 +0000 (21:20 +0000)]
Enable debug logs for bluetooth process threads, modules am: 0fa3554630
am: 7db974f05d

* commit '7db974f05d1aa18ee5b99bfea52166b1db48aad5':
  Enable debug logs for bluetooth process threads, modules

8 years agoCorrected the stream for error checking am: a73cf49473
Srinu Jella [Thu, 3 Mar 2016 21:20:46 +0000 (21:20 +0000)]
Corrected the stream for error checking am: a73cf49473
am: 18e88960a2

* commit '18e88960a2e9261f847a6326e1d3200a4546782f':
  Corrected the stream for error checking

8 years agoRevert "DO NOT MERGE Proper construction of AVDTP general reject message" am: ebc9510...
JivakDhadse [Thu, 3 Mar 2016 21:20:41 +0000 (21:20 +0000)]
Revert "DO NOT MERGE Proper construction of AVDTP general reject message" am: ebc951060a  -s ours
am: 745e441370  -s ours

* commit '745e44137035deb807bd8650994d2e3df3533b45':
  Revert "DO NOT MERGE Proper construction of AVDTP general reject message"

8 years agoPeer support of Absolute Volume to be updated only if device supports A2DP
Ayan Ghosh [Thu, 3 Mar 2016 21:20:35 +0000 (21:20 +0000)]
Peer support of Absolute Volume to be updated only if device supports A2DP
am: be83407121

* commit 'be834071217835b8d5a685b59b148ea953da9b32':
  Peer support of Absolute Volume to be updated only if device supports A2DP

8 years agoLimit Max Bitpool value to SPEC recommended one
Ayan Ghosh [Thu, 3 Mar 2016 21:20:30 +0000 (21:20 +0000)]
Limit Max Bitpool value to SPEC recommended one
am: fa1e0a79b9

* commit 'fa1e0a79b9b2ad938e95ab80b353915510a5c32c':
  Limit Max Bitpool value to SPEC recommended one

8 years agoAllow Carkit to trigger play immediately after call
Ayan Ghosh [Thu, 3 Mar 2016 21:20:24 +0000 (21:20 +0000)]
Allow Carkit to trigger play immediately after call
am: 64b208a654

* commit '64b208a654b84dbfd1e8e3ef0005f902503a2d8e':
  Allow Carkit to trigger play immediately after call

8 years agoIncrease the number of security slots for other new profiles
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.

Change-Id: Ic7c0268aea654cba2dee0c323ca0342e71ebc577

8 years agoCorrect the max SDU length used in BTIF layer
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.

Change-Id: Ie037c85e798bebf6a71c56488aae37455725028c

8 years agoMerge "Reconstruct new packet to accomodate extra header length"
Srinu Jella [Thu, 3 Mar 2016 19:49:45 +0000 (19:49 +0000)]
Merge "Reconstruct new packet to accomodate extra header length"
am: ab6a1335bf

* commit 'ab6a1335bf15d722b6fb420641b0b0ccc0f80d13':
  Reconstruct new packet to accomodate extra header length

8 years agoMerge "Reconstruct new packet to accomodate extra header length"
Ajay Panicker [Thu, 3 Mar 2016 19:46:35 +0000 (19:46 +0000)]
Merge "Reconstruct new packet to accomodate extra header length"

8 years agoEnable debug logs for bluetooth process threads, modules
Srinu Jella [Thu, 3 Mar 2016 19:46:08 +0000 (19:46 +0000)]
Enable debug logs for bluetooth process threads, modules
am: 0fa3554630

* commit '0fa35546304901c62bafcb54420d23ace56a69c1':
  Enable debug logs for bluetooth process threads, modules

8 years agoReconstruct new packet to accomodate extra header length
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.

Change-Id: I5d12b76229d11480f7f37bbcd3561de97c80a0c1

8 years agoCorrected the stream for error checking
Srinu Jella [Thu, 3 Mar 2016 19:44:37 +0000 (19:44 +0000)]
Corrected the stream for error checking
am: a73cf49473

* commit 'a73cf4947355e38d2f44f2f43e87e32a6ad83fd5':
  Corrected the stream for error checking

8 years agoRevert "DO NOT MERGE Proper construction of AVDTP general reject message"
JivakDhadse [Thu, 3 Mar 2016 19:44:33 +0000 (19:44 +0000)]
Revert "DO NOT MERGE Proper construction of AVDTP general reject message"
am: ebc951060a  -s ours

* commit 'ebc951060a76029c3dbc5784a766b09022fa9a19':
  Revert "DO NOT MERGE Proper construction of AVDTP general reject message"

8 years agoEnable debug logs for bluetooth process threads, modules
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.

Change-Id: I17f4f583d2c431725a8c44c586b29980b4bdab3f

8 years agoCorrected the stream for error checking
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

Change-Id: I9ceb75ee05bad5d2ef1af819b3930216cc750507

8 years agoRevert "DO NOT MERGE Proper construction of AVDTP general reject message"
JivakDhadse [Fri, 7 Aug 2015 13:28:38 +0000 (18:58 +0530)]
Revert "DO NOT MERGE Proper construction of AVDTP general reject message"

This reverts commit 2ed10d442266eade44be121cd24fd473c85007d0.

Original change needs to be reverted to align with Errata
ESR04 where "Section 8.17, General Reject Page 71" of adopted
AvDTP Spec is changed to have "Invalid Signal Identifier"
in first 6 bits of Octet 1.
This change helps passing PTS case TP/SIG/SMG/ESR04/BI-28-C

Change-Id: Idfc960ce00662e8aacc26f3b3fdca9deca8a2aff

8 years agoPeer support of Absolute Volume to be updated only if device supports A2DP
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.

Change-Id: I75509d0b0fd1b06fa08390940a327dd2887d7562

8 years agoLimit Max Bitpool value to SPEC recommended one
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.

Change-Id: Ie7ca504c23f6bae8fda997cdeb3e0ff0733defb0

8 years agoAllow Carkit to trigger play immediately after call
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.

Change-Id: Ibb04223de746f528b356e78bd65130d3fd526a44