P2P: Add support for EDMG channels
This allows a P2P connection over P802.11ay EDMG channels to achieve the highest link speed that the standard allows for channel bonding (CB) up to CB4. Let each P2P peer add its EDMG channels to the Supported Channels IE advertised in P2P GO negotiation. Give EDMG channels priority when peers negotiate for operating channel. User may add 'edmg' parameter to p2p_connect, p2p_add_group, and p2p_invite commands to prefer an EDMG channel for the P2P link. User may also set p2p_go_edmg=1 in wpa_supplicant configuration file to prefer EDMG. When EDMG is used, P2P will try to find the highest channel bonding supported channel that matches the frequency parameter, if the devices do not support EDMG, the P2P connection will use a legacy (1-6) 60 GHz channel. Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
This commit is contained in:
parent
f86e34168e
commit
996662250d
14 changed files with 226 additions and 38 deletions
|
@ -1404,6 +1404,7 @@ static void p2p_prepare_channel_best(struct p2p_data *p2p)
|
|||
const int op_classes_5ghz[] = { 124, 125, 115, 0 };
|
||||
const int op_classes_ht40[] = { 126, 127, 116, 117, 0 };
|
||||
const int op_classes_vht[] = { 128, 0 };
|
||||
const int op_classes_edmg[] = { 181, 182, 183, 0 };
|
||||
|
||||
p2p_dbg(p2p, "Prepare channel best");
|
||||
|
||||
|
@ -1435,6 +1436,11 @@ static void p2p_prepare_channel_best(struct p2p_data *p2p)
|
|||
p2p_dbg(p2p, "Select first pref_chan entry as operating channel preference");
|
||||
p2p->op_reg_class = p2p->cfg->pref_chan[0].op_class;
|
||||
p2p->op_channel = p2p->cfg->pref_chan[0].chan;
|
||||
} else if (p2p_channel_select(&p2p->cfg->channels, op_classes_edmg,
|
||||
&p2p->op_reg_class, &p2p->op_channel) ==
|
||||
0) {
|
||||
p2p_dbg(p2p, "Select possible EDMG channel (op_class %u channel %u) as operating channel preference",
|
||||
p2p->op_reg_class, p2p->op_channel);
|
||||
} else if (p2p_channel_select(&p2p->cfg->channels, op_classes_vht,
|
||||
&p2p->op_reg_class, &p2p->op_channel) ==
|
||||
0) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue