Bluetooth: hci_bcm: Limit bcm43455 baudrate to 2000000
authorHans de Goede <hdegoede@redhat.com>
Sat, 6 Apr 2024 13:51:06 +0000 (15:51 +0200)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Tue, 14 May 2024 14:51:05 +0000 (10:51 -0400)
Like the bcm43430a0 the bcm43455 BT does not support the 0xfc45 command
to set the UART clock to 48 MHz and because of this it does not work
at 4000000 baud.

These chips are found on ACPI/x86 devices where the operating baudrate
does not come from the firmware but is hardcoded at 4000000, which does
not work.

Make the driver_data for the "BCM2EA4" ACPI HID which is used for
the bcm43455 BT point to bcm43430_device_data which limits the baudrate
to 2000000.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
drivers/bluetooth/hci_bcm.c

index 3a227f73c063487f8718ceadd6a7a36e7730e789..89d4c2224546fbd485aefce56275d2a1a7ca881c 100644 (file)
@@ -1485,7 +1485,7 @@ static const struct acpi_device_id bcm_acpi_match[] = {
        { "BCM2EA1" },
        { "BCM2EA2", (long)&bcm43430_device_data },
        { "BCM2EA3", (long)&bcm43430_device_data },
-       { "BCM2EA4" },
+       { "BCM2EA4", (long)&bcm43430_device_data }, /* bcm43455 */
        { "BCM2EA5" },
        { "BCM2EA6" },
        { "BCM2EA7" },