Marcel Holtmann wrote:
Hi Xuan,
  
Hello Marcel,
  
The Broadcom BCM2045 chipset seems to be also one of those chipsets
which report the SCO maximum packet incorrectly. The attached patch
works around this problem. With this workaround, a bluetooth USB
dongle with this chipset is able to send SCO data correctly.

The fix was verified using this USB dongle (MSI StarKey 2.0 (Ver
222-BW))
        Bus 002 Device 004: ID 0a5c:2101 Broadcom Corp.
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               2.00
          bDeviceClass          224 Wireless
          bDeviceSubClass         1 Radio Frequency
          bDeviceProtocol         1 Bluetooth
          bMaxPacketSize0        64
          idVendor           0x0a5c Broadcom Corp.
          idProduct          0x2101
          bcdDevice            0.00
          iManufacturer           1 Broadcom Corp
          iProduct                2 BCM92045DG Non-UHE
          iSerial                 0
          bNumConfigurations      1
    

is this a dongle with HID proxy support or not. If yes, then you need
the HCI_RESET quirk otherwise you don't. So please check if it still
works after not including the HCI_RESET quirk.
  
It seems that HCI_RESET is not needed. (Interestingly, during testing, I now encounter in about 20% of the cases very loud noise. This seems like wrong data being played (like a synchronization error). However, this problem happens both with and without HCI_RESET.)
Regards

Marcel

  
ciao,
Xuân.