[Description]
when driver re-register hci device, it may register hci 1
[Root Cause]
In the kernel mechanism, there may be a timing issue. when driver re-register hci device,kernel may not completely unregister hci 0.But aidl only open hci 0.
[Solution]
assign a value to the hci interface based on the device node found by AIDL
[Test Report]
Insert the bt chip into the usb 2.0 port, and then suspend the TV. The bt chip will be disconnected due to the USB power outage. And then quickly resume the TV,check whether the Bluetooth state is on. Suspend and resume for several times, check for bt state.
Change-Id: I57fd4a22c956e0cf2b4a516247c258493163e51a
BUG: 314149416
[Description]
during servicefuzz test, when AIDL has already been closed, then send
packet will cause crash
[Root Cause]
send function doesn't check AIDL mstate and it may use illegal socket fd
[Solution]
add AIDL state check before send
[Test Report]
test bluetooth servcefuzz pass
Change-Id: Id10c72269a392562798a6e46e9753402db423ee3
Bug: 308904509
The benefit is small and it's painful to make libraries
available to apexes and the platform.
Bug: 296427840
Test: mma -j32
Change-Id: I7f2ed8636b90de415b8d5635dcd7c568810323bd
[Description]
If aidl open HCI fail at the first time, the aidl state
can not change to enable for the next time to initialize.
[Root Cause]
Bluetooth AIDL State is always equal to INITIALIZING after
open hci fail at the first time.
[Solution]
When open HCI fail at the first time, initialize the mstate to ready
Bug: 285517442
Test: pass
Change-Id: I19756d6602ba931242d0f95942db55c505a210bb
Call SetTerminalRaw on the fd that was opened, since mFD has not been set. If SetTerminalRaw fails, log it but continue, since some platforms do not need this call.
Bug: 279870989
Test: start Bluetooth on a device that doesn't need SetTerminalRaw
Change-Id: I97c92c407b7c80442a0ba0812a630525219670a0
The default HAL only uses one thread, which is 0 more than
the default of 1.
Bug: 205758693
Test: VtsHalBluetoothTargetTest
Change-Id: I8828cab2b4eb4d2a28ecc41cb75e3eb470cd0da6
Sending a reset and discarding extra packets
helps ensure that tests are hermetic for devices
that do not power off the chip with rfkill.
Add a mutex to make sure that close only gets
called once.
Bug: 266221125
Test: atest VtsHalBluetoothTargetTest
Change-Id: Ifb259a675202aa5399a8c7570ba8c4df2083e10e
The implementation is imported from
packages/modules/Bluetooth/system/vendor_libs/linux/interface
with modifications to modernize the code.
The default bluetooth HAL implementation now jointly uses
the serial implementation and the bluetooth socket
implementation.
Bug: 205758693
Test: VtsHalBluetoothTargetTest
Change-Id: I791fd406e56a0144e1117cb6f8e27ec71b48a192