driver-ops.h (020abf03cd659388f94cb328e1e1df0656e0d7ff) driver-ops.h (79f460ca49d8d5700756ab7071c951311c7f29cc)
1#ifndef __MAC80211_DRIVER_OPS
2#define __MAC80211_DRIVER_OPS
3
4#include <net/mac80211.h>
5#include "ieee80211_i.h"
6#include "driver-trace.h"
7
8static inline void drv_tx(struct ieee80211_local *local, struct sk_buff *skb)

--- 27 unchanged lines hidden (view full) ---

36 tasklet_disable(&local->tasklet);
37 tasklet_enable(&local->tasklet);
38
39 barrier();
40
41 local->started = false;
42}
43
1#ifndef __MAC80211_DRIVER_OPS
2#define __MAC80211_DRIVER_OPS
3
4#include <net/mac80211.h>
5#include "ieee80211_i.h"
6#include "driver-trace.h"
7
8static inline void drv_tx(struct ieee80211_local *local, struct sk_buff *skb)

--- 27 unchanged lines hidden (view full) ---

36 tasklet_disable(&local->tasklet);
37 tasklet_enable(&local->tasklet);
38
39 barrier();
40
41 local->started = false;
42}
43
44#ifdef CONFIG_PM
45static inline int drv_suspend(struct ieee80211_local *local,
46 struct cfg80211_wowlan *wowlan)
47{
48 int ret;
49
50 might_sleep();
51
52 trace_drv_suspend(local);
53 ret = local->ops->suspend(&local->hw, wowlan);
54 trace_drv_return_int(local, ret);
55 return ret;
56}
57
58static inline int drv_resume(struct ieee80211_local *local)
59{
60 int ret;
61
62 might_sleep();
63
64 trace_drv_resume(local);
65 ret = local->ops->resume(&local->hw);
66 trace_drv_return_int(local, ret);
67 return ret;
68}
69#endif
70
44static inline int drv_add_interface(struct ieee80211_local *local,
45 struct ieee80211_vif *vif)
46{
47 int ret;
48
49 might_sleep();
50
51 trace_drv_add_interface(local, vif_to_sdata(vif));

--- 128 unchanged lines hidden (view full) ---

180static inline int drv_hw_scan(struct ieee80211_local *local,
181 struct ieee80211_sub_if_data *sdata,
182 struct cfg80211_scan_request *req)
183{
184 int ret;
185
186 might_sleep();
187
71static inline int drv_add_interface(struct ieee80211_local *local,
72 struct ieee80211_vif *vif)
73{
74 int ret;
75
76 might_sleep();
77
78 trace_drv_add_interface(local, vif_to_sdata(vif));

--- 128 unchanged lines hidden (view full) ---

207static inline int drv_hw_scan(struct ieee80211_local *local,
208 struct ieee80211_sub_if_data *sdata,
209 struct cfg80211_scan_request *req)
210{
211 int ret;
212
213 might_sleep();
214
188 trace_drv_hw_scan(local, sdata, req);
215 trace_drv_hw_scan(local, sdata);
189 ret = local->ops->hw_scan(&local->hw, &sdata->vif, req);
190 trace_drv_return_int(local, ret);
191 return ret;
192}
193
216 ret = local->ops->hw_scan(&local->hw, &sdata->vif, req);
217 trace_drv_return_int(local, ret);
218 return ret;
219}
220
221static inline int
222drv_sched_scan_start(struct ieee80211_local *local,
223 struct ieee80211_sub_if_data *sdata,
224 struct cfg80211_sched_scan_request *req,
225 struct ieee80211_sched_scan_ies *ies)
226{
227 int ret;
228
229 might_sleep();
230
231 trace_drv_sched_scan_start(local, sdata);
232 ret = local->ops->sched_scan_start(&local->hw, &sdata->vif,
233 req, ies);
234 trace_drv_return_int(local, ret);
235 return ret;
236}
237
238static inline void drv_sched_scan_stop(struct ieee80211_local *local,
239 struct ieee80211_sub_if_data *sdata)
240{
241 might_sleep();
242
243 trace_drv_sched_scan_stop(local, sdata);
244 local->ops->sched_scan_stop(&local->hw, &sdata->vif);
245 trace_drv_return_void(local);
246}
247
194static inline void drv_sw_scan_start(struct ieee80211_local *local)
195{
196 might_sleep();
197
198 trace_drv_sw_scan_start(local);
199 if (local->ops->sw_scan_start)
200 local->ops->sw_scan_start(&local->hw);
201 trace_drv_return_void(local);

--- 345 unchanged lines hidden (view full) ---

547 might_sleep();
548
549 trace_drv_get_ringparam(local, tx, tx_max, rx, rx_max);
550 if (local->ops->get_ringparam)
551 local->ops->get_ringparam(&local->hw, tx, tx_max, rx, rx_max);
552 trace_drv_return_void(local);
553}
554
248static inline void drv_sw_scan_start(struct ieee80211_local *local)
249{
250 might_sleep();
251
252 trace_drv_sw_scan_start(local);
253 if (local->ops->sw_scan_start)
254 local->ops->sw_scan_start(&local->hw);
255 trace_drv_return_void(local);

--- 345 unchanged lines hidden (view full) ---

601 might_sleep();
602
603 trace_drv_get_ringparam(local, tx, tx_max, rx, rx_max);
604 if (local->ops->get_ringparam)
605 local->ops->get_ringparam(&local->hw, tx, tx_max, rx, rx_max);
606 trace_drv_return_void(local);
607}
608
609static inline bool drv_tx_frames_pending(struct ieee80211_local *local)
610{
611 bool ret = false;
612
613 might_sleep();
614
615 trace_drv_tx_frames_pending(local);
616 if (local->ops->tx_frames_pending)
617 ret = local->ops->tx_frames_pending(&local->hw);
618 trace_drv_return_bool(local, ret);
619
620 return ret;
621}
622
623static inline int drv_set_bitrate_mask(struct ieee80211_local *local,
624 struct ieee80211_sub_if_data *sdata,
625 const struct cfg80211_bitrate_mask *mask)
626{
627 int ret = -EOPNOTSUPP;
628
629 might_sleep();
630
631 trace_drv_set_bitrate_mask(local, sdata, mask);
632 if (local->ops->set_bitrate_mask)
633 ret = local->ops->set_bitrate_mask(&local->hw,
634 &sdata->vif, mask);
635 trace_drv_return_int(local, ret);
636
637 return ret;
638}
639
555#endif /* __MAC80211_DRIVER_OPS */
640#endif /* __MAC80211_DRIVER_OPS */