mac80211: Use a cfg80211_chan_def in ieee80211_hw_conf_chan
[linux-block.git] / drivers / net / wireless / mac80211_hwsim.c
index 0064d38276bf6a714d86e7c310f49f1ef91a5d35..4ac54861e912e918f1fca84c22d135a3b13e6059 100644 (file)
@@ -1062,11 +1062,13 @@ out:
        return HRTIMER_NORESTART;
 }
 
-static const char *hwsim_chantypes[] = {
-       [NL80211_CHAN_NO_HT] = "noht",
-       [NL80211_CHAN_HT20] = "ht20",
-       [NL80211_CHAN_HT40MINUS] = "ht40-",
-       [NL80211_CHAN_HT40PLUS] = "ht40+",
+static const char * const hwsim_chanwidths[] = {
+       [NL80211_CHAN_WIDTH_20_NOHT] = "noht",
+       [NL80211_CHAN_WIDTH_20] = "ht20",
+       [NL80211_CHAN_WIDTH_40] = "ht40",
+       [NL80211_CHAN_WIDTH_80] = "vht80",
+       [NL80211_CHAN_WIDTH_80P80] = "vht80p80",
+       [NL80211_CHAN_WIDTH_160] = "vht160",
 };
 
 static int mac80211_hwsim_config(struct ieee80211_hw *hw, u32 changed)
@@ -1080,18 +1082,28 @@ static int mac80211_hwsim_config(struct ieee80211_hw *hw, u32 changed)
                [IEEE80211_SMPS_DYNAMIC] = "dynamic",
        };
 
-       wiphy_debug(hw->wiphy,
-                   "%s (freq=%d/%s idle=%d ps=%d smps=%s)\n",
-                   __func__,
-                   conf->channel ? conf->channel->center_freq : 0,
-                   hwsim_chantypes[conf->channel_type],
-                   !!(conf->flags & IEEE80211_CONF_IDLE),
-                   !!(conf->flags & IEEE80211_CONF_PS),
-                   smps_modes[conf->smps_mode]);
+       if (conf->chandef.chan)
+               wiphy_debug(hw->wiphy,
+                           "%s (freq=%d(%d - %d)/%s idle=%d ps=%d smps=%s)\n",
+                           __func__,
+                           conf->chandef.chan->center_freq,
+                           conf->chandef.center_freq1,
+                           conf->chandef.center_freq2,
+                           hwsim_chanwidths[conf->chandef.width],
+                           !!(conf->flags & IEEE80211_CONF_IDLE),
+                           !!(conf->flags & IEEE80211_CONF_PS),
+                           smps_modes[conf->smps_mode]);
+       else
+               wiphy_debug(hw->wiphy,
+                           "%s (freq=0 idle=%d ps=%d smps=%s)\n",
+                           __func__,
+                           !!(conf->flags & IEEE80211_CONF_IDLE),
+                           !!(conf->flags & IEEE80211_CONF_PS),
+                           smps_modes[conf->smps_mode]);
 
        data->idle = !!(conf->flags & IEEE80211_CONF_IDLE);
 
-       data->channel = conf->channel;
+       data->channel = conf->chandef.chan;
 
        WARN_ON(data->channel && channels > 1);
 
@@ -1277,7 +1289,7 @@ static int mac80211_hwsim_get_survey(
                return -ENOENT;
 
        /* Current channel */
-       survey->channel = conf->channel;
+       survey->channel = conf->chandef.chan;
 
        /*
         * Magically conjured noise level --- this is only ok for simulated hardware.