P2PS: Add channel policy to PD Request
Add operating channel selection and channel list processing similar to that done when building GO Negotiation Request, i.e., consider the currently used channels, configured channels, etc. P2PS introduces a flow where a responder needs to provide channel data without being previously aware of the current constraints, i.e., the channels currently in use by other interfaces. To handle this, extend the get_group_capability() callback to also handle channel selection aspects of group capabilities. In case there is an active P2P GO that is going to be used for the P2PS PD, force its current operating frequency in the PD attributes. Signed-off-by: Ilan Peer <ilan.peer@intel.com>
This commit is contained in:
parent
4acd5ac67b
commit
ebd32943cb
4 changed files with 111 additions and 60 deletions
|
@ -1459,7 +1459,7 @@ static void p2p_prepare_channel_best(struct p2p_data *p2p)
|
|||
|
||||
|
||||
/**
|
||||
* p2p_prepare_channel - Select operating channel for GO Negotiation
|
||||
* p2p_prepare_channel - Select operating channel for GO Negotiation or P2PS PD
|
||||
* @p2p: P2P module context from p2p_init()
|
||||
* @dev: Selected peer device
|
||||
* @force_freq: Forced frequency in MHz or 0 if not forced
|
||||
|
@ -1468,9 +1468,9 @@ static void p2p_prepare_channel_best(struct p2p_data *p2p)
|
|||
* Returns: 0 on success, -1 on failure (channel not supported for P2P)
|
||||
*
|
||||
* This function is used to do initial operating channel selection for GO
|
||||
* Negotiation prior to having received peer information. The selected channel
|
||||
* may be further optimized in p2p_reselect_channel() once the peer information
|
||||
* is available.
|
||||
* Negotiation prior to having received peer information or for P2PS PD
|
||||
* signalling. The selected channel may be further optimized in
|
||||
* p2p_reselect_channel() once the peer information is available.
|
||||
*/
|
||||
int p2p_prepare_channel(struct p2p_data *p2p, struct p2p_device *dev,
|
||||
unsigned int force_freq, unsigned int pref_freq, int go)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue