]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
bluetooth: bcm: Add support for loading firmware for BCM4345C5
authorOndrej Jirman <megous@megous.com>
Fri, 23 Aug 2019 10:31:36 +0000 (12:31 +0200)
committerMarcel Holtmann <marcel@holtmann.org>
Thu, 5 Sep 2019 15:27:22 +0000 (17:27 +0200)
Detect BCM4345C5 and load a corresponding firmware file.

Signed-off-by: Ondrej Jirman <megous@megous.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btbcm.c
drivers/bluetooth/hci_bcm.c

index 124ef0a3e1dd0cc3fac12503c9228ec84ebf1ad3..2d2e6d862068105f21b4e5d0ca673ce097d0e15d 100644 (file)
@@ -23,6 +23,7 @@
 #define BDADDR_BCM43430A0 (&(bdaddr_t) {{0xac, 0x1f, 0x12, 0xa0, 0x43, 0x43}})
 #define BDADDR_BCM4324B3 (&(bdaddr_t) {{0x00, 0x00, 0x00, 0xb3, 0x24, 0x43}})
 #define BDADDR_BCM4330B1 (&(bdaddr_t) {{0x00, 0x00, 0x00, 0xb1, 0x30, 0x43}})
+#define BDADDR_BCM4345C5 (&(bdaddr_t) {{0xac, 0x1f, 0x00, 0xc5, 0x45, 0x43}})
 #define BDADDR_BCM43341B (&(bdaddr_t) {{0xac, 0x1f, 0x00, 0x1b, 0x34, 0x43}})
 
 int btbcm_check_bdaddr(struct hci_dev *hdev)
@@ -73,6 +74,7 @@ int btbcm_check_bdaddr(struct hci_dev *hdev)
            !bacmp(&bda->bdaddr, BDADDR_BCM2076B1) ||
            !bacmp(&bda->bdaddr, BDADDR_BCM4324B3) ||
            !bacmp(&bda->bdaddr, BDADDR_BCM4330B1) ||
+           !bacmp(&bda->bdaddr, BDADDR_BCM4345C5) ||
            !bacmp(&bda->bdaddr, BDADDR_BCM43430A0) ||
            !bacmp(&bda->bdaddr, BDADDR_BCM43341B)) {
                bt_dev_info(hdev, "BCM: Using default device address (%pMR)",
@@ -332,6 +334,7 @@ static const struct bcm_subver_table bcm_uart_subver_table[] = {
        { 0x2122, "BCM4343A0"   },      /* 001.001.034 */
        { 0x2209, "BCM43430A1"  },      /* 001.002.009 */
        { 0x6119, "BCM4345C0"   },      /* 003.001.025 */
+       { 0x6606, "BCM4345C5"   },      /* 003.006.006 */
        { 0x230f, "BCM4356A2"   },      /* 001.003.015 */
        { 0x220e, "BCM20702A1"  },      /* 001.002.014 */
        { 0x4217, "BCM4329B1"   },      /* 002.002.023 */
index 4d9de20bab7b1aede13e48bbc44c7c76579738ef..95c312ae94cf65ddf48796c06af5e09b7e02dc06 100644 (file)
@@ -1419,6 +1419,7 @@ static void bcm_serdev_remove(struct serdev_device *serdev)
 #ifdef CONFIG_OF
 static const struct of_device_id bcm_bluetooth_of_match[] = {
        { .compatible = "brcm,bcm20702a1" },
+       { .compatible = "brcm,bcm4345c5" },
        { .compatible = "brcm,bcm4330-bt" },
        { .compatible = "brcm,bcm43438-bt" },
        { },