diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/cfg80211.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/core.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/core.h | 6 | ||||
-rwxr-xr-x | drivers/net/wireless/ath/ath6kl/debug.c | 15 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath6kl/main.c | 6 |
5 files changed, 16 insertions, 14 deletions
diff --git a/drivers/net/wireless/ath/ath6kl/cfg80211.c b/drivers/net/wireless/ath/ath6kl/cfg80211.c index d877a9766b40..8d6bb323bb74 100644 --- a/drivers/net/wireless/ath/ath6kl/cfg80211.c +++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c | |||
@@ -3033,6 +3033,7 @@ struct net_device *ath6kl_interface_add(struct ath6kl *ar, char *name, | |||
3033 | vif->wdev.iftype = type; | 3033 | vif->wdev.iftype = type; |
3034 | vif->fw_vif_idx = fw_vif_idx; | 3034 | vif->fw_vif_idx = fw_vif_idx; |
3035 | vif->nw_type = vif->next_mode = nw_type; | 3035 | vif->nw_type = vif->next_mode = nw_type; |
3036 | vif->listen_intvl_t = ATH6KL_DEFAULT_LISTEN_INTVAL; | ||
3036 | 3037 | ||
3037 | memcpy(ndev->dev_addr, ar->mac_addr, ETH_ALEN); | 3038 | memcpy(ndev->dev_addr, ar->mac_addr, ETH_ALEN); |
3038 | if (fw_vif_idx != 0) | 3039 | if (fw_vif_idx != 0) |
diff --git a/drivers/net/wireless/ath/ath6kl/core.c b/drivers/net/wireless/ath/ath6kl/core.c index bc3a41447b8e..2dc05479b512 100644 --- a/drivers/net/wireless/ath/ath6kl/core.c +++ b/drivers/net/wireless/ath/ath6kl/core.c | |||
@@ -228,9 +228,7 @@ struct ath6kl *ath6kl_core_create(struct device *dev) | |||
228 | clear_bit(SKIP_SCAN, &ar->flag); | 228 | clear_bit(SKIP_SCAN, &ar->flag); |
229 | clear_bit(DESTROY_IN_PROGRESS, &ar->flag); | 229 | clear_bit(DESTROY_IN_PROGRESS, &ar->flag); |
230 | 230 | ||
231 | ar->listen_intvl_b = A_DEFAULT_LISTEN_INTERVAL; | ||
232 | ar->tx_pwr = 0; | 231 | ar->tx_pwr = 0; |
233 | |||
234 | ar->intra_bss = 1; | 232 | ar->intra_bss = 1; |
235 | ar->lrssi_roam_threshold = DEF_LRSSI_ROAM_THRESHOLD; | 233 | ar->lrssi_roam_threshold = DEF_LRSSI_ROAM_THRESHOLD; |
236 | 234 | ||
diff --git a/drivers/net/wireless/ath/ath6kl/core.h b/drivers/net/wireless/ath/ath6kl/core.h index 31f13d7a0430..727267eb8313 100644 --- a/drivers/net/wireless/ath/ath6kl/core.h +++ b/drivers/net/wireless/ath/ath6kl/core.h | |||
@@ -60,8 +60,6 @@ | |||
60 | #define MAX_DEFAULT_SEND_QUEUE_DEPTH (MAX_DEF_COOKIE_NUM / WMM_NUM_AC) | 60 | #define MAX_DEFAULT_SEND_QUEUE_DEPTH (MAX_DEF_COOKIE_NUM / WMM_NUM_AC) |
61 | 61 | ||
62 | #define DISCON_TIMER_INTVAL 10000 /* in msec */ | 62 | #define DISCON_TIMER_INTVAL 10000 /* in msec */ |
63 | #define A_DEFAULT_LISTEN_INTERVAL 1 /* beacon intervals */ | ||
64 | #define A_MAX_WOW_LISTEN_INTERVAL 1000 | ||
65 | 63 | ||
66 | /* Channel dwell time in fg scan */ | 64 | /* Channel dwell time in fg scan */ |
67 | #define ATH6KL_FG_SCAN_INTERVAL 50 /* in ms */ | 65 | #define ATH6KL_FG_SCAN_INTERVAL 50 /* in ms */ |
@@ -187,6 +185,8 @@ struct ath6kl_fw_ie { | |||
187 | 185 | ||
188 | #define MBOX_YIELD_LIMIT 99 | 186 | #define MBOX_YIELD_LIMIT 99 |
189 | 187 | ||
188 | #define ATH6KL_DEFAULT_LISTEN_INTVAL 100 /* in TUs */ | ||
189 | |||
190 | /* configuration lags */ | 190 | /* configuration lags */ |
191 | /* | 191 | /* |
192 | * ATH6KL_CONF_IGNORE_ERP_BARKER: Ignore the barker premable in | 192 | * ATH6KL_CONF_IGNORE_ERP_BARKER: Ignore the barker premable in |
@@ -510,6 +510,7 @@ struct ath6kl_vif { | |||
510 | bool probe_req_report; | 510 | bool probe_req_report; |
511 | u16 next_chan; | 511 | u16 next_chan; |
512 | u16 assoc_bss_beacon_int; | 512 | u16 assoc_bss_beacon_int; |
513 | u16 listen_intvl_t; | ||
513 | u8 assoc_bss_dtim_period; | 514 | u8 assoc_bss_dtim_period; |
514 | struct net_device_stats net_stats; | 515 | struct net_device_stats net_stats; |
515 | struct target_stats target_stats; | 516 | struct target_stats target_stats; |
@@ -569,7 +570,6 @@ struct ath6kl { | |||
569 | u8 avail_idx_map; | 570 | u8 avail_idx_map; |
570 | spinlock_t lock; | 571 | spinlock_t lock; |
571 | struct semaphore sem; | 572 | struct semaphore sem; |
572 | u16 listen_intvl_b; | ||
573 | u8 lrssi_roam_threshold; | 573 | u8 lrssi_roam_threshold; |
574 | struct ath6kl_version version; | 574 | struct ath6kl_version version; |
575 | u32 target_type; | 575 | u32 target_type; |
diff --git a/drivers/net/wireless/ath/ath6kl/debug.c b/drivers/net/wireless/ath/ath6kl/debug.c index 645f923f79b5..56e1cb170299 100755 --- a/drivers/net/wireless/ath/ath6kl/debug.c +++ b/drivers/net/wireless/ath/ath6kl/debug.c | |||
@@ -1631,12 +1631,12 @@ static ssize_t ath6kl_listen_int_write(struct file *file, | |||
1631 | if (kstrtou16(buf, 0, &listen_interval)) | 1631 | if (kstrtou16(buf, 0, &listen_interval)) |
1632 | return -EINVAL; | 1632 | return -EINVAL; |
1633 | 1633 | ||
1634 | if ((listen_interval < 1) || (listen_interval > 50)) | 1634 | if ((listen_interval < 15) || (listen_interval > 3000)) |
1635 | return -EINVAL; | 1635 | return -EINVAL; |
1636 | 1636 | ||
1637 | ar->listen_intvl_b = listen_interval; | 1637 | vif->listen_intvl_t = listen_interval; |
1638 | ath6kl_wmi_listeninterval_cmd(ar->wmi, vif->fw_vif_idx, 0, | 1638 | ath6kl_wmi_listeninterval_cmd(ar->wmi, vif->fw_vif_idx, |
1639 | ar->listen_intvl_b); | 1639 | vif->listen_intvl_t, 0); |
1640 | 1640 | ||
1641 | return count; | 1641 | return count; |
1642 | } | 1642 | } |
@@ -1646,10 +1646,15 @@ static ssize_t ath6kl_listen_int_read(struct file *file, | |||
1646 | size_t count, loff_t *ppos) | 1646 | size_t count, loff_t *ppos) |
1647 | { | 1647 | { |
1648 | struct ath6kl *ar = file->private_data; | 1648 | struct ath6kl *ar = file->private_data; |
1649 | struct ath6kl_vif *vif; | ||
1649 | char buf[32]; | 1650 | char buf[32]; |
1650 | int len; | 1651 | int len; |
1651 | 1652 | ||
1652 | len = scnprintf(buf, sizeof(buf), "%u\n", ar->listen_intvl_b); | 1653 | vif = ath6kl_vif_first(ar); |
1654 | if (!vif) | ||
1655 | return -EIO; | ||
1656 | |||
1657 | len = scnprintf(buf, sizeof(buf), "%u\n", vif->listen_intvl_t); | ||
1653 | 1658 | ||
1654 | return simple_read_from_buffer(user_buf, count, ppos, buf, len); | 1659 | return simple_read_from_buffer(user_buf, count, ppos, buf, len); |
1655 | } | 1660 | } |
diff --git a/drivers/net/wireless/ath/ath6kl/main.c b/drivers/net/wireless/ath/ath6kl/main.c index f804cf135a60..bd8388c9db75 100644 --- a/drivers/net/wireless/ath/ath6kl/main.c +++ b/drivers/net/wireless/ath/ath6kl/main.c | |||
@@ -599,11 +599,9 @@ void ath6kl_connect_event(struct ath6kl_vif *vif, u16 channel, u8 *bssid, | |||
599 | memcpy(vif->bssid, bssid, sizeof(vif->bssid)); | 599 | memcpy(vif->bssid, bssid, sizeof(vif->bssid)); |
600 | vif->bss_ch = channel; | 600 | vif->bss_ch = channel; |
601 | 601 | ||
602 | if ((vif->nw_type == INFRA_NETWORK)) { | 602 | if ((vif->nw_type == INFRA_NETWORK)) |
603 | ar->listen_intvl_b = listen_int; | ||
604 | ath6kl_wmi_listeninterval_cmd(ar->wmi, vif->fw_vif_idx, | 603 | ath6kl_wmi_listeninterval_cmd(ar->wmi, vif->fw_vif_idx, |
605 | 0, ar->listen_intvl_b); | 604 | vif->listen_intvl_t, 0); |
606 | } | ||
607 | 605 | ||
608 | netif_wake_queue(vif->ndev); | 606 | netif_wake_queue(vif->ndev); |
609 | 607 | ||