floss: Add call status and hook to CLCC callback
The report of the call status indicator is required for some headset to
work properly. Add a call_status private field and abstract the set of
the call status to a private helper function for better readability in
the ConnectionStateCallback. Also hook the CLCC callback to reflect the
correct call status.
We sent HF the following +CIND thus the call status index should be 1.
+CIND: ("CALL",(0,1)),("CALLSETUP",(0-3)), ...
Got +CIEV: 1,1 when SCO connection started
> HCI Event: Synchronous Connect Complete (0x2c) plen 17
Status: Success (0x00)
Handle: 257
Address: 7C:96:D2:8B:F8:BC (OUI 7C-96-D2)
Link type: eSCO (0x02)
Transmission interval: 0x0c
Retransmission window: 0x02
RX packet length: 60
TX packet length: 60
Air mode: CVSD (0x02)
< HCI Command: Sniff Subrating (0x02|0x0011) plen 8
Handle: 256
Max latency: 0.000 msec (0x0000)
Min remote timeout: 0.000 msec (0x0000)
Min local timeout: 0.000 msec (0x0000)
< ACL Data TX: Handle 256 flags 0x00 dlen 22
Channel: 449 len 18 [PSM 0 mode Basic (0x00)] {chan 65535}
19 ef 1d 0d 0a 2b 43 49 45 56 3a 20 31 2c 31 0d .....+CIEV: 1,1.
0a 55 .U
Got +CIEV: 1,0 when disconnect
> HCI Event: Disconnect Complete (0x05) plen 4
Status: Success (0x00)
Handle: 257
Reason: Connection Terminated By Local Host (0x16)
< HCI Command: Sniff Subrating (0x02|0x0011) plen 8
Handle: 256
Max latency: 750.000 msec (0x04b0)
Min remote timeout: 1.250 msec (0x0002)
Min local timeout: 1.250 msec (0x0002)
< ACL Data TX: Handle 256 flags 0x00 dlen 22
Channel: 2563 len 18 [PSM 3 mode Basic (0x00)] {chan 2}
RFCOMM: Unnumbered Info with Header Check (UIH) (0xef)
Address: 0x63 cr 1 dlci 0x18
Control: 0xef poll/final 0
Length: 14
FCS: 0x0e
0d 0a 2b 43 49 45 56 3a 20 31 2c 30 0d 0a 0e ..+CIEV: 1,0...
Tag: #floss
Bug: 213408429
Test: Build, flush, put to HFP mode, start then stop call, capture
btsnoop and verify +CIEV commands show up at when the call starts/stops
with correct call status
BYPASS_LONG_LINES_REASON: Bluetooth likes 120 char lines
Change-Id: Ib9af4bf0ebe695ede4614703a6d0ca2adf5478a8
Loading
Please register or sign in to comment