]> git.dujemihanovic.xyz Git - linux.git/commitdiff
Bluetooth: btmrvl_sdio: Add support for SD8777 chipset
authorblacksilver <blacksilver@debdan.net>
Wed, 1 Nov 2023 09:33:06 +0000 (10:33 +0100)
committerDuje Mihanović <duje.mihanovic@skole.hr>
Fri, 11 Oct 2024 17:43:54 +0000 (19:43 +0200)
Support for Marvell's chipset SD8777 is added.
Existing btmrvl_reg_87xx register definition is reused.

drivers/bluetooth/btmrvl_sdio.c
include/linux/mmc/sdio_ids.h

index 07cd308f7abf6debe114452ed4e3e6de82efc1f8..44181fef227c523b9bb35911ac4d280cce5e4332 100644 (file)
@@ -41,6 +41,7 @@ static struct memory_type_mapping mem_type_mapping_tbl[] = {
 };
 
 static const struct of_device_id btmrvl_sdio_of_match_table[] __maybe_unused = {
+       { .compatible = "marvell,sd8777-bt" },
        { .compatible = "marvell,sd8897-bt" },
        { .compatible = "marvell,sd8997-bt" },
        { }
@@ -233,6 +234,15 @@ static const struct btmrvl_sdio_device btmrvl_sdio_sd8688 = {
        .supports_fw_dump = false,
 };
 
+static const struct btmrvl_sdio_device btmrvl_sdio_sd8777 = {
+       .helper         = NULL,
+       .firmware       = "mrvl/sd8777_uapsta.bin",
+       .reg            = &btmrvl_reg_87xx,
+       .support_pscan_win_report = false,
+       .sd_blksz_fw_dl = 256,
+       .supports_fw_dump = false,
+};
+
 static const struct btmrvl_sdio_device btmrvl_sdio_sd8787 = {
        .helper         = NULL,
        .firmware       = "mrvl/sd8787_uapsta.bin",
@@ -300,6 +310,9 @@ static const struct sdio_device_id btmrvl_sdio_ids[] = {
        /* Marvell SD8688 Bluetooth device */
        { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8688_BT),
                        .driver_data = (unsigned long)&btmrvl_sdio_sd8688 },
+       /* Marvell SD8777 Bluetooth device */
+       { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8777_BT),
+                       .driver_data = (unsigned long)&btmrvl_sdio_sd8777 },
        /* Marvell SD8787 Bluetooth device */
        { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_8787_BT),
                        .driver_data = (unsigned long)&btmrvl_sdio_sd8787 },
@@ -1770,6 +1783,7 @@ MODULE_VERSION(VERSION);
 MODULE_LICENSE("GPL v2");
 MODULE_FIRMWARE("mrvl/sd8688_helper.bin");
 MODULE_FIRMWARE("mrvl/sd8688.bin");
+MODULE_FIRMWARE("mrvl/sd8777_uapsta.bin");
 MODULE_FIRMWARE("mrvl/sd8787_uapsta.bin");
 MODULE_FIRMWARE("mrvl/sd8797_uapsta.bin");
 MODULE_FIRMWARE("mrvl/sd8887_uapsta.bin");
index c49138fcd79adeab6df17aa60477c4be90ddf36d..57b1a3e69fb6d7ac0327508523bf89276d45b733 100644 (file)
@@ -95,6 +95,7 @@
 #define SDIO_DEVICE_ID_MARVELL_8897_WLAN       0x912d
 #define SDIO_DEVICE_ID_MARVELL_8897_BT         0x912e
 #define SDIO_DEVICE_ID_MARVELL_8777_WLAN       0x9131
+#define SDIO_DEVICE_ID_MARVELL_8777_BT         0x9132
 #define SDIO_DEVICE_ID_MARVELL_8887_F0         0x9134
 #define SDIO_DEVICE_ID_MARVELL_8887_WLAN       0x9135
 #define SDIO_DEVICE_ID_MARVELL_8887_BT         0x9136