qcacld-3.0: Support P2P GO on indoor channels

Add a new ini "p2p_go_in_indoor_chan" to enable support
for p2p go operation on indoor channels.

Do not allow standalone SAP on indoor channels if the
SAP indoor channel support is not enabled.

Change-Id: I2e6220ebcefe09b4ad5de496c36879ef048cb5b8
CRs-Fixed: 3405597
This commit is contained in:
Surya Prakash Sivaraj
2023-02-20 21:58:38 +05:30
committed by Madan Koyyalamudi
parent 6588df93b1
commit 534c627cea
11 changed files with 172 additions and 72 deletions

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2018-2020 The Linux Foundation. All rights reserved.
* Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2021-2023 Qualcomm Innovation Center, Inc. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -123,10 +123,34 @@
1, \
"Enable random seq nums for action frames")
/*
* <ini>
* p2p_go_on_indoor_chan - Allow P2P GO to operate on 5 GHz indoor channels
*
* @Min: 0
* @Max: 1
* @Default: 0
*
* This ini is used to enable/disable P2P-GO operation on 5 GHz
* indoor channels.
*
* Related: sta_sap_scc_on_indoor_channel, gindoor_channel_support
*
* Supported Feature: P2P GO
*
* Usage: external
*
* </ini>
*/
#define CFG_P2P_GO_ON_INDOOR_CHANNEL CFG_INI_BOOL("p2p_go_on_indoor_chan", \
"0", \
"Allow P2P GO on 5 GHz indoor channels")
#define CFG_P2P_ALL \
CFG(CFG_ACTION_FRAME_RANDOM_SEQ_NUM_ENABLED) \
CFG(CFG_GO_KEEP_ALIVE_PERIOD) \
CFG(CFG_GO_LINK_MONITOR_PERIOD) \
CFG(CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED)
CFG(CFG_P2P_DEVICE_ADDRESS_ADMINISTRATED) \
CFG(CFG_P2P_GO_ON_INDOOR_CHANNEL)
#endif

View File

@@ -1,6 +1,6 @@
/*
* Copyright (c) 2017-2018, 2020-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -464,4 +464,16 @@ bool ucfg_p2p_is_roam_config_disabled(struct wlan_objmgr_psoc *psoc)
{
return cfg_p2p_is_roam_config_disabled(psoc);
}
/**
* ucfg_p2p_get_indoor_ch_support() - Get indoor channel support
* for P2P GO
*
* @psoc: pointer to psoc obj
*
* Get the indoor channel support for P2P GO
*
* Return: p2p go supported on indoor channel
*/
bool ucfg_p2p_get_indoor_ch_support(struct wlan_objmgr_psoc *psoc);
#endif /* _WLAN_P2P_UCFG_API_H_ */