lkml.org 
[lkml]   [2021]   [Jul]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.10 128/137] Bluetooth: btusb: Add support USB ALT 3 for WBS
    Date
    From: Hilda Wu <hildawu@realtek.com>

    [ Upstream commit e848dbd364aca44c9d23c04bef964fab79e2b34f ]

    Because mSBC frames do not need to be aligned to the SCO packet
    boundary. Using USB ALT 3 let HCI payload >= 60 bytes, let mSBC
    data satisfy 60 Bytes avoid payload unaligned situation and fixed
    some headset no voise issue.

    USB Alt 3 supported also need HFP support transparent MTU in 72 Bytes.

    Signed-off-by: Hilda Wu <hildawu@realtek.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/bluetooth/btusb.c | 7 +++++++
    1 file changed, 7 insertions(+)

    diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
    index 8f38a2a7da8c..b3c63e06838d 100644
    --- a/drivers/bluetooth/btusb.c
    +++ b/drivers/bluetooth/btusb.c
    @@ -1721,6 +1721,13 @@ static void btusb_work(struct work_struct *work)
    * which work with WBS at all.
    */
    new_alts = btusb_find_altsetting(data, 6) ? 6 : 1;
    + /* Because mSBC frames do not need to be aligned to the
    + * SCO packet boundary. If support the Alt 3, use the
    + * Alt 3 for HCI payload >= 60 Bytes let air packet
    + * data satisfy 60 bytes.
    + */
    + if (new_alts == 1 && btusb_find_altsetting(data, 3))
    + new_alts = 3;
    }

    if (btusb_switch_alt_setting(hdev, new_alts) < 0)
    --
    2.30.2
    \
     
     \ /
      Last update: 2021-07-06 14:11    [W:2.915 / U:0.132 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site