OSDN Git Service

android-x86/system-bt.git
6 years agoSaving Bluetooth name to Max 248 character only.
Srinu Jella [Tue, 28 Nov 2017 04:09:57 +0000 (04:09 +0000)]
Saving Bluetooth name to Max 248 character only.
am: f04ea90af3

Change-Id: If0e74006f83cdd62ec8b72c847825758cb8c1701

6 years agoCorrectly handling bdaddr in function btif_storage_load_bonded_hid_info.
Yan Laijun [Tue, 28 Nov 2017 04:09:34 +0000 (04:09 +0000)]
Correctly handling bdaddr in function btif_storage_load_bonded_hid_info.
am: f92bdc7caf

Change-Id: Id66ad93f617dfeb550b4f616639ac5bbb767f61c

6 years agoSaving Bluetooth name to Max 248 character only.
Srinu Jella [Fri, 30 Dec 2016 10:20:48 +0000 (15:50 +0530)]
Saving Bluetooth name to Max 248 character only.

Steps:
1. Set the BT name more than 248 character using SDK API set_name.
2. Check the BT Name on bt_config.
3. Name should be also visible Setting Apps on Bluetooth.

Failure: BluetoothAdapterProperties and stack are not in sync.
Root Cause: No check for the Bluetooth name length.
We can handle in framework layer but now handling in Stack.

Fix: Check the length of Bluetooth Name before writing to the file.

Test: Application and Stack BD Name are in sync
Bug: 35126970

Change-Id: I856a66e863cec68bee38762903a0b762ab0626d2

6 years agoCorrectly handling bdaddr in function btif_storage_load_bonded_hid_info.
Yan Laijun [Wed, 7 Dec 2016 01:49:08 +0000 (09:49 +0800)]
Correctly handling bdaddr in function btif_storage_load_bonded_hid_info.

Correct the bdaddr param passed into function btif_storage_remove_hid_info.

Test: mm -j8
Change-Id: I9b7994982577d68d076a6429f97d66b3ea4c8ce4
Signed-off-by: Yan Laijun <yan-laijun@xiaomi.com>
6 years agoG.722 Codec for Hearing Aid
Jakub Pawlowski [Mon, 27 Nov 2017 21:38:23 +0000 (21:38 +0000)]
G.722 Codec for Hearing Aid
am: 2fd870e7dd

Change-Id: Ib9e4f186032e927173147f18c56ce167bea25e87

6 years agoG.722 Codec for Hearing Aid
Jakub Pawlowski [Fri, 24 Nov 2017 23:19:54 +0000 (15:19 -0800)]
G.722 Codec for Hearing Aid

Test: compilation
Bug: 69623109
Change-Id: I4658167f50321b717295f48c8b0b66d50ffabefd

6 years agoBLE: Fix crash while starting advertising
Hemant Gupta [Thu, 23 Nov 2017 11:44:59 +0000 (11:44 +0000)]
BLE: Fix crash while starting advertising
am: 8ddafa16c0

Change-Id: Ibdfbe1a1b89f46beec886024d305691db8a3dd5e

6 years agoBLE: Fix crash while starting advertising
Hemant Gupta [Wed, 22 Nov 2017 09:12:07 +0000 (14:42 +0530)]
BLE: Fix crash while starting advertising

Usecase:
1) BT on
2) Start LE Advertising from APP
3) BT Off
4) Repeat steps 1-3 multiple times

Expected Result:
No crash in BT, and BLE advertising can be started

Observed Result:
Crash in com.android.bluetooth with below signature

pid: 8313, tid: 8313, name: droid.bluetooth  >>> com.android.bluetooth <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: '[FATAL:btm_ble_multi_adv.cc(992)] Check failed: instance.
'
    x0   0000000000000000  x1   0000000000002079  x2   0000000000000006  x3   0000000000000008
    x4   623a4c415441465b  x5   623a4c415441465b  x6   623a4c415441465b  x7   6d5f656c625f6d74
    x8   0000000000000083  x9   0823626ef495785d  x10  00000073b7b39a48  x11  0823626ef495785d
    x12  0823626ef495785d  x13  0000000000000020  x14  ffffffffffffffdf  x15  0000000000002079
    x16  00000073b5ce62e8  x17  00000073b5c79970  x18  0000000000004000  x19  0000000000002079
    x20  0000000000002079  x21  0000000000000000  x22  0000007398bde000  x23  0000007fd0809e88
    x24  00000073a3b4c860  x25  00000073a635b578  x26  0000007398e980cc  x27  0000007398e97fd3
    x28  0000007398cb5608  x29  0000007fd0809e30  x30  00000073b5c20594
    sp   0000007fd0809df0  pc   00000073b5c79978  pstate 0000000060000000
    v0   2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e2e  v1   0000007fd0809be00000676f6c62696c
    v2   00000002b71fc7400000000000000000  v3   80200800000000008020000000000000
    v4   80200800000000008020080280200802  v5   00000000000000000000000000000000
    v6   00000000000000000000000000000000  v7   80200802802008028020080280200802
    v8   00000000000000000000000000000000  v9   00000000000000000000000000000000
    v10  00000000000000000000000000000000  v11  00000000000000000000000000000000
    v12  00000000000000000000000000000000  v13  00000000000000000000000000000000
    v14  00000000000000000000000000000000  v15  00000000000000000000000000000000
    v16  40100401401004014010040140100401  v17  a0080000a00aa00aa800aaaaa800a000
    v18  80200800000000008020080280200802  v19  00000000000000000000000000000000
    v20  00000000000000000000000000000000  v21  00000000000000000000000000000000
    v22  00000000000000000000000000000000  v23  00000000000000000000000000000000
    v24  00000000000000000000000000000000  v25  00000000000000000000000000000000
    v26  00000000000000000000000000000000  v27  00000000000000000000000000000000
    v28  00000000000000000000000000000000  v29  00000000000000000000000000000000
    v30  00000000000000000000000000000000  v31  00000000000000000000000000000000
    fpsr 00000013  fpcr 00000000

