Commit afb7d3cd authored by Luciano Coelho's avatar Luciano Coelho

wl12xx: move hardcoded hci_io_ds value into the conf struct

Instead of hardcoding the hci_io_ds configuration that we write to the
SDIO_IO_DS top registed, read it from the default configuration so
that it's easier to change for different platforms.
Reported-by: default avatarIdo Yariv <ido@wizery.com>
Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
parent 6277ed65
...@@ -779,7 +779,7 @@ int wl1271_load_firmware(struct wl1271 *wl) ...@@ -779,7 +779,7 @@ int wl1271_load_firmware(struct wl1271 *wl)
* to upload_fw) */ * to upload_fw) */
if (wl->chip.id == CHIP_ID_1283_PG20) if (wl->chip.id == CHIP_ID_1283_PG20)
wl1271_top_reg_write(wl, SDIO_IO_DS, HCI_IO_DS_6MA); wl1271_top_reg_write(wl, SDIO_IO_DS, wl->conf.hci_io_ds);
ret = wl1271_boot_upload_firmware(wl); ret = wl1271_boot_upload_firmware(wl);
if (ret < 0) if (ret < 0)
......
...@@ -117,10 +117,13 @@ struct wl1271_static_data { ...@@ -117,10 +117,13 @@ struct wl1271_static_data {
#define SDIO_IO_DS 0xd14 #define SDIO_IO_DS 0xd14
/* SDIO/wSPI DS configuration values */ /* SDIO/wSPI DS configuration values */
#define HCI_IO_DS_8MA 0 enum {
#define HCI_IO_DS_4MA 1 /* default */ HCI_IO_DS_8MA = 0,
#define HCI_IO_DS_6MA 2 HCI_IO_DS_4MA = 1, /* default */
#define HCI_IO_DS_2MA 3 HCI_IO_DS_6MA = 2,
HCI_IO_DS_2MA = 3,
};
/* end PLL configuration algorithm for wl128x */ /* end PLL configuration algorithm for wl128x */
#endif #endif
...@@ -1206,6 +1206,7 @@ struct conf_drv_settings { ...@@ -1206,6 +1206,7 @@ struct conf_drv_settings {
struct conf_ht_setting ht; struct conf_ht_setting ht;
struct conf_memory_settings mem_wl127x; struct conf_memory_settings mem_wl127x;
struct conf_memory_settings mem_wl128x; struct conf_memory_settings mem_wl128x;
u8 hci_io_ds;
}; };
#endif #endif
...@@ -319,6 +319,7 @@ static struct conf_drv_settings default_conf = { ...@@ -319,6 +319,7 @@ static struct conf_drv_settings default_conf = {
.min_req_rx_blocks = 22, .min_req_rx_blocks = 22,
.tx_min = 27, .tx_min = 27,
}, },
.hci_io_ds = HCI_IO_DS_6MA,
}; };
static void __wl1271_op_remove_interface(struct wl1271 *wl); static void __wl1271_op_remove_interface(struct wl1271 *wl);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment