aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/trace.h
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2014-11-09 11:50:19 -0500
committerJohannes Berg <johannes.berg@intel.com>2014-11-19 12:45:21 -0500
commita7a6bdd0670feb8bfc26d41cda32b6064dbca50e (patch)
treed343591f508af2d1a15f5b265e7ddaf182e34129 /net/mac80211/trace.h
parent53837584438f8899e061ada4663ae1d09b49b96a (diff)
mac80211: introduce TDLS channel switch ops
Implement the cfg80211 TDLS channel switch ops and introduce new mac80211 ones for low-level drivers. Verify low-level driver support for the new ops when using the relevant wiphy feature bit. Also verify the peer supports channel switching before passing the command down. Add a new STA flag to track the off-channel state with the TDLS peer and make sure to cancel the channel-switch if the peer STA is unexpectedly removed. Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/trace.h')
-rw-r--r--net/mac80211/trace.h57
1 files changed, 57 insertions, 0 deletions
diff --git a/net/mac80211/trace.h b/net/mac80211/trace.h
index 96847e788488..c0c0fcace9d8 100644
--- a/net/mac80211/trace.h
+++ b/net/mac80211/trace.h
@@ -2196,6 +2196,63 @@ TRACE_EVENT(drv_get_txpower,
2196 ) 2196 )
2197); 2197);
2198 2198
2199TRACE_EVENT(drv_tdls_channel_switch,
2200 TP_PROTO(struct ieee80211_local *local,
2201 struct ieee80211_sub_if_data *sdata,
2202 struct ieee80211_sta *sta, u8 oper_class,
2203 struct cfg80211_chan_def *chandef),
2204
2205 TP_ARGS(local, sdata, sta, oper_class, chandef),
2206
2207 TP_STRUCT__entry(
2208 LOCAL_ENTRY
2209 VIF_ENTRY
2210 STA_ENTRY
2211 __field(u8, oper_class)
2212 CHANDEF_ENTRY
2213 ),
2214
2215 TP_fast_assign(
2216 LOCAL_ASSIGN;
2217 VIF_ASSIGN;
2218 STA_ASSIGN;
2219 __entry->oper_class = oper_class;
2220 CHANDEF_ASSIGN(chandef)
2221 ),
2222
2223 TP_printk(
2224 LOCAL_PR_FMT VIF_PR_FMT " tdls channel switch to"
2225 CHANDEF_PR_FMT " oper_class:%d " STA_PR_FMT,
2226 LOCAL_PR_ARG, VIF_PR_ARG, CHANDEF_PR_ARG, __entry->oper_class,
2227 STA_PR_ARG
2228 )
2229);
2230
2231TRACE_EVENT(drv_tdls_cancel_channel_switch,
2232 TP_PROTO(struct ieee80211_local *local,
2233 struct ieee80211_sub_if_data *sdata,
2234 struct ieee80211_sta *sta),
2235
2236 TP_ARGS(local, sdata, sta),
2237
2238 TP_STRUCT__entry(
2239 LOCAL_ENTRY
2240 VIF_ENTRY
2241 STA_ENTRY
2242 ),
2243
2244 TP_fast_assign(
2245 LOCAL_ASSIGN;
2246 VIF_ASSIGN;
2247 STA_ASSIGN;
2248 ),
2249
2250 TP_printk(
2251 LOCAL_PR_FMT VIF_PR_FMT
2252 " tdls cancel channel switch with " STA_PR_FMT,
2253 LOCAL_PR_ARG, VIF_PR_ARG, STA_PR_ARG
2254 )
2255);
2199 2256
2200#ifdef CONFIG_MAC80211_MESSAGE_TRACING 2257#ifdef CONFIG_MAC80211_MESSAGE_TRACING
2201#undef TRACE_SYSTEM 2258#undef TRACE_SYSTEM