backtrace:
    #00 pc 0000000000077978  /system/lib64/libc.so (tgkill+8)
    #01 pc 000000000001e590  /system/lib64/libc.so (abort+88)
    #02 pc 00000000000836dc  /system/lib64/libchrome.so (_ZN4base5debug13BreakDebuggerEv+20)
    #03 pc 000000000009bed0  /system/lib64/libchrome.so (_ZN7logging10LogMessageD2Ev+840)
    #04 pc 000000000015ed7c  /system/lib64/hw/bluetooth.default.so (_ZN21BleAdvertisingManager3GetEv+72)
    #05 pc 00000000000a7754  /system/lib64/hw/bluetooth.default.so (_ZN12_GLOBAL__N_126BleAdvertiserInterf
aceImpl19StartAdvertisingSetEN4base8CallbackIFvhahELNS1_8internal8CopyModeE1EEE19AdvertiseParametersNSt3
__16vectorIhNS8_9allocatorIhEEEESC_29PeriodicAdvertisingParametersSC_thNS2_IFvhhELS5_1EEE+332)
    #06 pc 000000000002a354  /system/lib64/libbluetooth_jni.so (_ZN7androidL25startAdvertisingSetNativeEP7_
JNIEnvP8_jobjectS3_P11_jbyteArrayS5_S3_S5_iii+1276)
    #07 pc 00000000005b2834  /data/dalvik-cache/arm64/system@app@Bluetooth@Bluetooth.apk@classes.dex (offset 0x2cd000)

Root Cause:
API calls in btif_ble_advertiser.cc donot check for initialization status of BleAdvertisingManager leading
to crash in scenarios when the BleAdvertisingManager is cleaned up during BT off and call reaches
btif_ble_advertiser.cc to do one ofadvertising related tasks.

Fix:
Add initialization check in code before call to API's for BleAdvertisingManager

Test: No crash observed after overnight testing with same usecase

Bug: 69692308
Change-Id: I5484734a4cf52858676981808c898ffec11e23f4

6 years agoMerge "Advertising device name truncated"
Dayananda V [Tue, 21 Nov 2017 18:38:25 +0000 (18:38 +0000)]
Merge "Advertising device name truncated"
am: 9e75fa4400

Change-Id: I4b3e9f53ec1a2c45598434ee3a5baa75129ce07e

6 years agoMerge "Advertising device name truncated"
Treehugger Robot [Tue, 21 Nov 2017 18:34:22 +0000 (18:34 +0000)]
Merge "Advertising device name truncated"

6 years agoMerge "test_vendor: Make BtAddress comparisons const"
Myles Watson [Tue, 21 Nov 2017 02:48:17 +0000 (02:48 +0000)]
Merge "test_vendor: Make BtAddress comparisons const"
am: ecdc8c16a8

Change-Id: I2fd15bc73226414fc982191209526dd410805c67

6 years agoMerge "test_vendor: Make BtAddress comparisons const"
Treehugger Robot [Tue, 21 Nov 2017 02:39:34 +0000 (02:39 +0000)]
Merge "test_vendor: Make BtAddress comparisons const"

6 years agoUse -Werror in system/bt/binder
Chih-Hung Hsieh [Mon, 20 Nov 2017 22:36:04 +0000 (22:36 +0000)]
Use -Werror in system/bt/binder
am: 759b57daea

Change-Id: I3faf809931c8261d0074b4f7abf52169e219283d

6 years agoUse -Werror in system/bt/binder
Chih-Hung Hsieh [Mon, 20 Nov 2017 18:25:49 +0000 (10:25 -0800)]
Use -Werror in system/bt/binder

Bug: 66996870
Test: build with WITH_TIDY=1
Change-Id: I68880c0c6d6e886b9d12482e97d35deea61cc5ab

6 years agoMerge "Removed unused or unnecessary defines"
Pavlin Radoslavov [Mon, 20 Nov 2017 17:17:13 +0000 (17:17 +0000)]
Merge "Removed unused or unnecessary defines"
am: c047e451bb

Change-Id: I5da696c40966e4bbca0c81d472f882547f6302aa

6 years agoMerge "Removed unused or unnecessary defines"
Treehugger Robot [Mon, 20 Nov 2017 17:11:42 +0000 (17:11 +0000)]
Merge "Removed unused or unnecessary defines"

6 years agoFix broken PDK build, by disabling libbluetooth-binder during PDK build.
Daniel Cardenas [Sat, 18 Nov 2017 04:47:26 +0000 (04:47 +0000)]
Fix broken PDK build, by disabling libbluetooth-binder during PDK build.
am: 02c49bc93f

Change-Id: Iaabea7944dc56ff4faebb38a9e1ae9ea04854ead

