aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/wireless/ti/wl12xx/main.c10
-rw-r--r--drivers/net/wireless/ti/wl18xx/main.c5
-rw-r--r--drivers/net/wireless/ti/wlcore/main.c7
3 files changed, 12 insertions, 10 deletions
diff --git a/drivers/net/wireless/ti/wl12xx/main.c b/drivers/net/wireless/ti/wl12xx/main.c
index ba5afa46a430..67974f6c635a 100644
--- a/drivers/net/wireless/ti/wl12xx/main.c
+++ b/drivers/net/wireless/ti/wl12xx/main.c
@@ -625,9 +625,6 @@ static int wl12xx_identify_chip(struct wl1271 *wl)
625 wl1271_warning("chip id 0x%x (1271 PG10) support is obsolete", 625 wl1271_warning("chip id 0x%x (1271 PG10) support is obsolete",
626 wl->chip.id); 626 wl->chip.id);
627 627
628 /* clear the alignment quirk, since we don't support it */
629 wl->quirks &= ~WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN;
630
631 wl->quirks |= WLCORE_QUIRK_LEGACY_NVS; 628 wl->quirks |= WLCORE_QUIRK_LEGACY_NVS;
632 wl->sr_fw_name = WL127X_FW_NAME_SINGLE; 629 wl->sr_fw_name = WL127X_FW_NAME_SINGLE;
633 wl->mr_fw_name = WL127X_FW_NAME_MULTI; 630 wl->mr_fw_name = WL127X_FW_NAME_MULTI;
@@ -643,9 +640,6 @@ static int wl12xx_identify_chip(struct wl1271 *wl)
643 wl1271_debug(DEBUG_BOOT, "chip id 0x%x (1271 PG20)", 640 wl1271_debug(DEBUG_BOOT, "chip id 0x%x (1271 PG20)",
644 wl->chip.id); 641 wl->chip.id);
645 642
646 /* clear the alignment quirk, since we don't support it */
647 wl->quirks &= ~WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN;
648
649 wl->quirks |= WLCORE_QUIRK_LEGACY_NVS; 643 wl->quirks |= WLCORE_QUIRK_LEGACY_NVS;
650 wl->plt_fw_name = WL127X_PLT_FW_NAME; 644 wl->plt_fw_name = WL127X_PLT_FW_NAME;
651 wl->sr_fw_name = WL127X_FW_NAME_SINGLE; 645 wl->sr_fw_name = WL127X_FW_NAME_SINGLE;
@@ -664,6 +658,10 @@ static int wl12xx_identify_chip(struct wl1271 *wl)
664 wl->plt_fw_name = WL128X_PLT_FW_NAME; 658 wl->plt_fw_name = WL128X_PLT_FW_NAME;
665 wl->sr_fw_name = WL128X_FW_NAME_SINGLE; 659 wl->sr_fw_name = WL128X_FW_NAME_SINGLE;
666 wl->mr_fw_name = WL128X_FW_NAME_MULTI; 660 wl->mr_fw_name = WL128X_FW_NAME_MULTI;
661
662 /* wl128x requires TX blocksize alignment */
663 wl->quirks |= WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN;
664
667 break; 665 break;
668 case CHIP_ID_1283_PG10: 666 case CHIP_ID_1283_PG10:
669 default: 667 default:
diff --git a/drivers/net/wireless/ti/wl18xx/main.c b/drivers/net/wireless/ti/wl18xx/main.c
index dda9c18e5506..2e9b3cb6e074 100644
--- a/drivers/net/wireless/ti/wl18xx/main.c
+++ b/drivers/net/wireless/ti/wl18xx/main.c
@@ -591,8 +591,9 @@ static int wl18xx_identify_chip(struct wl1271 *wl)
591 /* wl18xx uses the same firmware for PLT */ 591 /* wl18xx uses the same firmware for PLT */
592 wl->plt_fw_name = WL18XX_FW_NAME; 592 wl->plt_fw_name = WL18XX_FW_NAME;
593 wl->quirks |= WLCORE_QUIRK_NO_ELP | 593 wl->quirks |= WLCORE_QUIRK_NO_ELP |
594 WLCORE_QUIRK_FWLOG_NOT_IMPLEMENTED | 594 WLCORE_QUIRK_FWLOG_NOT_IMPLEMENTED |
595 WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN; 595 WLCORE_QUIRK_RX_BLOCKSIZE_ALIGN |
596 WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN;
596 597
597 /* PG 1.0 has some problems with MCS_13, so disable it */ 598 /* PG 1.0 has some problems with MCS_13, so disable it */
598 wl->ht_cap.mcs.rx_mask[1] &= ~BIT(5); 599 wl->ht_cap.mcs.rx_mask[1] &= ~BIT(5);
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c
index 00a482199a32..af00dabf96b7 100644
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -960,9 +960,12 @@ static int wl12xx_chip_wakeup(struct wl1271 *wl, bool plt)
960 * simplify the code and since the performance impact is 960 * simplify the code and since the performance impact is
961 * negligible, we use the same block size for all different 961 * negligible, we use the same block size for all different
962 * chip types. 962 * chip types.
963 *
964 * Check if the bus supports blocksize alignment and, if it
965 * doesn't, make sure we don't have the quirk.
963 */ 966 */
964 if (wl1271_set_block_size(wl)) 967 if (!wl1271_set_block_size(wl))
965 wl->quirks |= WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN; 968 wl->quirks &= ~WLCORE_QUIRK_TX_BLOCKSIZE_ALIGN;
966 969
967 /* TODO: make sure the lower driver has set things up correctly */ 970 /* TODO: make sure the lower driver has set things up correctly */
968 971