Skip to content

Commit

Permalink
rsi: add p2p support parameters to mac80211
Browse files Browse the repository at this point in the history
This patch adds p2p supported parameters to mac80211 hw and
wiphy structures during mac80211 registration.

Signed-off-by: Prameela Rani Garnepudi <prameela.j04cs@gmail.com>
Signed-off-by: Amitkumar Karwar <amit.karwar@redpinesignals.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
  • Loading branch information
Prameela Rani Garnepudi authored and Kalle Valo committed Sep 20, 2017
1 parent 2bd6bf0 commit 421eedf
Showing 1 changed file with 36 additions and 1 deletion.
37 changes: 36 additions & 1 deletion drivers/net/wireless/rsi/rsi_91x_mac80211.c
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,32 @@ static const u32 rsi_max_ap_stas[16] = {
4, /* 14 - AP + BT Dual */
};

static const struct ieee80211_iface_limit rsi_iface_limits[] = {
{
.max = 1,
.types = BIT(NL80211_IFTYPE_STATION),
},
{
.max = 1,
.types = BIT(NL80211_IFTYPE_AP) |
BIT(NL80211_IFTYPE_P2P_CLIENT) |
BIT(NL80211_IFTYPE_P2P_GO),
},
{
.max = 1,
.types = BIT(NL80211_IFTYPE_P2P_DEVICE),
},
};

static const struct ieee80211_iface_combination rsi_iface_combinations[] = {
{
.num_different_channels = 1,
.max_interfaces = 3,
.limits = rsi_iface_limits,
.n_limits = ARRAY_SIZE(rsi_iface_limits),
},
};

/**
* rsi_is_cipher_wep() - This function determines if the cipher is WEP or not.
* @common: Pointer to the driver private structure.
Expand Down Expand Up @@ -1581,7 +1607,11 @@ int rsi_mac80211_attach(struct rsi_common *common)
ether_addr_copy(hw->wiphy->addr_mask, addr_mask);

wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) |
BIT(NL80211_IFTYPE_AP);
BIT(NL80211_IFTYPE_AP) |
BIT(NL80211_IFTYPE_P2P_DEVICE) |
BIT(NL80211_IFTYPE_P2P_CLIENT) |
BIT(NL80211_IFTYPE_P2P_GO);

wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM;
wiphy->retry_short = RETRY_SHORT;
wiphy->retry_long = RETRY_LONG;
Expand All @@ -1608,6 +1638,11 @@ int rsi_mac80211_attach(struct rsi_common *common)

wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST);

/* Wi-Fi direct parameters */
hw->max_listen_interval = 10;
wiphy->iface_combinations = rsi_iface_combinations;
wiphy->n_iface_combinations = ARRAY_SIZE(rsi_iface_combinations);

status = ieee80211_register_hw(hw);
if (status)
return status;
Expand Down

0 comments on commit 421eedf

Please sign in to comment.