6 years agoFix broken PDK build, by disabling libbluetooth-binder during PDK build.
Daniel Cardenas [Sat, 18 Nov 2017 02:18:28 +0000 (18:18 -0800)]
Fix broken PDK build, by disabling libbluetooth-binder during PDK build.

Fixes: 69479982
Test: Build

Change-Id: Ie05c67e2b22c3f549239be1d7d6e9c3c22543498

6 years agoRemoved unused or unnecessary defines
Pavlin Radoslavov [Sat, 18 Nov 2017 00:23:16 +0000 (16:23 -0800)]
Removed unused or unnecessary defines

Removed the following defines because they are unused or unnecessary:
 - AVDT_REPORTING
 - AVRC_METADATA_INCLUDED
 - BTA_INCLUDED
 - SBC_FOR_EMBEDDED_LINUX
 - BTA_AVRCP_FF_RW_SUPPORT
 - GATT_DB_BUF_SIZE
 - BTM_DEFAULT_SCO_MODE
 - BTM_BLE_ADV_TX_POWER
 - BTM_BLE_ADV_TX_POWER_*
 - ATT_INCLUDED
 - ATT_DEBUG
 - GAP_TRANSPORT_SUPPORTED
 - GATTP_TRANSPORT_SUPPORTED
 - PORT_CREDIT_RX_MAX
 - PORT_CREDIT_RX_LOW
 - AVDT_INCLUDED
 - AVDT_REPORTING
 - HID_DEV_SUBCLASS
 - A2D_INCLUDED

Also:
 - Changed tBTA_AV_SCB field p_cap from dynamically allocated to
   inlined storage, and renamed it to peer_cap.
 - Removed unused typedef tBTM_BLE_ADV_TX_POWER

Test: Manual: streaming to Headset.
Change-Id: I0db18cc7ae3b9e692c71b430436f3170e8e4d65e

6 years agoRemove unnecessery re-defininitions of BTA_AV constants
Pavlin Radoslavov [Fri, 17 Nov 2017 19:07:54 +0000 (19:07 +0000)]
Remove unnecessery re-defininitions of BTA_AV constants
am: e7510d9bf4

Change-Id: I285dbb79740cd434e2a899539c0ff5752105d159

6 years agoRemove unnecessery re-defininitions of BTA_AV constants
Pavlin Radoslavov [Fri, 17 Nov 2017 10:31:30 +0000 (02:31 -0800)]
Remove unnecessery re-defininitions of BTA_AV constants

* Remove unused BTA_AV_* re-defenitions
* Replace remaining BTA_AV_* constants with the corresponding
  AVRC_* sonstant

Test: Code compilation
Change-Id: I4c7a04738bf41e661da15f3a86ea36974c391adf

6 years agotest_vendor: Make BtAddress comparisons const
Myles Watson [Wed, 15 Nov 2017 20:45:09 +0000 (12:45 -0800)]
test_vendor: Make BtAddress comparisons const

Test: build
Change-Id: Ifbafdb8792e4101974d01bb86d5c6188a88ef9f3

6 years agoMerge "Protect all SSR code with macro BTM_SSR_INCLUDED"
liuchao [Wed, 15 Nov 2017 18:18:49 +0000 (18:18 +0000)]
Merge "Protect all SSR code with macro BTM_SSR_INCLUDED"
am: 58a79cc41a

Change-Id: I3fdb666a7f1d6e44126a105fa321c4d40de8089b

6 years agoMerge "Change the connecting state to FALSE for BLE devices while releasing LCB"
Albin Joy [Wed, 15 Nov 2017 18:18:25 +0000 (18:18 +0000)]
Merge "Change the connecting state to FALSE for BLE devices while releasing LCB"
am: 4f1080146e

Change-Id: I06203a3c1611ac2e16c44a2d90fbbba7bd704f04

6 years agoMerge "Protect all SSR code with macro BTM_SSR_INCLUDED"
Treehugger Robot [Wed, 15 Nov 2017 14:18:04 +0000 (14:18 +0000)]
Merge "Protect all SSR code with macro BTM_SSR_INCLUDED"

6 years agoMerge "Change the connecting state to FALSE for BLE devices while releasing LCB"
Treehugger Robot [Wed, 15 Nov 2017 14:14:40 +0000 (14:14 +0000)]
Merge "Change the connecting state to FALSE for BLE devices while releasing LCB"

6 years agoMerge "Update the codec-related JNI calls to contain the remote Device address"
Pavlin Radoslavov [Wed, 15 Nov 2017 03:19:33 +0000 (03:19 +0000)]
Merge "Update the codec-related JNI calls to contain the remote Device address"
am: d755fd7c3e

Change-Id: Ib51cd514015384128533545b3e69ec4ddefdd214

6 years agoMerge "Update the codec-related JNI calls to contain the remote Device address"
Treehugger Robot [Wed, 15 Nov 2017 03:14:28 +0000 (03:14 +0000)]
Merge "Update the codec-related JNI calls to contain the remote Device address"

6 years agoBLE: Continue after list_remove in btm_consolidate_dev
Hemant Gupta [Wed, 15 Nov 2017 01:49:13 +0000 (01:49 +0000)]
BLE: Continue after list_remove in btm_consolidate_dev
am: f64e88ffb0

Change-Id: Iafefef1219378b6ee5de78464fd2e2d3a62655d3

6 years agoAVRCP: Use avrc_send_continue_frag for continuations
Myles Watson [Wed, 15 Nov 2017 01:36:03 +0000 (01:36 +0000)]
AVRCP: Use avrc_send_continue_frag for continuations
am: f5d1aea3ea

Change-Id: I484d7ffaae3822376c740390f5c717845e7c5ced

6 years agoUpdate the codec-related JNI calls to contain the remote Device address
Pavlin Radoslavov [Fri, 10 Nov 2017 03:30:58 +0000 (19:30 -0800)]
Update the codec-related JNI calls to contain the remote Device address

Also, normalize the order of the A2DP-related JNI callbacks to
list the remote device address first.

Bug: 68993365
Test: Manual - A2DP streaming to headset
Change-Id: I17fc9b0c23d6a1c26c99259bf391ba0a94988dd6

6 years agoChange the connecting state to FALSE for BLE devices while releasing LCB
Albin Joy [Mon, 7 Aug 2017 11:14:30 +0000 (19:14 +0800)]
Change the connecting state to FALSE for BLE devices while releasing LCB

To reconnect a paired BLE device, the connecting stage should change to
FALSE when LCB is releasing. BLE device should be in connectable state to
connect the device next time.

BUG: 64432592
Test: reconnecting a paired BLE mouse failed randomly
Change-Id: I2c9016a267c9f5cd10d1eb05751eceb6046fbdb5

6 years agoAdvertising device name truncated
Dayananda V [Fri, 23 Jun 2017 04:58:01 +0000 (12:58 +0800)]
Advertising device name truncated

Some devices truncated name showing in
search list where name exceed 62 character.
Due to advertising data handle hardcoded
advertise data size.

Bug: 30622771
Test: sl4a FilteringTest
Change-Id: I2742ba2a40fa76fbeb975c29ed6426a0cca4a519

6 years agoBLE: Continue after list_remove in btm_consolidate_dev
Hemant Gupta [Thu, 9 Nov 2017 06:59:10 +0000 (12:29 +0530)]
BLE: Continue after list_remove in btm_consolidate_dev

Since p_dev_rec gets freed in list_remove, it should not be
accessed again in the same iteration.

Test: Code Review

Bug: 69237299
Change-Id: If7b12cb02fed8f03079c77cf9ea7e773c80cb340

6 years agoProtect all SSR code with macro BTM_SSR_INCLUDED
liuchao [Mon, 9 Oct 2017 03:15:26 +0000 (11:15 +0800)]
Protect all SSR code with macro BTM_SSR_INCLUDED

All the source code for Sniff Subrating should be protected
with macro BTM_SSR_INCLUDED to avoid compilation issues.

BUG: 64428859
Test: Compilation
Change-Id: Ic774c8fcab1b6fc08428bc4573314e8895ca1a7d

6 years agoAVRCP: Use avrc_send_continue_frag for continuations
Myles Watson [Mon, 13 Nov 2017 22:21:00 +0000 (14:21 -0800)]
AVRCP: Use avrc_send_continue_frag for continuations

Bug: 36067328
Test: Manual test with Android Auto and long songs
Change-Id: I62059e421046ed94eedc1f2d942a337fb413d6d8

6 years agoMerge commit '5f8a48ef54edca3d6b920bffda508fbaa1cad942' into HEAD
Xin Li [Mon, 13 Nov 2017 22:36:02 +0000 (14:36 -0800)]
Merge commit '5f8a48ef54edca3d6b920bffda508fbaa1cad942' into HEAD

Change-Id: I0bf0223510820ebbc28bbc42c2d6f2431fe708dc

6 years agoMove connectSocket into IBluetoothSocketManager (1/3)
Jakub Pawlowski [Sat, 11 Nov 2017 00:22:38 +0000 (00:22 +0000)]
Move connectSocket into IBluetoothSocketManager (1/3)
am: 57715db8b2

Change-Id: I5de79f9fdf74f38393b772af4ff951c6b3da7dc5

6 years agoMove connectSocket into IBluetoothSocketManager (1/3)
Jakub Pawlowski [Mon, 6 Nov 2017 18:04:53 +0000 (10:04 -0800)]
Move connectSocket into IBluetoothSocketManager (1/3)

Bug: 68359837
Test: none
Change-Id: Ia2825e43036dcd50408987118e41c794f7b38d34
Merged-In: Ia2825e43036dcd50408987118e41c794f7b38d34

6 years agoMove createSocketChannel into IBluetoothSocketManager (1/3)
Jakub Pawlowski [Fri, 10 Nov 2017 08:22:16 +0000 (08:22 +0000)]
Move createSocketChannel into IBluetoothSocketManager (1/3)
am: 8b1d805ea9

Change-Id: I47bafdf91d82479df77459982c4c439192c41a74

6 years agoMove createSocketChannel into IBluetoothSocketManager (1/3)
Jakub Pawlowski [Sat, 4 Nov 2017 02:29:12 +0000 (19:29 -0700)]
Move createSocketChannel into IBluetoothSocketManager (1/3)

Bug: 68359837
Test: none
Change-Id: Id01e194a265633f26b76fcc542223f7caacfc255

6 years agoMerge changes from topics "parcel_uuid_and_fd_native", "bluetooth_socket_manager_native"
Jakub Pawlowski [Thu, 9 Nov 2017 22:20:55 +0000 (22:20 +0000)]
Merge changes from topics "parcel_uuid_and_fd_native", "bluetooth_socket_manager_native"
am: ba0ad409f9

Change-Id: Icdae1e38689fb8f685a441083074386303a06e7a

