Commit 421eedff authored by Prameela Rani Garnepudi's avatar Prameela Rani Garnepudi Committed by Kalle Valo

rsi: add p2p support parameters to mac80211

This patch adds p2p supported parameters to mac80211 hw and
wiphy structures during mac80211 registration.
Signed-off-by: default avatarPrameela Rani Garnepudi <prameela.j04cs@gmail.com>
Signed-off-by: default avatarAmitkumar Karwar <amit.karwar@redpinesignals.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 2bd6bf03
...@@ -139,6 +139,32 @@ static const u32 rsi_max_ap_stas[16] = { ...@@ -139,6 +139,32 @@ static const u32 rsi_max_ap_stas[16] = {
4, /* 14 - AP + BT Dual */ 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. * rsi_is_cipher_wep() - This function determines if the cipher is WEP or not.
* @common: Pointer to the driver private structure. * @common: Pointer to the driver private structure.
...@@ -1581,7 +1607,11 @@ int rsi_mac80211_attach(struct rsi_common *common) ...@@ -1581,7 +1607,11 @@ int rsi_mac80211_attach(struct rsi_common *common)
ether_addr_copy(hw->wiphy->addr_mask, addr_mask); ether_addr_copy(hw->wiphy->addr_mask, addr_mask);
wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) | 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->signal_type = CFG80211_SIGNAL_TYPE_MBM;
wiphy->retry_short = RETRY_SHORT; wiphy->retry_short = RETRY_SHORT;
wiphy->retry_long = RETRY_LONG; wiphy->retry_long = RETRY_LONG;
...@@ -1608,6 +1638,11 @@ int rsi_mac80211_attach(struct rsi_common *common) ...@@ -1608,6 +1638,11 @@ int rsi_mac80211_attach(struct rsi_common *common)
wiphy_ext_feature_set(wiphy, NL80211_EXT_FEATURE_CQM_RSSI_LIST); 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); status = ieee80211_register_hw(hw);
if (status) if (status)
return status; return status;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment