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
@@ -147,8 +147,8 @@ static void rtl8180_handle_rx(struct ieee80211_hw *dev)
|
||||
signal = priv->rf->calc_rssi(agc, sq);
|
||||
}
|
||||
rx_status.signal = signal;
|
||||
rx_status.freq = dev->conf.channel->center_freq;
|
||||
rx_status.band = dev->conf.channel->band;
|
||||
rx_status.freq = dev->conf.chandef.chan->center_freq;
|
||||
rx_status.band = dev->conf.chandef.chan->band;
|
||||
rx_status.mactime = le64_to_cpu(entry->tsft);
|
||||
rx_status.flag |= RX_FLAG_MACTIME_START;
|
||||
if (flags & RTL818X_RX_DESC_FLAG_CRC32_ERR)
|
||||
|
||||
@@ -82,7 +82,8 @@ static void grf5101_rf_set_channel(struct ieee80211_hw *dev,
|
||||
struct ieee80211_conf *conf)
|
||||
{
|
||||
struct rtl8180_priv *priv = dev->priv;
|
||||
int channel = ieee80211_frequency_to_channel(conf->channel->center_freq);
|
||||
int channel =
|
||||
ieee80211_frequency_to_channel(conf->chandef.chan->center_freq);
|
||||
u32 txpw = priv->channels[channel - 1].hw_value & 0xFF;
|
||||
u32 chan = channel - 1;
|
||||
|
||||
|
||||
@@ -95,7 +95,7 @@ static void max2820_rf_set_channel(struct ieee80211_hw *dev,
|
||||
{
|
||||
struct rtl8180_priv *priv = dev->priv;
|
||||
int channel = conf ?
|
||||
ieee80211_frequency_to_channel(conf->channel->center_freq) : 1;
|
||||
ieee80211_frequency_to_channel(conf->chandef.chan->center_freq) : 1;
|
||||
unsigned int chan_idx = channel - 1;
|
||||
u32 txpw = priv->channels[chan_idx].hw_value & 0xFF;
|
||||
u32 chan = max2820_chan[chan_idx];
|
||||
|
||||
@@ -719,7 +719,8 @@ static void rtl8225_rf_set_channel(struct ieee80211_hw *dev,
|
||||
struct ieee80211_conf *conf)
|
||||
{
|
||||
struct rtl8180_priv *priv = dev->priv;
|
||||
int chan = ieee80211_frequency_to_channel(conf->channel->center_freq);
|
||||
int chan =
|
||||
ieee80211_frequency_to_channel(conf->chandef.chan->center_freq);
|
||||
|
||||
if (priv->rf->init == rtl8225_rf_init)
|
||||
rtl8225_rf_set_tx_power(dev, chan);
|
||||
|
||||
@@ -105,7 +105,8 @@ static void sa2400_rf_set_channel(struct ieee80211_hw *dev,
|
||||
struct ieee80211_conf *conf)
|
||||
{
|
||||
struct rtl8180_priv *priv = dev->priv;
|
||||
int channel = ieee80211_frequency_to_channel(conf->channel->center_freq);
|
||||
int channel =
|
||||
ieee80211_frequency_to_channel(conf->chandef.chan->center_freq);
|
||||
u32 txpw = priv->channels[channel - 1].hw_value & 0xFF;
|
||||
u32 chan = sa2400_chan[channel - 1];
|
||||
|
||||
|
||||
@@ -379,8 +379,8 @@ static void rtl8187_rx_cb(struct urb *urb)
|
||||
rate = (flags >> 20) & 0xF;
|
||||
skb_trim(skb, flags & 0x0FFF);
|
||||
rx_status.rate_idx = rate;
|
||||
rx_status.freq = dev->conf.channel->center_freq;
|
||||
rx_status.band = dev->conf.channel->band;
|
||||
rx_status.freq = dev->conf.chandef.chan->center_freq;
|
||||
rx_status.band = dev->conf.chandef.chan->band;
|
||||
rx_status.flag |= RX_FLAG_MACTIME_START;
|
||||
if (flags & RTL818X_RX_DESC_FLAG_CRC32_ERR)
|
||||
rx_status.flag |= RX_FLAG_FAILED_FCS_CRC;
|
||||
|
||||
@@ -905,7 +905,8 @@ static void rtl8225_rf_set_channel(struct ieee80211_hw *dev,
|
||||
struct ieee80211_conf *conf)
|
||||
{
|
||||
struct rtl8187_priv *priv = dev->priv;
|
||||
int chan = ieee80211_frequency_to_channel(conf->channel->center_freq);
|
||||
int chan =
|
||||
ieee80211_frequency_to_channel(conf->chandef.chan->center_freq);
|
||||
|
||||
if (priv->rf->init == rtl8225_rf_init)
|
||||
rtl8225_rf_set_tx_power(dev, chan);
|
||||
|
||||
Reference in New Issue
Block a user