6 years agoBT: Use static lock to avoid race while cleanup
Gurpreet Ghai [Thu, 9 Nov 2017 22:18:28 +0000 (22:18 +0000)]
BT: Use static lock to avoid race while cleanup
am: f5047f42c4

Change-Id: I2df125f8bdf3105ef17b317fab881a4777ef9421

6 years agoMerge changes from topics "parcel_uuid_and_fd_native", "bluetooth_socket_manager_native"
Jakub Pawlowski [Thu, 9 Nov 2017 22:11:38 +0000 (22:11 +0000)]
Merge changes from topics "parcel_uuid_and_fd_native", "bluetooth_socket_manager_native"

* changes:
  Make ParcelUuid and ParcelFileDescriptor accesible to native Binder (1/2)
  Add IBluetoothSocketManager (1/3)

6 years agoBT: Use static lock to avoid race while cleanup
Gurpreet Ghai [Sun, 20 Aug 2017 08:52:27 +0000 (14:22 +0530)]
BT: Use static lock to avoid race while cleanup

Problem:
The functions protected by mutex lock are called after cleanup
during shutdown. During this race condition, the structure set does not
exist and cause crash.

Steps:
Bluetooth on/off automation

Failure:
Bluetooth process crashes

RootCause:
Mutex is accessed after it is destroyed because of other thread calling
the function.

Fix:
Changed mutex lock to static type so that it exist and protect
the set structure even after cleanup.

Test: manual

Bug: 66921327

Change-Id: I8d1f5d5d607100ab73aec722a27688dae45cc323

6 years agoMake ParcelUuid and ParcelFileDescriptor accesible to native Binder (1/2)
Jakub Pawlowski [Wed, 1 Nov 2017 21:31:03 +0000 (14:31 -0700)]
Make ParcelUuid and ParcelFileDescriptor accesible to native Binder (1/2)

Bug: 68359837
Test: compile
Change-Id: I9d5fc0684b0e8aefd3f3c1abe865d0d36cb712fb

6 years agoAdd IBluetoothSocketManager (1/3)
Jakub Pawlowski [Wed, 1 Nov 2017 17:02:28 +0000 (10:02 -0700)]
Add IBluetoothSocketManager (1/3)

Add IBluetoothSocketManager native Binder implementation. Thanks to it
we'll skip jni to native calls, and need to re-serialize data manually.

Bug: 68359837
Test: none
Change-Id: If0270ddc71df724e0ee25d6fb66d89b72aa3b160

6 years agoFix BTM callbacks so callee and caller types match
Vishwath Mohan [Thu, 9 Nov 2017 18:58:22 +0000 (18:58 +0000)]
Fix BTM callbacks so callee and caller types match
am: 325abcfa4a

Change-Id: I9991e0c6b972f43271a6db681844a90e9decbd28

6 years agoFix BTM callbacks so callee and caller types match
Vishwath Mohan [Thu, 9 Nov 2017 06:45:47 +0000 (22:45 -0800)]
Fix BTM callbacks so callee and caller types match

This CL fixes inconsistencies between the actual type of a callback
function, and the type assumed at the call site. This respects the
intended function signature.

For P, we plan to enable control-flow integrity (CFI) across multiple
platform components, including BT. This mismatch will break CFI and
cause runtime errors when enabled - so this is also a preemptive
measure to get BT compatible in preparation.

Bug: 30227045
Test: Builds and runs without errors when CFI is enabled.
Change-Id: I8970e6866d8b37a9adf5e040db993d30f1b5103a

6 years agoPrevent deadlock between the Tx and Rx threads in HCI layer
Luke Zhang [Tue, 7 Nov 2017 20:19:46 +0000 (20:19 +0000)]
Prevent deadlock between the Tx and Rx threads in HCI layer
am: eb993d97b7

Change-Id: I1e0bd0b9a6d29baf4ec3367dd1a77a4f047d6a56

6 years agoPrevent deadlock between the Tx and Rx threads in HCI layer
Luke Zhang [Wed, 27 Sep 2017 18:40:22 +0000 (11:40 -0700)]
Prevent deadlock between the Tx and Rx threads in HCI layer

Problem: Deadlock between HCI layer's Tx and Rx threads.

Cause: In HCI layer, both Tx and Rx tried to acquire
commands_pending_response_mutex simultaneously.
Since there may be a handshake between Tx and Rx
in the BT Transport layer, so it caused a deadlock between
HCI layer's Tx and Rx threads.

Fix: Fixed it by decreasing the scope of this mutex in Tx thread

Test: Simulated the deadlock sitaution and ensured RX thread is returned when TX is busy in binder.

Bug: 68305277
Change-Id: I0a2434ec24918b039a6993d57e68ac7495e31cbe

6 years agoRemove executable file mode bit from source code files
Pavlin Radoslavov [Mon, 6 Nov 2017 21:20:19 +0000 (21:20 +0000)]
Remove executable file mode bit from source code files
am: e19e9128f3

Change-Id: I35e3892413d103062c0b58be899feb690497e861

6 years agoRemove executable file mode bit from source code files
Pavlin Radoslavov [Mon, 6 Nov 2017 19:23:05 +0000 (11:23 -0800)]
Remove executable file mode bit from source code files

Test: Code compilation
Change-Id: I0933efbccfb066913eda05daa414a67b4fe3efba

6 years agoAdd libbluetooth-for-tests static library
Pavlin Radoslavov [Fri, 3 Nov 2017 02:01:49 +0000 (02:01 +0000)]
Add libbluetooth-for-tests static library
am: 4aecb8934b

Change-Id: Icdcfa0503b9c17ef594e404c2993b896f18fd5ab

6 years agoRevert "btif: Simplify dependencies for btif_storage_test"
Myles Watson [Fri, 3 Nov 2017 02:01:39 +0000 (02:01 +0000)]
Revert "btif: Simplify dependencies for btif_storage_test"
am: ee17583892

Change-Id: If5983e534e12d27e5b32acc7d0999217b6210d77

6 years agoAdd libbluetooth-for-tests static library
Pavlin Radoslavov [Thu, 2 Nov 2017 21:27:09 +0000 (14:27 -0700)]
Add libbluetooth-for-tests static library

Add the most common dependencies to a static library
for building tests.

Bug: 68350333
Test: lunch gce_x86_pasan;
      SANITIZE_TARGET="address coverage" mma

Change-Id: I78e65a686873565d292ea0ad89047927ca6efb87

6 years agoRevert "btif: Simplify dependencies for btif_storage_test"
Myles Watson [Thu, 2 Nov 2017 21:47:20 +0000 (21:47 +0000)]
Revert "btif: Simplify dependencies for btif_storage_test"

This reverts commit c9026a03f4bf225ade0cb79e51385acb1201ba07.

Change-Id: Ie7527e8042d13cabd692a6929d902bc1efe009b6

6 years agoDon't notify legacy advertiser in master role.
Jakub Pawlowski [Wed, 1 Nov 2017 23:35:56 +0000 (23:35 +0000)]
Don't notify legacy advertiser in master role.
am: 874ef327d4

Change-Id: I7aaa97fb72abd91d332418e07ac21e56529143bc

6 years agoDon't notify legacy advertiser in master role.
Jakub Pawlowski [Wed, 1 Nov 2017 21:03:39 +0000 (14:03 -0700)]
Don't notify legacy advertiser in master role.

Legacy advertiser should be notified about connection success only
if we're the slave of connection.

Bug: 68712406
Test: bonding with device while using legacy advertising
Change-Id: I4790fb9c8a4f58ea76f6b28fd5384479f2fee0d8

6 years agoMerge "btif: Simplify dependencies for btif_storage_test"
Myles Watson [Tue, 31 Oct 2017 22:37:44 +0000 (22:37 +0000)]
Merge "btif: Simplify dependencies for btif_storage_test"
am: a413084c84

Change-Id: I93c662dc789b7dac6f404d0653a902db8fbd8013

6 years agoMerge "btif: Simplify dependencies for btif_storage_test"
Treehugger Robot [Tue, 31 Oct 2017 22:12:05 +0000 (22:12 +0000)]
Merge "btif: Simplify dependencies for btif_storage_test"

6 years agoMerge changes I7a3e9ee7,I29702219
Jakub Pawlowski [Tue, 31 Oct 2017 22:00:22 +0000 (22:00 +0000)]
Merge changes I7a3e9ee7,I29702219
am: 4929fa2ecb

Change-Id: I3dae9559ce9434bdc266d45c2dda702fe15499ca

6 years agoMerge changes I7a3e9ee7,I29702219
Jakub Pawlowski [Tue, 31 Oct 2017 21:01:11 +0000 (21:01 +0000)]
Merge changes I7a3e9ee7,I29702219

* changes:
  Remove dead code - dump_bin
  Assert on null callback in BTA_JvL2capConnect and BTA_JvL2capConnectLE

6 years agobtif: Simplify dependencies for btif_storage_test
Myles Watson [Mon, 30 Oct 2017 23:00:56 +0000 (16:00 -0700)]
btif: Simplify dependencies for btif_storage_test

Bug: 68350333
Test: lunch gce_x86_pasan;
      SANITIZE_TARGET="address coverage" m net_test_btif

Change-Id: Ia87a4e3d224fcd7ddfa55bdcca391f9b262d50e5

6 years agoMerge "Add a workaround to play A2DP SBC Mono"
Pavlin Radoslavov [Tue, 31 Oct 2017 19:31:28 +0000 (19:31 +0000)]
Merge "Add a workaround to play A2DP SBC Mono"
am: 9e2b73f574

Change-Id: I2c0f6656e6e10dcfe6f97201f8744236951b0789

6 years agoMerge "Add a workaround to play A2DP SBC Mono"
Treehugger Robot [Tue, 31 Oct 2017 19:25:40 +0000 (19:25 +0000)]
Merge "Add a workaround to play A2DP SBC Mono"

6 years agoAdd a workaround to play A2DP SBC Mono
Pavlin Radoslavov [Sun, 29 Oct 2017 18:35:22 +0000 (11:35 -0700)]
Add a workaround to play A2DP SBC Mono

The PCM audio is pulled as STEREO and mixed into MONO by the
Audio A2DP HAL.

Test: Playing SBC mono with Headset
Bug: 67763743
Change-Id: I2710a6633dd81c6917362ed6dd4af75a8d517b0a

6 years agoFix Bluetooth crash when pairing with 8th HOGP device
Ruina Liu [Tue, 31 Oct 2017 16:05:46 +0000 (16:05 +0000)]
Fix Bluetooth crash when pairing with 8th HOGP device
am: 2e3c3d7829

Change-Id: I15f10e1135f54425643f0f3dc5606d61d342d157

