mac80211: Use a cfg80211_chan_def in ieee80211_hw_conf_chan
Drivers that don't use chanctxes cannot perform VHT association because they still use a "backward compatibility" pair of {ieee80211_channel, nl80211_channel_type} in ieee80211_conf and ieee80211_local. Signed-off-by: Karl Beldan <karl.beldan@rivierawaves.com> [fix kernel-doc] Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:

committed by
Johannes Berg

parent
219c38674c
commit
675a0b049a
@@ -28,27 +28,27 @@
|
||||
#define VIF_PR_FMT " vif:%s(%d%s)"
|
||||
#define VIF_PR_ARG __get_str(vif_name), __entry->vif_type, __entry->p2p ? "/p2p" : ""
|
||||
|
||||
#define CHANDEF_ENTRY __field(u32, control_freq) \
|
||||
__field(u32, chan_width) \
|
||||
__field(u32, center_freq1) \
|
||||
#define CHANDEF_ENTRY __field(u32, control_freq) \
|
||||
__field(u32, chan_width) \
|
||||
__field(u32, center_freq1) \
|
||||
__field(u32, center_freq2)
|
||||
#define CHANDEF_ASSIGN(c) \
|
||||
__entry->control_freq = (c)->chan->center_freq; \
|
||||
__entry->chan_width = (c)->width; \
|
||||
__entry->center_freq1 = (c)->center_freq1; \
|
||||
#define CHANDEF_ASSIGN(c) \
|
||||
__entry->control_freq = (c)->chan ? (c)->chan->center_freq : 0; \
|
||||
__entry->chan_width = (c)->width; \
|
||||
__entry->center_freq1 = (c)->center_freq1; \
|
||||
__entry->center_freq2 = (c)->center_freq2;
|
||||
#define CHANDEF_PR_FMT " control:%d MHz width:%d center: %d/%d MHz"
|
||||
#define CHANDEF_PR_ARG __entry->control_freq, __entry->chan_width, \
|
||||
#define CHANDEF_PR_ARG __entry->control_freq, __entry->chan_width, \
|
||||
__entry->center_freq1, __entry->center_freq2
|
||||
|
||||
#define CHANCTX_ENTRY CHANDEF_ENTRY \
|
||||
__field(u8, rx_chains_static) \
|
||||
#define CHANCTX_ENTRY CHANDEF_ENTRY \
|
||||
__field(u8, rx_chains_static) \
|
||||
__field(u8, rx_chains_dynamic)
|
||||
#define CHANCTX_ASSIGN CHANDEF_ASSIGN(&ctx->conf.def) \
|
||||
__entry->rx_chains_static = ctx->conf.rx_chains_static; \
|
||||
#define CHANCTX_ASSIGN CHANDEF_ASSIGN(&ctx->conf.def) \
|
||||
__entry->rx_chains_static = ctx->conf.rx_chains_static; \
|
||||
__entry->rx_chains_dynamic = ctx->conf.rx_chains_dynamic
|
||||
#define CHANCTX_PR_FMT CHANDEF_PR_FMT " chains:%d/%d"
|
||||
#define CHANCTX_PR_ARG CHANDEF_PR_ARG, \
|
||||
#define CHANCTX_PR_ARG CHANDEF_PR_ARG, \
|
||||
__entry->rx_chains_static, __entry->rx_chains_dynamic
|
||||
|
||||
|
||||
@@ -286,8 +286,7 @@ TRACE_EVENT(drv_config,
|
||||
__field(u16, listen_interval)
|
||||
__field(u8, long_frame_max_tx_count)
|
||||
__field(u8, short_frame_max_tx_count)
|
||||
__field(int, center_freq)
|
||||
__field(int, channel_type)
|
||||
CHANDEF_ENTRY
|
||||
__field(int, smps)
|
||||
),
|
||||
|
||||
@@ -303,15 +302,13 @@ TRACE_EVENT(drv_config,
|
||||
local->hw.conf.long_frame_max_tx_count;
|
||||
__entry->short_frame_max_tx_count =
|
||||
local->hw.conf.short_frame_max_tx_count;
|
||||
__entry->center_freq = local->hw.conf.channel ?
|
||||
local->hw.conf.channel->center_freq : 0;
|
||||
__entry->channel_type = local->hw.conf.channel_type;
|
||||
CHANDEF_ASSIGN(&local->hw.conf.chandef)
|
||||
__entry->smps = local->hw.conf.smps_mode;
|
||||
),
|
||||
|
||||
TP_printk(
|
||||
LOCAL_PR_FMT " ch:%#x freq:%d",
|
||||
LOCAL_PR_ARG, __entry->changed, __entry->center_freq
|
||||
LOCAL_PR_FMT " ch:%#x" CHANDEF_PR_FMT,
|
||||
LOCAL_PR_ARG, __entry->changed, CHANDEF_PR_ARG
|
||||
)
|
||||
);
|
||||
|
||||
|
Reference in New Issue
Block a user