Skip to content
  • Marcel Holtmann's avatar
    Bluetooth: Defer SCO setup if mode change is pending · e73439d8
    Marcel Holtmann authored
    
    
    Certain headsets such as the Motorola H350 will reject SCO and eSCO
    connection requests while the ACL is transitioning from sniff mode
    to active mode. Add synchronization so that SCO and eSCO connection
    requests will wait until the ACL has fully transitioned to active mode.
    
    < HCI Command: Exit Sniff Mode (0x02|0x0004) plen 2
        handle 12
    > HCI Event: Command Status (0x0f) plen 4
        Exit Sniff Mode (0x02|0x0004) status 0x00 ncmd 1
    < HCI Command:  Setup Synchronous Connection (0x01|0x0028) plen 17
        handle 12 voice setting 0x0040
    > HCI Event: Command Status (0x0f) plen 4
        Setup Synchronous Connection (0x01|0x0028) status 0x00 ncmd 1
    > HCI Event: Number of Completed Packets (0x13) plen 5
        handle 12 packets 1
    > HCI Event: Mode Change (0x14) plen 6
        status 0x00 handle 12 mode 0x00 interval 0
        Mode: Active
    > HCI Event: Synchronous Connect Complete (0x2c) plen 17
        status 0x10 handle 14 bdaddr 00:1A:0E:50:28:A4 type SCO
        Error: Connection Accept Timeout Exceeded
    
    Signed-off-by: default avatarRon Shaffer <rshaffer@codeaurora.org>
    Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
    e73439d8