6 years agoFix Bluetooth crash when pairing with 8th HOGP device
Ruina Liu [Mon, 11 Sep 2017 08:28:21 +0000 (16:28 +0800)]
Fix Bluetooth crash when pairing with 8th HOGP device

In function bta_hh_hdl_event, when handling with
the event of BTA_HH_API_GET_DSCP_EVT after bonded
with 8th HOGP device, no correct p_cb will be found,
due to mapping error between the device handle and
dev cb for HOGP. Then NPE happen.
Change to map le_cb_index into the device handle for
HOGP, so that HOGP and HID can be separately maintained
maximum to 14 device

Test: Pair with 14 HOGP devices
Change-Id: I8556f1ffea160862c2e52f874ef334f68c17050e

6 years agoRemove dead code - dump_bin
Jakub Pawlowski [Tue, 31 Oct 2017 05:02:41 +0000 (22:02 -0700)]
Remove dead code - dump_bin

Bug: 68359837
Test: compilation test
Change-Id: I7a3e9ee79da06753b329fcd13c6c8aa76bd6fa8f

6 years agoAssert on null callback in BTA_JvL2capConnect and BTA_JvL2capConnectLE
Jakub Pawlowski [Mon, 30 Oct 2017 19:38:30 +0000 (12:38 -0700)]
Assert on null callback in BTA_JvL2capConnect and BTA_JvL2capConnectLE

Passing null as callback should never happen in any scenario.

Bug: 68359837
Test: compilation test
Change-Id: I29702219183eae9d1782438f99d01534fbe44d73

6 years agoUse LOG macros in BTA JV
Jakub Pawlowski [Tue, 31 Oct 2017 02:29:56 +0000 (02:29 +0000)]
Use LOG macros in BTA JV
am: c1a13bcb43

Change-Id: If41a91a09332ecf0c6ecd2615b4cb22b1f4a93e8

6 years agoGet rid of BTA_JV specific events
Jakub Pawlowski [Tue, 31 Oct 2017 00:45:11 +0000 (00:45 +0000)]
Get rid of BTA_JV specific events
am: 5243b3d290

Change-Id: If4dc158de6b123944e958bfea363455f0c527c88

6 years agoUse Bind in BTA_JvStartDiscovery
Jakub Pawlowski [Tue, 31 Oct 2017 00:45:06 +0000 (00:45 +0000)]
Use Bind in BTA_JvStartDiscovery
am: eb40c5c991

Change-Id: Ie6b1f098a292a5a4e2fd85360f21ff32e3a39e3a

6 years agoGet rid of BTA_JV_API_PM_STATE_CHANGE_EVT
Jakub Pawlowski [Tue, 31 Oct 2017 00:45:01 +0000 (00:45 +0000)]
Get rid of BTA_JV_API_PM_STATE_CHANGE_EVT
am: 45190ba9e6

Change-Id: Ia24dc02f9dd13d56a9fca812d1ed9fb3ed56d039

6 years agoUse Bind in BTA_JvSetPmProfile
Jakub Pawlowski [Tue, 31 Oct 2017 00:44:57 +0000 (00:44 +0000)]
Use Bind in BTA_JvSetPmProfile
am: c6b8023c1f

Change-Id: I1d8f9019d0968958322dc04300a03bae96997755

6 years agoUse Bind in BTA_JvRfcommWrite
Jakub Pawlowski [Tue, 31 Oct 2017 00:44:52 +0000 (00:44 +0000)]
Use Bind in BTA_JvRfcommWrite
am: 971f275376

Change-Id: I94fc79cc20ba863982884ee7411503103d8fe997

6 years agoUse Bind in BTA_JvRfcommStartServer and BTA_JvRfcommStopServer
Jakub Pawlowski [Tue, 31 Oct 2017 00:44:47 +0000 (00:44 +0000)]
Use Bind in BTA_JvRfcommStartServer and BTA_JvRfcommStopServer
am: 82c54a47bd

Change-Id: If54cb7a0c0c0f3385e412f2a5e6280263071a08f

6 years agoUse Bind in BTA_JvRfcommClose
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:46 +0000 (00:41 +0000)]
Use Bind in BTA_JvRfcommClose
am: d439a7b7c1

Change-Id: I69db8f314ebd98e982b661aac46d7d9250da5e6c

6 years agoUse Bind in BTA_JvRfcommConnect
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:39 +0000 (00:41 +0000)]
Use Bind in BTA_JvRfcommConnect
am: 3070b22173

Change-Id: Iaffefe773f725ad19b23675477a3cd9734670be3

6 years agoUse Bind in BTA_JvL2capRead
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:34 +0000 (00:41 +0000)]
Use Bind in BTA_JvL2capRead
am: 457d20a3a3

Change-Id: If1c2ca54c566ead7d52b2958d4f567870feffe38

6 years agoUse Bind in BTA_JvL2capWriteFixed
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:30 +0000 (00:41 +0000)]
Use Bind in BTA_JvL2capWriteFixed
am: 70bc98fd70

Change-Id: Ibcc18065c9261ed11a9b88818c1ae62dc79f9956

6 years agoUse Bind in BTA_JvL2capWrite
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:23 +0000 (00:41 +0000)]
Use Bind in BTA_JvL2capWrite
am: a9c80d2240

Change-Id: I1ddc63ea7947e14e32cfb7e72f75d180016f5ca0

6 years agoUse Bind in BTA_JvL2capStopServerLE
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:17 +0000 (00:41 +0000)]
Use Bind in BTA_JvL2capStopServerLE
am: f53bb82959

Change-Id: If23f2304952081fd3ffac7aaedc5916aebe42d76

6 years agoUse Bind in BTA_JvL2capStopServer
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:12 +0000 (00:41 +0000)]
Use Bind in BTA_JvL2capStopServer
am: 345f60ea1d

Change-Id: Ica8e885b322423725640b6effeac2839f118fbf9

6 years agoUse Bind in BTA_JvL2capStartServerLE
Jakub Pawlowski [Tue, 31 Oct 2017 00:41:05 +0000 (00:41 +0000)]
Use Bind in BTA_JvL2capStartServerLE
am: 792ab6f8a8

Change-Id: I61adae0ae5916ffd4441748f4897b60831a3333d

6 years agoUse Bind in BTA_JvL2capStartServer
Jakub Pawlowski [Tue, 31 Oct 2017 00:39:56 +0000 (00:39 +0000)]
Use Bind in BTA_JvL2capStartServer
am: 6a10ea2cb7

Change-Id: I1c4faa15f4ed980b02dbe46944c503e6a8e3e946

6 years agoUse Bind in BTA_JvL2capCloseLE
Jakub Pawlowski [Tue, 31 Oct 2017 00:39:52 +0000 (00:39 +0000)]
Use Bind in BTA_JvL2capCloseLE
am: a034a03229

Change-Id: I201e09a52d7381fb29672c813efceb4b65f4f5f4

6 years agoUse Bind in BTA_JvL2capClose
Jakub Pawlowski [Tue, 31 Oct 2017 00:39:47 +0000 (00:39 +0000)]
Use Bind in BTA_JvL2capClose
am: 6ccc6f4954

Change-Id: I8285a8952cbca55c3953e1d706f94f456d314d1c

6 years agoUse Bind in BTA_JvL2capConnect
Jakub Pawlowski [Tue, 31 Oct 2017 00:39:43 +0000 (00:39 +0000)]
Use Bind in BTA_JvL2capConnect
am: b48986cfc2

Change-Id: Ib684ba9db9099ab24526cb89acbf5f4efd3ae698

6 years agoUse Bind in BTA_JvL2capConnectLE
Jakub Pawlowski [Tue, 31 Oct 2017 00:39:38 +0000 (00:39 +0000)]
Use Bind in BTA_JvL2capConnectLE
am: 5458047d4e

Change-Id: I18bbdeb92816088d8e5f15f43cb8a69f89a9cfae

6 years agoUse LOG macros in BTA JV
Jakub Pawlowski [Mon, 30 Oct 2017 17:41:06 +0000 (10:41 -0700)]
Use LOG macros in BTA JV

Bug: 68359837
Test: compilation test
Change-Id: Ic886f5979c40e49ad870b750dc0650a325153176

6 years agoUse Bind in BTA_JvDeleteRecord
Jakub Pawlowski [Sat, 28 Oct 2017 03:15:38 +0000 (03:15 +0000)]
Use Bind in BTA_JvDeleteRecord
am: a567799194

Change-Id: Ibd2aa662bcc23798b8095f9e84dff4e1094ebc30

6 years agoUse Bind in BTA_JvCreateRecordByUser
Jakub Pawlowski [Sat, 28 Oct 2017 03:14:24 +0000 (03:14 +0000)]
Use Bind in BTA_JvCreateRecordByUser
am: 60596e700a

Change-Id: Ida5dd09e400e927987c98fcbc41bdadad56a05e4

6 years agoUse Bind in BTA_JvFreeChannel
Jakub Pawlowski [Sat, 28 Oct 2017 03:14:18 +0000 (03:14 +0000)]
Use Bind in BTA_JvFreeChannel
am: cdd9dac140

Change-Id: I84b978fa9735d9a10d7dc2fb1b61029204db726c

6 years agoUse Bind in BTA_JvGetChannelId
Jakub Pawlowski [Sat, 28 Oct 2017 03:14:13 +0000 (03:14 +0000)]
Use Bind in BTA_JvGetChannelId
am: a2394f273a

Change-Id: I878ec0ccfd784791deaaab876785ef5afb830ed2

6 years agoUse Bind in BTA_JvDisable
Jakub Pawlowski [Sat, 28 Oct 2017 03:14:08 +0000 (03:14 +0000)]
Use Bind in BTA_JvDisable
am: e72240defc

Change-Id: Iee4008e67e8f6bd6b166ba351e0a31b97ca8ad32

6 years agoUse Bind in BTA_JvEnable
Jakub Pawlowski [Sat, 28 Oct 2017 03:14:02 +0000 (03:14 +0000)]
Use Bind in BTA_JvEnable
am: d3c1f2e43a

Change-Id: I3e8ed1b1d8a030d3078bfcc03207b65e2685e06b

6 years agoUse Bind in BTA_JvDeleteRecord
Jakub Pawlowski [Fri, 27 Oct 2017 18:57:24 +0000 (11:57 -0700)]
Use Bind in BTA_JvDeleteRecord

Bug: 68359837
Test: compilation test
Change-Id: I23236fecf21ffb7808cfabef1570add2e07b0920

6 years agoGet rid of BTA_JV specific events
Jakub Pawlowski [Sat, 28 Oct 2017 02:48:25 +0000 (19:48 -0700)]
Get rid of BTA_JV specific events

Bug: 68359837
Test: compilation test
Change-Id: I4273bc1bed2cef676ab1ed026ac8a0fa3ffbada9