diff options
author | Bing Zhao <bzhao@marvell.com> | 2011-11-16 23:40:42 -0500 |
---|---|---|
committer | Gustavo F. Padovan <padovan@profusion.mobi> | 2011-11-21 10:52:31 -0500 |
commit | 2ac654f740b574c58ee02bac3816cf466a1bfb41 (patch) | |
tree | b089cac81d7ba845def72dd15fb10ec1a4dc1d0f /drivers/bluetooth | |
parent | d13431ca3eb2a2c14314f04813cdc11cd869f150 (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')
-rw-r--r-- | drivers/bluetooth/Kconfig | 6 | ||||
-rw-r--r-- | drivers/bluetooth/btmrvl_sdio.c | 15 |
2 files changed, 16 insertions, 5 deletions
diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig index 11b41fd40c27..5ccf142ef0b8 100644 --- a/drivers/bluetooth/Kconfig +++ b/drivers/bluetooth/Kconfig | |||
@@ -188,7 +188,7 @@ config BT_MRVL | |||
188 | The core driver to support Marvell Bluetooth devices. | 188 | The core driver to support Marvell Bluetooth devices. |
189 | 189 | ||
190 | This driver is required if you want to support | 190 | This driver is required if you want to support |
191 | Marvell Bluetooth devices, such as 8688/8787. | 191 | Marvell Bluetooth devices, such as 8688/8787/8797. |
192 | 192 | ||
193 | Say Y here to compile Marvell Bluetooth driver | 193 | Say Y here to compile Marvell Bluetooth driver |
194 | into the kernel or say M to compile it as module. | 194 | into the kernel or say M to compile it as module. |
@@ -201,8 +201,8 @@ config BT_MRVL_SDIO | |||
201 | The driver for Marvell Bluetooth chipsets with SDIO interface. | 201 | The driver for Marvell Bluetooth chipsets with SDIO interface. |
202 | 202 | ||
203 | This driver is required if you want to use Marvell Bluetooth | 203 | This driver is required if you want to use Marvell Bluetooth |
204 | devices with SDIO interface. Currently SD8688/SD8787 chipsets are | 204 | devices with SDIO interface. Currently SD8688/SD8787/SD8797 |
205 | supported. | 205 | chipsets are supported. |
206 | 206 | ||
207 | Say Y here to compile support for Marvell BT-over-SDIO driver | 207 | Say Y here to compile support for Marvell BT-over-SDIO driver |
208 | into the kernel or say M to compile it as module. | 208 | into the kernel or say M to compile it as module. |
diff --git a/drivers/bluetooth/btmrvl_sdio.c b/drivers/bluetooth/btmrvl_sdio.c index c827d737ccee..37b56398c8a6 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 | }; |
67 | static const struct btmrvl_sdio_card_reg btmrvl_reg_8787 = { | 67 | static 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 = { | |||
91 | static const struct btmrvl_sdio_device btmrvl_sdio_sd8787 = { | 91 | static 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 | |||
98 | static 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"); | |||
1075 | MODULE_FIRMWARE("sd8688_helper.bin"); | 1085 | MODULE_FIRMWARE("sd8688_helper.bin"); |
1076 | MODULE_FIRMWARE("sd8688.bin"); | 1086 | MODULE_FIRMWARE("sd8688.bin"); |
1077 | MODULE_FIRMWARE("mrvl/sd8787_uapsta.bin"); | 1087 | MODULE_FIRMWARE("mrvl/sd8787_uapsta.bin"); |
1088 | MODULE_FIRMWARE("mrvl/sd8797_uapsta.bin"); | ||