Hi Marcel, Gentle reminder. Thanks, Kiran > -----Original Message----- > From: Kiran K <kiran.k@xxxxxxxxx> > Sent: Thursday, April 8, 2021 10:32 PM > To: linux-bluetooth@xxxxxxxxxxxxxxx > Cc: Srivatsa, Ravishankar <ravishankar.srivatsa@xxxxxxxxx>; Tumkur > Narayan, Chethan <chethan.tumkur.narayan@xxxxxxxxx>; K, Kiran > <kiran.k@xxxxxxxxx>; Singh, Lokendra <lokendra.singh@xxxxxxxxx> > Subject: [PATCH v1] Bluetooth: Fix alt settings for incoming SCO with > transparent coding format > > For incoming SCO connection with transparent coding format, alt setting of > CVSD is getting applied instead of Transparent. > > Before fix: > < HCI Command: Accept Synchron.. (0x01|0x0029) plen 21 #2196 [hci0] > 321.342548 > Address: 1C:CC:D6:E2:EA:80 (Xiaomi Communications Co Ltd) > Transmit bandwidth: 8000 > Receive bandwidth: 8000 > Max latency: 13 > Setting: 0x0003 > Input Coding: Linear > Input Data Format: 1's complement > Input Sample Size: 8-bit > # of bits padding at MSB: 0 > Air Coding Format: Transparent Data > Retransmission effort: Optimize for link quality (0x02) > Packet type: 0x003f > HV1 may be used > HV2 may be used > HV3 may be used > EV3 may be used > EV4 may be used > EV5 may be used > > HCI Event: Command Status (0x0f) plen 4 #2197 [hci0] 321.343585 > Accept Synchronous Connection Request (0x01|0x0029) ncmd 1 > Status: Success (0x00) > > HCI Event: Synchronous Connect Comp.. (0x2c) plen 17 #2198 [hci0] > > 321.351666 > Status: Success (0x00) > Handle: 257 > Address: 1C:CC:D6:E2:EA:80 (Xiaomi Communications Co Ltd) > Link type: eSCO (0x02) > Transmission interval: 0x0c > Retransmission window: 0x04 > RX packet length: 60 > TX packet length: 60 > Air mode: Transparent (0x03) > ........ > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2336 [hci0] 321.383655 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #2337 [hci0] 321.389558 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2338 [hci0] 321.393615 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2339 [hci0] 321.393618 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2340 [hci0] 321.393618 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #2341 [hci0] 321.397070 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2342 [hci0] 321.403622 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2343 [hci0] 321.403625 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2344 [hci0] 321.403625 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2345 [hci0] 321.403625 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #2346 [hci0] 321.404569 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #2347 [hci0] 321.412091 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2348 [hci0] 321.413626 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2349 [hci0] 321.413630 > > SCO Data RX: Handle 257 flags 0x00 dlen 48 #2350 [hci0] 321.413630 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #2351 [hci0] 321.419674 > > After fix: > > < HCI Command: Accept Synchronou.. (0x01|0x0029) plen 21 #309 [hci0] > 49.439693 > Address: 1C:CC:D6:E2:EA:80 (Xiaomi Communications Co Ltd) > Transmit bandwidth: 8000 > Receive bandwidth: 8000 > Max latency: 13 > Setting: 0x0003 > Input Coding: Linear > Input Data Format: 1's complement > Input Sample Size: 8-bit > # of bits padding at MSB: 0 > Air Coding Format: Transparent Data > Retransmission effort: Optimize for link quality (0x02) > Packet type: 0x003f > HV1 may be used > HV2 may be used > HV3 may be used > EV3 may be used > EV4 may be used > EV5 may be used > > HCI Event: Command Status (0x0f) plen 4 #310 [hci0] 49.440308 > Accept Synchronous Connection Request (0x01|0x0029) ncmd 1 > Status: Success (0x00) > > HCI Event: Synchronous Connect Complete (0x2c) plen 17 #311 [hci0] > > 49.449308 > Status: Success (0x00) > Handle: 257 > Address: 1C:CC:D6:E2:EA:80 (Xiaomi Communications Co Ltd) > Link type: eSCO (0x02) > Transmission interval: 0x0c > Retransmission window: 0x04 > RX packet length: 60 > TX packet length: 60 > Air mode: Transparent (0x03) > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #312 [hci0] 49.450421 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #313 [hci0] 49.457927 > > HCI Event: Max Slots Change (0x1b) plen 3 #314 [hci0] 49.460345 > Handle: 256 > Max slots: 5 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #315 [hci0] 49.465453 > > SCO Data RX: Handle 257 flags 0x00 dlen 60 #316 [hci0] 49.470502 > > SCO Data RX: Handle 257 flags 0x00 dlen 60 #317 [hci0] 49.470519 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #318 [hci0] 49.472996 > > SCO Data RX: Handle 257 flags 0x00 dlen 60 #319 [hci0] 49.480412 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #320 [hci0] 49.480492 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #321 [hci0] 49.487989 > > SCO Data RX: Handle 257 flags 0x00 dlen 60 #322 [hci0] 49.490303 > < SCO Data TX: Handle 257 flags 0x00 dlen 60 #323 [hci0] 49.495496 > > SCO Data RX: Handle 257 flags 0x00 dlen 60 #324 [hci0] 49.500304 > > SCO Data RX: Handle 257 flags 0x00 dlen 60 #325 [hci0] 49.500311 > > Signed-off-by: Kiran K <kiran.k@xxxxxxxxx> > Signed-off-by: Lokendra Singh <lokendra.singh@xxxxxxxxx> > --- > net/bluetooth/hci_event.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index > 016b2999f219..47166cea68bb 100644 > --- a/net/bluetooth/hci_event.c > +++ b/net/bluetooth/hci_event.c > @@ -4404,12 +4404,12 @@ static void hci_sync_conn_complete_evt(struct > hci_dev *hdev, > > bt_dev_dbg(hdev, "SCO connected with air mode: %02x", ev- > >air_mode); > > - switch (conn->setting & SCO_AIRMODE_MASK) { > - case SCO_AIRMODE_CVSD: > + switch (ev->air_mode) { > + case 0x02: > if (hdev->notify) > hdev->notify(hdev, > HCI_NOTIFY_ENABLE_SCO_CVSD); > break; > - case SCO_AIRMODE_TRANSP: > + case 0x03: > if (hdev->notify) > hdev->notify(hdev, > HCI_NOTIFY_ENABLE_SCO_TRANSP); > break; > -- > 2.17.1