aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2011-09-21 07:06:11 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-09-27 14:27:48 -0400
commit37a41b4affa33bb237d3692bf51f1b5ebcaf29d8 (patch)
tree0201e166912d12bd8270b2117b11717756cfd5db /drivers/net/wireless
parent129321804e36721e71fadcab5b475bd37bf53044 (diff)
mac80211: add ieee80211_vif param to tsf functions
TSF can be kept per vif. Add ieee80211_vif param to set/get/reset_tsf, and move the debugfs entries to the per-vif directory. Update all the drivers that implement these callbacks. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/adm8211.c3
-rw-r--r--drivers/net/wireless/ath/ath5k/mac80211-ops.c6
-rw-r--r--drivers/net/wireless/ath/ath9k/htc_drv_main.c9
-rw-r--r--drivers/net/wireless/ath/ath9k/main.c8
-rw-r--r--drivers/net/wireless/ath/carl9170/main.c3
-rw-r--r--drivers/net/wireless/b43/main.c5
-rw-r--r--drivers/net/wireless/iwlegacy/iwl-core.c3
-rw-r--r--drivers/net/wireless/iwlegacy/iwl-core.h3
-rw-r--r--drivers/net/wireless/rt2x00/rt2400pci.c5
-rw-r--r--drivers/net/wireless/rt2x00/rt2500pci.c3
-rw-r--r--drivers/net/wireless/rt2x00/rt2800lib.c2
-rw-r--r--drivers/net/wireless/rt2x00/rt2800lib.h2
-rw-r--r--drivers/net/wireless/rt2x00/rt61pci.c2
-rw-r--r--drivers/net/wireless/rt2x00/rt73usb.c2
-rw-r--r--drivers/net/wireless/rtl818x/rtl8180/dev.c5
-rw-r--r--drivers/net/wireless/rtl818x/rtl8187/dev.c2
-rw-r--r--drivers/net/wireless/rtlwifi/core.c8
-rw-r--r--drivers/net/wireless/wl12xx/main.c3
-rw-r--r--drivers/net/wireless/zd1211rw/zd_mac.c2
19 files changed, 46 insertions, 30 deletions
diff --git a/drivers/net/wireless/adm8211.c b/drivers/net/wireless/adm8211.c
index 43ebc44fc82c..3b752d9fb3cd 100644
--- a/drivers/net/wireless/adm8211.c
+++ b/drivers/net/wireless/adm8211.c
@@ -1249,7 +1249,8 @@ static int adm8211_hw_reset(struct ieee80211_hw *dev)
1249 return 0; 1249 return 0;
1250} 1250}
1251 1251
1252static u64 adm8211_get_tsft(struct ieee80211_hw *dev) 1252static u64 adm8211_get_tsft(struct ieee80211_hw *dev,
1253 struct ieee80211_vif *vif)
1253{ 1254{
1254 struct adm8211_priv *priv = dev->priv; 1255 struct adm8211_priv *priv = dev->priv;
1255 u32 tsftl; 1256 u32 tsftl;
diff --git a/drivers/net/wireless/ath/ath5k/mac80211-ops.c b/drivers/net/wireless/ath/ath5k/mac80211-ops.c
index 0560234ec3f6..bba4f6fcf7e2 100644
--- a/drivers/net/wireless/ath/ath5k/mac80211-ops.c
+++ b/drivers/net/wireless/ath/ath5k/mac80211-ops.c
@@ -602,7 +602,7 @@ ath5k_conf_tx(struct ieee80211_hw *hw, u16 queue,
602 602
603 603
604static u64 604static u64
605ath5k_get_tsf(struct ieee80211_hw *hw) 605ath5k_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
606{ 606{
607 struct ath5k_hw *ah = hw->priv; 607 struct ath5k_hw *ah = hw->priv;
608 608
@@ -611,7 +611,7 @@ ath5k_get_tsf(struct ieee80211_hw *hw)
611 611
612 612
613static void 613static void
614ath5k_set_tsf(struct ieee80211_hw *hw, u64 tsf) 614ath5k_set_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif, u64 tsf)
615{ 615{
616 struct ath5k_hw *ah = hw->priv; 616 struct ath5k_hw *ah = hw->priv;
617 617
@@ -620,7 +620,7 @@ ath5k_set_tsf(struct ieee80211_hw *hw, u64 tsf)
620 620
621 621
622static void 622static void
623ath5k_reset_tsf(struct ieee80211_hw *hw) 623ath5k_reset_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
624{ 624{
625 struct ath5k_hw *ah = hw->priv; 625 struct ath5k_hw *ah = hw->priv;
626 626
diff --git a/drivers/net/wireless/ath/ath9k/htc_drv_main.c b/drivers/net/wireless/ath/ath9k/htc_drv_main.c
index 495fdf680a6c..17dbbd9d2f53 100644
--- a/drivers/net/wireless/ath/ath9k/htc_drv_main.c
+++ b/drivers/net/wireless/ath/ath9k/htc_drv_main.c
@@ -1563,7 +1563,8 @@ static void ath9k_htc_bss_info_changed(struct ieee80211_hw *hw,
1563 mutex_unlock(&priv->mutex); 1563 mutex_unlock(&priv->mutex);
1564} 1564}
1565 1565
1566static u64 ath9k_htc_get_tsf(struct ieee80211_hw *hw) 1566static u64 ath9k_htc_get_tsf(struct ieee80211_hw *hw,
1567 struct ieee80211_vif *vif)
1567{ 1568{
1568 struct ath9k_htc_priv *priv = hw->priv; 1569 struct ath9k_htc_priv *priv = hw->priv;
1569 u64 tsf; 1570 u64 tsf;
@@ -1577,7 +1578,8 @@ static u64 ath9k_htc_get_tsf(struct ieee80211_hw *hw)
1577 return tsf; 1578 return tsf;
1578} 1579}
1579 1580
1580static void ath9k_htc_set_tsf(struct ieee80211_hw *hw, u64 tsf) 1581static void ath9k_htc_set_tsf(struct ieee80211_hw *hw,
1582 struct ieee80211_vif *vif, u64 tsf)
1581{ 1583{
1582 struct ath9k_htc_priv *priv = hw->priv; 1584 struct ath9k_htc_priv *priv = hw->priv;
1583 1585
@@ -1588,7 +1590,8 @@ static void ath9k_htc_set_tsf(struct ieee80211_hw *hw, u64 tsf)
1588 mutex_unlock(&priv->mutex); 1590 mutex_unlock(&priv->mutex);
1589} 1591}
1590 1592
1591static void ath9k_htc_reset_tsf(struct ieee80211_hw *hw) 1593static void ath9k_htc_reset_tsf(struct ieee80211_hw *hw,
1594 struct ieee80211_vif *vif)
1592{ 1595{
1593 struct ath9k_htc_priv *priv = hw->priv; 1596 struct ath9k_htc_priv *priv = hw->priv;
1594 1597
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index ee39702da5d8..fb803e209760 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -2143,7 +2143,7 @@ static void ath9k_bss_info_changed(struct ieee80211_hw *hw,
2143 ath9k_ps_restore(sc); 2143 ath9k_ps_restore(sc);
2144} 2144}
2145 2145
2146static u64 ath9k_get_tsf(struct ieee80211_hw *hw) 2146static u64 ath9k_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
2147{ 2147{
2148 struct ath_softc *sc = hw->priv; 2148 struct ath_softc *sc = hw->priv;
2149 u64 tsf; 2149 u64 tsf;
@@ -2157,7 +2157,9 @@ static u64 ath9k_get_tsf(struct ieee80211_hw *hw)
2157 return tsf; 2157 return tsf;
2158} 2158}
2159 2159
2160static void ath9k_set_tsf(struct ieee80211_hw *hw, u64 tsf) 2160static void ath9k_set_tsf(struct ieee80211_hw *hw,
2161 struct ieee80211_vif *vif,
2162 u64 tsf)
2161{ 2163{
2162 struct ath_softc *sc = hw->priv; 2164 struct ath_softc *sc = hw->priv;
2163 2165
@@ -2168,7 +2170,7 @@ static void ath9k_set_tsf(struct ieee80211_hw *hw, u64 tsf)
2168 mutex_unlock(&sc->mutex); 2170 mutex_unlock(&sc->mutex);
2169} 2171}
2170 2172
2171static void ath9k_reset_tsf(struct ieee80211_hw *hw) 2173static void ath9k_reset_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
2172{ 2174{
2173 struct ath_softc *sc = hw->priv; 2175 struct ath_softc *sc = hw->priv;
2174 2176
diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
index af351ecd87c4..8b780d6d470f 100644
--- a/drivers/net/wireless/ath/carl9170/main.c
+++ b/drivers/net/wireless/ath/carl9170/main.c
@@ -1078,7 +1078,8 @@ out:
1078 mutex_unlock(&ar->mutex); 1078 mutex_unlock(&ar->mutex);
1079} 1079}
1080 1080
1081static u64 carl9170_op_get_tsf(struct ieee80211_hw *hw) 1081static u64 carl9170_op_get_tsf(struct ieee80211_hw *hw,
1082 struct ieee80211_vif *vif)
1082{ 1083{
1083 struct ar9170 *ar = hw->priv; 1084 struct ar9170 *ar = hw->priv;
1084 struct carl9170_tsf_rsp tsf; 1085 struct carl9170_tsf_rsp tsf;
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index 56fa3a3648c4..559bcd6688ec 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -3599,7 +3599,7 @@ static int b43_op_get_stats(struct ieee80211_hw *hw,
3599 return 0; 3599 return 0;
3600} 3600}
3601 3601
3602static u64 b43_op_get_tsf(struct ieee80211_hw *hw) 3602static u64 b43_op_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
3603{ 3603{
3604 struct b43_wl *wl = hw_to_b43_wl(hw); 3604 struct b43_wl *wl = hw_to_b43_wl(hw);
3605 struct b43_wldev *dev; 3605 struct b43_wldev *dev;
@@ -3618,7 +3618,8 @@ static u64 b43_op_get_tsf(struct ieee80211_hw *hw)
3618 return tsf; 3618 return tsf;
3619} 3619}
3620 3620
3621static void b43_op_set_tsf(struct ieee80211_hw *hw, u64 tsf) 3621static void b43_op_set_tsf(struct ieee80211_hw *hw,
3622 struct ieee80211_vif *vif, u64 tsf)
3622{ 3623{
3623 struct b43_wl *wl = hw_to_b43_wl(hw); 3624 struct b43_wl *wl = hw_to_b43_wl(hw);
3624 struct b43_wldev *dev; 3625 struct b43_wldev *dev;
diff --git a/drivers/net/wireless/iwlegacy/iwl-core.c b/drivers/net/wireless/iwlegacy/iwl-core.c
index 35cd2537e7fd..c4921911c6d1 100644
--- a/drivers/net/wireless/iwlegacy/iwl-core.c
+++ b/drivers/net/wireless/iwlegacy/iwl-core.c
@@ -2220,7 +2220,8 @@ out:
2220} 2220}
2221EXPORT_SYMBOL(iwl_legacy_mac_config); 2221EXPORT_SYMBOL(iwl_legacy_mac_config);
2222 2222
2223void iwl_legacy_mac_reset_tsf(struct ieee80211_hw *hw) 2223void iwl_legacy_mac_reset_tsf(struct ieee80211_hw *hw,
2224 struct ieee80211_vif *vif)
2224{ 2225{
2225 struct iwl_priv *priv = hw->priv; 2226 struct iwl_priv *priv = hw->priv;
2226 unsigned long flags; 2227 unsigned long flags;
diff --git a/drivers/net/wireless/iwlegacy/iwl-core.h b/drivers/net/wireless/iwlegacy/iwl-core.h
index 84da79376ef8..b2df01c8f8f5 100644
--- a/drivers/net/wireless/iwlegacy/iwl-core.h
+++ b/drivers/net/wireless/iwlegacy/iwl-core.h
@@ -620,7 +620,8 @@ static inline const struct ieee80211_supported_band *iwl_get_hw_mode(
620 620
621/* mac80211 handlers */ 621/* mac80211 handlers */
622int iwl_legacy_mac_config(struct ieee80211_hw *hw, u32 changed); 622int iwl_legacy_mac_config(struct ieee80211_hw *hw, u32 changed);
623void iwl_legacy_mac_reset_tsf(struct ieee80211_hw *hw); 623void iwl_legacy_mac_reset_tsf(struct ieee80211_hw *hw,
624 struct ieee80211_vif *vif);
624void iwl_legacy_mac_bss_info_changed(struct ieee80211_hw *hw, 625void iwl_legacy_mac_bss_info_changed(struct ieee80211_hw *hw,
625 struct ieee80211_vif *vif, 626 struct ieee80211_vif *vif,
626 struct ieee80211_bss_conf *bss_conf, 627 struct ieee80211_bss_conf *bss_conf,
diff --git a/drivers/net/wireless/rt2x00/rt2400pci.c b/drivers/net/wireless/rt2x00/rt2400pci.c
index daa32fc9398b..7e9272b8f01d 100644
--- a/drivers/net/wireless/rt2x00/rt2400pci.c
+++ b/drivers/net/wireless/rt2x00/rt2400pci.c
@@ -1239,7 +1239,7 @@ static void rt2400pci_fill_rxdone(struct queue_entry *entry,
1239 * call, we must decrease the higher 32bits with 1 to get 1239 * call, we must decrease the higher 32bits with 1 to get
1240 * to correct value. 1240 * to correct value.
1241 */ 1241 */
1242 tsf = rt2x00dev->ops->hw->get_tsf(rt2x00dev->hw); 1242 tsf = rt2x00dev->ops->hw->get_tsf(rt2x00dev->hw, NULL);
1243 rx_low = rt2x00_get_field32(word4, RXD_W4_RX_END_TIME); 1243 rx_low = rt2x00_get_field32(word4, RXD_W4_RX_END_TIME);
1244 rx_high = upper_32_bits(tsf); 1244 rx_high = upper_32_bits(tsf);
1245 1245
@@ -1673,7 +1673,8 @@ static int rt2400pci_conf_tx(struct ieee80211_hw *hw, u16 queue,
1673 return 0; 1673 return 0;
1674} 1674}
1675 1675
1676static u64 rt2400pci_get_tsf(struct ieee80211_hw *hw) 1676static u64 rt2400pci_get_tsf(struct ieee80211_hw *hw,
1677 struct ieee80211_vif *vif)
1677{ 1678{
1678 struct rt2x00_dev *rt2x00dev = hw->priv; 1679 struct rt2x00_dev *rt2x00dev = hw->priv;
1679 u64 tsf; 1680 u64 tsf;
diff --git a/drivers/net/wireless/rt2x00/rt2500pci.c b/drivers/net/wireless/rt2x00/rt2500pci.c
index b46c3b8866fa..dcc0e1fcca77 100644
--- a/drivers/net/wireless/rt2x00/rt2500pci.c
+++ b/drivers/net/wireless/rt2x00/rt2500pci.c
@@ -1966,7 +1966,8 @@ static int rt2500pci_probe_hw(struct rt2x00_dev *rt2x00dev)
1966/* 1966/*
1967 * IEEE80211 stack callback functions. 1967 * IEEE80211 stack callback functions.
1968 */ 1968 */
1969static u64 rt2500pci_get_tsf(struct ieee80211_hw *hw) 1969static u64 rt2500pci_get_tsf(struct ieee80211_hw *hw,
1970 struct ieee80211_vif *vif)
1970{ 1971{
1971 struct rt2x00_dev *rt2x00dev = hw->priv; 1972 struct rt2x00_dev *rt2x00dev = hw->priv;
1972 u64 tsf; 1973 u64 tsf;
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.c b/drivers/net/wireless/rt2x00/rt2800lib.c
index 31c98509f7e6..9688dd0a7ebd 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.c
+++ b/drivers/net/wireless/rt2x00/rt2800lib.c
@@ -4466,7 +4466,7 @@ int rt2800_conf_tx(struct ieee80211_hw *hw, u16 queue_idx,
4466} 4466}
4467EXPORT_SYMBOL_GPL(rt2800_conf_tx); 4467EXPORT_SYMBOL_GPL(rt2800_conf_tx);
4468 4468
4469u64 rt2800_get_tsf(struct ieee80211_hw *hw) 4469u64 rt2800_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
4470{ 4470{
4471 struct rt2x00_dev *rt2x00dev = hw->priv; 4471 struct rt2x00_dev *rt2x00dev = hw->priv;
4472 u64 tsf; 4472 u64 tsf;
diff --git a/drivers/net/wireless/rt2x00/rt2800lib.h b/drivers/net/wireless/rt2x00/rt2800lib.h
index 7a2511f6785c..6de128e9c612 100644
--- a/drivers/net/wireless/rt2x00/rt2800lib.h
+++ b/drivers/net/wireless/rt2x00/rt2800lib.h
@@ -199,7 +199,7 @@ void rt2800_get_tkip_seq(struct ieee80211_hw *hw, u8 hw_key_idx, u32 *iv32,
199int rt2800_set_rts_threshold(struct ieee80211_hw *hw, u32 value); 199int rt2800_set_rts_threshold(struct ieee80211_hw *hw, u32 value);
200int rt2800_conf_tx(struct ieee80211_hw *hw, u16 queue_idx, 200int rt2800_conf_tx(struct ieee80211_hw *hw, u16 queue_idx,
201 const struct ieee80211_tx_queue_params *params); 201 const struct ieee80211_tx_queue_params *params);
202u64 rt2800_get_tsf(struct ieee80211_hw *hw); 202u64 rt2800_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
203int rt2800_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif, 203int rt2800_ampdu_action(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
204 enum ieee80211_ampdu_mlme_action action, 204 enum ieee80211_ampdu_mlme_action action,
205 struct ieee80211_sta *sta, u16 tid, u16 *ssn, 205 struct ieee80211_sta *sta, u16 tid, u16 *ssn,
diff --git a/drivers/net/wireless/rt2x00/rt61pci.c b/drivers/net/wireless/rt2x00/rt61pci.c
index 058ef4b19d1d..6b6a8e2dcddc 100644
--- a/drivers/net/wireless/rt2x00/rt61pci.c
+++ b/drivers/net/wireless/rt2x00/rt61pci.c
@@ -2940,7 +2940,7 @@ static int rt61pci_conf_tx(struct ieee80211_hw *hw, u16 queue_idx,
2940 return 0; 2940 return 0;
2941} 2941}
2942 2942
2943static u64 rt61pci_get_tsf(struct ieee80211_hw *hw) 2943static u64 rt61pci_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
2944{ 2944{
2945 struct rt2x00_dev *rt2x00dev = hw->priv; 2945 struct rt2x00_dev *rt2x00dev = hw->priv;
2946 u64 tsf; 2946 u64 tsf;
diff --git a/drivers/net/wireless/rt2x00/rt73usb.c b/drivers/net/wireless/rt2x00/rt73usb.c
index 0baeb894f093..6f51e39f5595 100644
--- a/drivers/net/wireless/rt2x00/rt73usb.c
+++ b/drivers/net/wireless/rt2x00/rt73usb.c
@@ -2279,7 +2279,7 @@ static int rt73usb_conf_tx(struct ieee80211_hw *hw, u16 queue_idx,
2279 return 0; 2279 return 0;
2280} 2280}
2281 2281
2282static u64 rt73usb_get_tsf(struct ieee80211_hw *hw) 2282static u64 rt73usb_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
2283{ 2283{
2284 struct rt2x00_dev *rt2x00dev = hw->priv; 2284 struct rt2x00_dev *rt2x00dev = hw->priv;
2285 u64 tsf; 2285 u64 tsf;
diff --git a/drivers/net/wireless/rtl818x/rtl8180/dev.c b/drivers/net/wireless/rtl818x/rtl8180/dev.c
index 66b29dc07cc3..0082015ff664 100644
--- a/drivers/net/wireless/rtl818x/rtl8180/dev.c
+++ b/drivers/net/wireless/rtl818x/rtl8180/dev.c
@@ -669,7 +669,8 @@ static void rtl8180_stop(struct ieee80211_hw *dev)
669 rtl8180_free_tx_ring(dev, i); 669 rtl8180_free_tx_ring(dev, i);
670} 670}
671 671
672static u64 rtl8180_get_tsf(struct ieee80211_hw *dev) 672static u64 rtl8180_get_tsf(struct ieee80211_hw *dev,
673 struct ieee80211_vif *vif)
673{ 674{
674 struct rtl8180_priv *priv = dev->priv; 675 struct rtl8180_priv *priv = dev->priv;
675 676
@@ -701,7 +702,7 @@ static void rtl8180_beacon_work(struct work_struct *work)
701 * TODO: make hardware update beacon timestamp 702 * TODO: make hardware update beacon timestamp
702 */ 703 */
703 mgmt = (struct ieee80211_mgmt *)skb->data; 704 mgmt = (struct ieee80211_mgmt *)skb->data;
704 mgmt->u.beacon.timestamp = cpu_to_le64(rtl8180_get_tsf(dev)); 705 mgmt->u.beacon.timestamp = cpu_to_le64(rtl8180_get_tsf(dev, vif));
705 706
706 /* TODO: use actual beacon queue */ 707 /* TODO: use actual beacon queue */
707 skb_set_queue_mapping(skb, 0); 708 skb_set_queue_mapping(skb, 0);
diff --git a/drivers/net/wireless/rtl818x/rtl8187/dev.c b/drivers/net/wireless/rtl818x/rtl8187/dev.c
index 1e0be14d10d4..f5afa155ce91 100644
--- a/drivers/net/wireless/rtl818x/rtl8187/dev.c
+++ b/drivers/net/wireless/rtl818x/rtl8187/dev.c
@@ -1277,7 +1277,7 @@ static int rtl8187_conf_tx(struct ieee80211_hw *dev, u16 queue,
1277 return 0; 1277 return 0;
1278} 1278}
1279 1279
1280static u64 rtl8187_get_tsf(struct ieee80211_hw *dev) 1280static u64 rtl8187_get_tsf(struct ieee80211_hw *dev, struct ieee80211_vif *vif)
1281{ 1281{
1282 struct rtl8187_priv *priv = dev->priv; 1282 struct rtl8187_priv *priv = dev->priv;
1283 1283
diff --git a/drivers/net/wireless/rtlwifi/core.c b/drivers/net/wireless/rtlwifi/core.c
index 04c4e9eb6ee6..21e40f62a8d7 100644
--- a/drivers/net/wireless/rtlwifi/core.c
+++ b/drivers/net/wireless/rtlwifi/core.c
@@ -775,7 +775,7 @@ out:
775 mutex_unlock(&rtlpriv->locks.conf_mutex); 775 mutex_unlock(&rtlpriv->locks.conf_mutex);
776} 776}
777 777
778static u64 rtl_op_get_tsf(struct ieee80211_hw *hw) 778static u64 rtl_op_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
779{ 779{
780 struct rtl_priv *rtlpriv = rtl_priv(hw); 780 struct rtl_priv *rtlpriv = rtl_priv(hw);
781 u64 tsf; 781 u64 tsf;
@@ -784,7 +784,8 @@ static u64 rtl_op_get_tsf(struct ieee80211_hw *hw)
784 return tsf; 784 return tsf;
785} 785}
786 786
787static void rtl_op_set_tsf(struct ieee80211_hw *hw, u64 tsf) 787static void rtl_op_set_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif,
788 u64 tsf)
788{ 789{
789 struct rtl_priv *rtlpriv = rtl_priv(hw); 790 struct rtl_priv *rtlpriv = rtl_priv(hw);
790 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); 791 struct rtl_mac *mac = rtl_mac(rtl_priv(hw));
@@ -794,7 +795,8 @@ static void rtl_op_set_tsf(struct ieee80211_hw *hw, u64 tsf)
794 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_CORRECT_TSF, (u8 *) (&bibss)); 795 rtlpriv->cfg->ops->set_hw_reg(hw, HW_VAR_CORRECT_TSF, (u8 *) (&bibss));
795} 796}
796 797
797static void rtl_op_reset_tsf(struct ieee80211_hw *hw) 798static void rtl_op_reset_tsf(struct ieee80211_hw *hw,
799 struct ieee80211_vif *vif)
798{ 800{
799 struct rtl_priv *rtlpriv = rtl_priv(hw); 801 struct rtl_priv *rtlpriv = rtl_priv(hw);
800 u8 tmp = 0; 802 u8 tmp = 0;
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c
index a51dd0ed6d2d..7d409b0f3357 100644
--- a/drivers/net/wireless/wl12xx/main.c
+++ b/drivers/net/wireless/wl12xx/main.c
@@ -3815,7 +3815,8 @@ out:
3815 return ret; 3815 return ret;
3816} 3816}
3817 3817
3818static u64 wl1271_op_get_tsf(struct ieee80211_hw *hw) 3818static u64 wl1271_op_get_tsf(struct ieee80211_hw *hw,
3819 struct ieee80211_vif *vif)
3819{ 3820{
3820 3821
3821 struct wl1271 *wl = hw->priv; 3822 struct wl1271 *wl = hw->priv;
diff --git a/drivers/net/wireless/zd1211rw/zd_mac.c b/drivers/net/wireless/zd1211rw/zd_mac.c
index cabfae1e70b1..0a70149df3fc 100644
--- a/drivers/net/wireless/zd1211rw/zd_mac.c
+++ b/drivers/net/wireless/zd1211rw/zd_mac.c
@@ -1332,7 +1332,7 @@ static void zd_op_bss_info_changed(struct ieee80211_hw *hw,
1332 } 1332 }
1333} 1333}
1334 1334
1335static u64 zd_op_get_tsf(struct ieee80211_hw *hw) 1335static u64 zd_op_get_tsf(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
1336{ 1336{
1337 struct zd_mac *mac = zd_hw_mac(hw); 1337 struct zd_mac *mac = zd_hw_mac(hw);
1338 return zd_chip_get_tsf(&mac->chip); 1338 return zd_chip_get_tsf(&mac->chip);