---
 drivers/net/wireless/mac80211_hwsim.c | 34 +++++++++++++++++++++++----
 1 file changed, 30 insertions(+), 4 deletions(-)

diff --git a/drivers/net/wireless/mac80211_hwsim.c 
b/drivers/net/wireless/mac80211_hwsim.c
index 45c73a6f0..ae41b05e7 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -148,23 +148,25 @@ static const char *hwsim_alpha2s[] = {
 };
 
 static const struct ieee80211_regdomain hwsim_world_regdom_custom_01 = {
-       .n_reg_rules = 4,
+       .n_reg_rules = 5,
        .alpha2 =  "99",
        .reg_rules = {
                REG_RULE(2412-10, 2462+10, 40, 0, 20, 0),
                REG_RULE(2484-10, 2484+10, 40, 0, 20, 0),
                REG_RULE(5150-10, 5240+10, 40, 0, 30, 0),
                REG_RULE(5745-10, 5825+10, 40, 0, 30, 0),
+               REG_RULE(5855-10, 5925+10, 40, 0, 33, 0),
        }
 };
 
 static const struct ieee80211_regdomain hwsim_world_regdom_custom_02 = {
-       .n_reg_rules = 2,
+       .n_reg_rules = 3,
        .alpha2 =  "99",
        .reg_rules = {
                REG_RULE(2412-10, 2462+10, 40, 0, 20, 0),
                REG_RULE(5725-10, 5850+10, 40, 0, 30,
                         NL80211_RRF_NO_IR),
+               REG_RULE(5855-10, 5925+10, 40, 0, 33, 0),
        }
 };
 
@@ -354,6 +356,24 @@ static const struct ieee80211_channel 
hwsim_channels_5ghz[] = {
        CHAN5G(5805), /* Channel 161 */
        CHAN5G(5825), /* Channel 165 */
        CHAN5G(5845), /* Channel 169 */
+
+       CHAN5G(5855), /* Channel 171 */
+       CHAN5G(5860), /* Channel 172 */
+       CHAN5G(5865), /* Channel 173 */
+       CHAN5G(5870), /* Channel 174 */
+
+       CHAN5G(5875), /* Channel 175 */
+       CHAN5G(5880), /* Channel 176 */
+       CHAN5G(5885), /* Channel 177 */
+       CHAN5G(5890), /* Channel 178 */
+       CHAN5G(5895), /* Channel 179 */
+       CHAN5G(5900), /* Channel 180 */
+       CHAN5G(5905), /* Channel 181 */
+
+       CHAN5G(5910), /* Channel 182 */
+       CHAN5G(5915), /* Channel 183 */
+       CHAN5G(5920), /* Channel 184 */
+       CHAN5G(5925), /* Channel 185 */
 };
 
 static const struct ieee80211_rate hwsim_rates[] = {
@@ -1550,7 +1570,8 @@ static void mac80211_hwsim_beacon_tx(void *arg, u8 *mac,
 
        if (vif->type != NL80211_IFTYPE_AP &&
            vif->type != NL80211_IFTYPE_MESH_POINT &&
-           vif->type != NL80211_IFTYPE_ADHOC)
+           vif->type != NL80211_IFTYPE_ADHOC &&
+           vif->type != NL80211_IFTYPE_OCB)
                return;
 
        skb = ieee80211_beacon_get(hw, vif);
@@ -1604,6 +1625,8 @@ mac80211_hwsim_beacon(struct hrtimer *timer)
 }
 
 static const char * const hwsim_chanwidths[] = {
+       [NL80211_CHAN_WIDTH_5] = "ht5",
+       [NL80211_CHAN_WIDTH_10] = "ht10",
        [NL80211_CHAN_WIDTH_20_NOHT] = "noht",
        [NL80211_CHAN_WIDTH_20] = "ht20",
        [NL80211_CHAN_WIDTH_40] = "ht40",
@@ -2723,7 +2746,8 @@ static void mac80211_hwsim_he_capab(struct 
ieee80211_supported_band *sband)
         BIT(NL80211_IFTYPE_P2P_CLIENT) | \
         BIT(NL80211_IFTYPE_P2P_GO) | \
         BIT(NL80211_IFTYPE_ADHOC) | \
-        BIT(NL80211_IFTYPE_MESH_POINT))
+        BIT(NL80211_IFTYPE_MESH_POINT) | \
+        BIT(NL80211_IFTYPE_OCB))
 
 static int mac80211_hwsim_new_radio(struct genl_info *info,
                                    struct hwsim_new_radio_params *param)
@@ -2847,6 +2871,8 @@ static int mac80211_hwsim_new_radio(struct genl_info 
*info,
        } else {
                data->if_combination.num_different_channels = 1;
                data->if_combination.radar_detect_widths =
+                                       BIT(NL80211_CHAN_WIDTH_5) |
+                                       BIT(NL80211_CHAN_WIDTH_10) |
                                        BIT(NL80211_CHAN_WIDTH_20_NOHT) |
                                        BIT(NL80211_CHAN_WIDTH_20) |
                                        BIT(NL80211_CHAN_WIDTH_40) |
-- 
2.17.1

Reply via email to