aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/btmrvl_sdio.c
diff options
context:
space:
mode:
authorBing Zhao <bzhao@marvell.com>2011-11-16 23:40:42 -0500
committerGustavo F. Padovan <padovan@profusion.mobi>2011-11-21 10:52:31 -0500
commit2ac654f740b574c58ee02bac3816cf466a1bfb41 (patch)
treeb089cac81d7ba845def72dd15fb10ec1a4dc1d0f /drivers/bluetooth/btmrvl_sdio.c
parentd13431ca3eb2a2c14314f04813cdc11cd869f150 (diff)
Bluetooth: btmrvl: support Marvell Bluetooth device SD8797
The SD8797 firmware image is shared with mwifiex driver. Whoever gets loaded first will be responsible for firmware downloading. Signed-off-by: Bing Zhao <bzhao@marvell.com> Signed-off-by: Frank Huang <frankh@marvell.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Diffstat (limited to 'drivers/bluetooth/btmrvl_sdio.c')
-rw-r--r--drivers/bluetooth/btmrvl_sdio.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/bluetooth/btmrvl_sdio.c b/drivers/bluetooth/btmrvl_sdio.c
index c827d737cce..37b56398c8a 100644
--- a/drivers/bluetooth/btmrvl_sdio.c
+++ b/drivers/bluetooth/btmrvl_sdio.c
@@ -64,7 +64,7 @@ static const struct btmrvl_sdio_card_reg btmrvl_reg_8688 = {
64 .io_port_1 = 0x01, 64 .io_port_1 = 0x01,
65 .io_port_2 = 0x02, 65 .io_port_2 = 0x02,
66}; 66};
67static const struct btmrvl_sdio_card_reg btmrvl_reg_8787 = { 67static const struct btmrvl_sdio_card_reg btmrvl_reg_87xx = {
68 .cfg = 0x00, 68 .cfg = 0x00,
69 .host_int_mask = 0x02, 69 .host_int_mask = 0x02,
70 .host_intstatus = 0x03, 70 .host_intstatus = 0x03,
@@ -91,7 +91,14 @@ static const struct btmrvl_sdio_device btmrvl_sdio_sd8688 = {
91static const struct btmrvl_sdio_device btmrvl_sdio_sd8787 = { 91static const struct btmrvl_sdio_device btmrvl_sdio_sd8787 = {
92 .helper = NULL, 92 .helper = NULL,
93 .firmware = "mrvl/sd8787_uapsta.bin", 93 .firmware = "mrvl/sd8787_uapsta.bin",
94 .reg = &btmrvl_reg_8787, 94 .reg = &btmrvl_reg_87xx,
95 .sd_blksz_fw_dl = 256,
96};
97
98static const struct btmrvl_sdio_device btmrvl_sdio_sd8797 = {
99 .helper = NULL,
100 .firmware = "mrvl/sd8797_uapsta.bin",
101 .reg = &btmrvl_reg_87xx,
95 .sd_blksz_fw_dl = 256, 102 .sd_blksz_fw_dl = 256,
96}; 103};
97 104
@@ -102,6 +109,9 @@ static const struct sdio_device_id btmrvl_sdio_ids[] = {
102 /* Marvell SD8787 Bluetooth device */ 109 /* Marvell SD8787 Bluetooth device */
103 { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, 0x911A), 110 { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, 0x911A),
104 .driver_data = (unsigned long) &btmrvl_sdio_sd8787 }, 111 .driver_data = (unsigned long) &btmrvl_sdio_sd8787 },
112 /* Marvell SD8797 Bluetooth device */
113 { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, 0x912A),
114 .driver_data = (unsigned long) &btmrvl_sdio_sd8797 },
105 115
106 { } /* Terminating entry */ 116 { } /* Terminating entry */
107}; 117};
@@ -1075,3 +1085,4 @@ MODULE_LICENSE("GPL v2");
1075MODULE_FIRMWARE("sd8688_helper.bin"); 1085MODULE_FIRMWARE("sd8688_helper.bin");
1076MODULE_FIRMWARE("sd8688.bin"); 1086MODULE_FIRMWARE("sd8688.bin");
1077MODULE_FIRMWARE("mrvl/sd8787_uapsta.bin"); 1087MODULE_FIRMWARE("mrvl/sd8787_uapsta.bin");
1088MODULE_FIRMWARE("mrvl/sd8797_uapsta.bin");