Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal with mac_handle
in sap_module.
Change-Id: I8631e7b3cc4bdca564846bb2dee50e6c993087ef
CRs-Fixed: 2351898
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sap_module.
Change-Id: I5422b4a7e1a464a8f870cea33069c47401c73bac
CRs-Fixed: 2349566
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sap_api_link_cntl.
Change-Id: I2d54133a841112486ecfd7a7971a1fcefa471cfc
CRs-Fixed: 2348553
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sap_module.
Change-Id: Ib3dbaf58c4dd4408a09a099b233f94331f46075f
CRs-Fixed: 2348555
Function wlan_sap_set_pre_cac_status() currently takes as one
parameter a tHalHandle handle. This handle is converted into a MAC
context pointer. That MAC context pointer is then tested for NULL but
is otherwise unused. Since the MAC context, and hence the handle, are
unnecessary, remove them.
This is part of an ongoing campaign to remove or replace all instances
of tHalHandle.
Change-Id: I1c280be8c7c65a28267a9ab38d76fb8aa94e48af
CRs-Fixed: 2347653
Change "qcacld-3.0: Introduce sap_get_mac_context()" introduced a new
API for retrieving the MAC context. Update sap_module to use this API.
Change-Id: I906a57557d38b139728c7f2332e9580abf947d47
CRs-Fixed: 2346184
During SSR the sap context is reinitialized and it request for
scan request id again deleting the older request id from scan module
this can lead to situation where the scan requestor list is filled by
SAP request id's and thus next request for request id will return 0.
Now during de init when it try to delete the requestor id 0 it delete
the 0th entry which is for CFG. Now if again SAP register the request
id it will get the 0th index which was freed and thus when CFG
requests a scan the sap callback is called instead of CFG leading to
NULL pointer access.
Fix this by not registering for request id again after SSR for SAP.
Change-Id: Ibc8ad0700b602a9c3d2769d979303499df8d6605
CRs-Fixed: 2341133
CSA req changes the SAP FSM state to STOPPING.
Remove this state manipulation by CSA.
Change-Id: I76e78824cdc7acad87e60310d53225596630ea94
CRs-Fixed: 2309229
If STA interface is added after softap is started on DFS channel,
then SAP is stopped and re-started on non-dfs channel which is selected
using driver internal acs. But, internal acs is now obsolete. Therefore,
select non-dfs channel from preffered channel list and use SAP CSA
instead of restart.
Change-Id: I95e50c3ffbce35cf30cc9a06f0f14c9e60eb3e3f
CRs-Fixed: 2301895
Add support for SRD channels in ETSI regulatory domain
1) Add SRD channels only if DSRC feature is disabled.
2) Add user configuration to enable/disable these channels
in master mode PCL/ACS. Default is disabled.
3) Allow these channels in ACS/PCL only if the INI is set.
Change-Id: Ibd79dc95e9911ce3a0fd101f4716d9bbb8b75466
CRs-Fixed: 2264786
If SAP comes up in 2.4Ghz channel in HT/VHT 20/40Mhz and channel
switch comes for a 5Ghz channel, SAP gets started in HT/VHT 20/40
Mhz only while it should connect in VHT80Mhz or HT40Mhz depending
on whether the initial connection is in HT or VHT.
Change the bw to 80Mhz if initial connection is in VHT and to 40Mhz
if initial connection is in HT if channel switch comes for a 5Ghz
channel.
Change-Id: I709dd35575866b7ec9fddcfb94078f114a78d1a2
CRs-Fixed: 2226979
When acs_policy is enabled and STA is already up on some 5Ghz channel,
SAP is coming up on the same 5Ghz channel as expected but in 20Mhz even
when bandwidth given by hostapd is 80Mhz.
Start SAP on same channel as STA but in 80Mhz instead of 20Mhz.
Change-Id: Ie5dc06844f867d32796706cdcc190d1cb1b1d2fe
CRs-Fixed: 2196229
Address the following issues in the core/sap folder:
CHECK: 'availabe' may be misspelled - perhaps 'available'?
CHECK: 'defult' may be misspelled - perhaps 'default'?
CHECK: 'fucntion' may be misspelled - perhaps 'function'?
CHECK: 'Funtion' may be misspelled - perhaps 'Function'?
CHECK: 'intial' may be misspelled - perhaps 'initial'?
Change-Id: Id1e696f70d4d3c5ff650a353eb8402216909bc2c
CRs-Fixed: 2241944
Rename typedef tsap_Config_t and the underlying struct sap_Config to
align with the Linux coding standard.
Change-Id: I6e8f8b5ab9555c7781f1acf12a0475902866300c
CRs-Fixed: 2237721
Macro WLANTL_DEBUG is currently used to define some SAP debug
counters, but these counters are unused, so remove this obsolete code.
Change-Id: Ie7d976efcb5fb335b3f60a5af48a70dd214b3bd0
CRs-Fixed: 2220915
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tCsrRoamProfile typedef does
not meet any of those criteria, so replace references to it with a
reference to the underlying struct.
Change-Id: Ie78bc34c5c39a56058d0daa0240047ec67392ab3
CRs-Fixed: 2207843
When stop_bss from HDD is received when a SAP channel change request
is currently in progress and channel change response is not yet
received from the FW, the stop_bss would clear the SAP session and
when channel change response is received, we try to start BSS again.
The CSR roam state is also set to JOINING in this case.
As part of start BSS, we queue set key command to SME active command
list. Since the session has been cleared, eWNI_SME_SETCONTEXT_RSP
sent to lim would not be processed in CSR state JOINING leading to set
key command stuck in the active command list.
Do not restart BSS after channel change response if stop BSS is in
progress. Also handle eWNI_SME_SETCONTEXT_RSP and clear the command
queue in CSR Joining state.
Change-Id: I8dbab054746d26cc92fc2274d35ce76a694035fe
CRs-Fixed: 2193505
Current driver is using pld_wlan_set_dfs_nol() and pld_wlan_get_dfs_nol()
directly through eSAP_DFS_NOL_SET and eSAP_DFS_NOL_GET case statements
respectively within HDD module. These methods are obsoleted as per
new driver design.
Use DFS component's utils_dfs_init_nol() and utils_dfs_save_nol() APIs
instead to get and set DFS NOL respectively.
Change-Id: I63e8adac3f99c2052c26e6b01d19071f098e0a4f
CRs-Fixed: 2172024
Currently there is no need to get nol when removing nol from candidate
channel list, because status of nol is set to CHANNEL_STATE_DISABLE in
regulatory.
Remove channels whose status are CHANNEL_STATE_DISABLE when trying to
remove nol from candidate channel list.
Change-Id: I90722116814e837fca456de1b2ef88d8519e9aff
CRs-Fixed: 2180752
During disconnection process, cache disconnecting STA information
so that the same information is updated to upper-layer on receiving
GET_STATION vendor command, after disconnection.
Change-Id: I2e5a0be42d81b86e6f4490de1bdf9d7e0797506d
CRs-Fixed: 2126182
1) Change some of the parameters for the following two functions
to reflect the right PHY mode definitions at different layers:
wlan_hdd_set_acs_ch_range
sap_select_default_oper_chan
2) Refine the kernel-doc for the above 2 functions due to their
parameter changes.
3) Use eCsrPhyMode instead of uint32_t to define hw_mode in
struct sap_acs_cfg to reflect the right PHY mode definition.
4) Refine the ACS code logic due to the changes introduced above.
Change-Id: I91b7814831a05265cfff456452eef0fe2ef97d1e
CRs-Fixed: 2167355
Current open and close session APIs mainly defined in HDD, SME, and SAP
modules are not proper. They require some design changes to maintain the
consistency.
In order to achieve the goal of making symmetrical design for open and
close session logic, refactor existing API in SAP module.
CRs-Fixed: 2147969
Change-Id: Iccc5ddd2b14ec2b27e6746a211edd10ec06ad434
wlansap_open(), wlansap_close(), wlansap_start(), and wlansap_stop()
APIs are not doing what their names' suggest. Rename these APIs such
a way that they reflect the true meaning of it.
Introduce two new APIs to create and destroy the sap context.
CRs-Fixed: 2147974
Change-Id: Ie0475df480d1b19e796ddf3b639de3078a5a61a0
In set default key operation module, under SAP mode, there are
conditional checks on key type information derived from the
Station's context. Also in get/add key operations SAP or STA
context pointers are derived without knowing the device mode
first, which is incorrect.
Derive key type info from SAP context in set default key and
derive station or sap context pointers only after knowing the
device mode.
Change-Id: I09b0e6f8d6315677e7584c7c24f003daa3eca9a3
CRs-Fixed: 2127288
Change "qcacmn: Rename enum tQDF_ADAPTER_MODE" (qca-wifi-host-cmn
Change-Id I20f1b6d1a0ab4b8fe6a85cefdff96a49e2f4652c) renamed enum
tQDF_ADAPTER_MODE to QDF_OPMODE. Update all references to use the
new name.
Change-Id: Ic6f663dac11a100f168b2626c7c0fbcaccbfca4f
CRs-Fixed: 2141065
Per the Linux coding style "mixed-case names are frowned upon" so
rename struct tagCsrDelStaParams.
Change-Id: I60d6448f4bae15e604a8ea55e72a6070a6ebdfbe
CRs-Fixed: 2140346
qcacld-2.0 to qcacld-3.0 propagation
Reduce the beacon interval just before the channel switch.
This would help in reducing the downtime on the STA side which
is waiting for beacons from the AP to resume back transmission.
Switch back the beacon_interval to its original value after
the channel switch based on the timeout. This would ensure
there are atleast some beacons sent with increased frequency.
Change-Id: I37db52713d9e2c78abbb97a7cd0274d9da35bfd2
CRs-Fixed: 1094958
qcacld-2.0 to qcacld-3.0 propagation
Send one action frame along with each beacon tx to reduce failure
of channel switching on sta side.
Change-Id: Idbbe1a4bcb4976101680974214fe85d9886ba7d1
CRs-Fixed: 1094958
"qcacld-3.0: Remove support for eWNI_SME_GET_WPSPBC_SESSION_REQ"
(Change-Id: Ia95c4911600a45d1004b9e6148b1b04f414e2475) removed the
only function which sends eSAP_GET_WPSPBC_SESSION_EVENT. Since this
event is obsolete, remove it.
Change-Id: I9d83f66bce4ec66bc131747254a45d8b6afb5cbb
CRs-Fixed: 2134951
Current driver is not having wlansap_open() and wlansap_close()
symmetrical and same goes for wlansap_start() and wlansap_stop()
which may create confusion in understanding.
Create a symmetry and clean-up any unnecessary data-structure.
CRs-Fixed: 2135995
Change-Id: I2c3b96e1f2ee44c9f1158108d4b5e48495222080
To reduce code size, remove legacy P2P codes in SAP layer. Remove
P2P files from Kbuild.
Change-Id: I83a704d3f03e9cb9e6a7420f32d609a323799a12
CRs-Fixed: 2111575
If SAP has no channel left to move then it will issue stop bss. In this
scenario, SAP is not cleaning up its entry from policy manager table
which causes stale entry left over in table.
Fix this situation by stopping the bss successfully and deleting entry
from policy manager table.
Change-Id: I7c7d305936fe16b0deebb9b7a67f7753cbf243e6
CRs-Fixed: 2112932
The Linux Coding Style frowns upon mixed-case names and so-called
Hungarian notation, so rename pSapCtx to sap_ctx to align with the
Coding Style.
Change-Id: I9402132fc20cbb7e9041ec9f112eaa2af258a0d4
CRs-Fixed: 2118452
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history. Update wlansap_channel_change_request() to use the
true struct pointer type.
Change-Id: I829d33be89e319d6e81b99b94badb023109c29b2
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_start_beacon_req() to use the true struct pointer type.
Change-Id: I92bb5538425b7f9c8d366854e59bdb57eb8c19aa
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history. Update wlansap_dfs_send_csa_ie_request() to use the
true struct pointer type.
Change-Id: I7abb2cdefab70e6c7997f438221a7f0aa4c8e3af
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlan_sap_set_vendor_acs() to use the true struct pointer type.
Change-Id: Iba77a686dc08251dbaee74554ee7de3080ad8b64
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_get_dfs_nol() to use the true struct pointer type.
Change-Id: I4a430915f8e1cb5378f80e5d6cb34690e33160ea
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_set_dfs_nol() to use the true struct pointer type.
Change-Id: I762ef985ee5ec40c79d4cdaafc4e89710edb2366
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_cleanup_cac_timer() to use the true struct pointer type.
And since this removes that last usage of CDS_GET_SAP_CB(), remove the
now obsolete macro.
Change-Id: I35338df7dc8cf74cb491d5c901200d685b40a55e
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history. Update wlansap_set_invalid_session() to use the true
struct pointer type.
Change-Id: Ib7c56dd9b04ececdb7518648f6ba9cc3e3ed7428
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_get_chan_width() to use the true struct pointer type.
Change-Id: Iec86249524c042ae6dba818bb5983fd91d9e61fd
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_acs_chselect() to use the true struct pointer type.
Change-Id: I954c519954207c5cc487296dd42b8b2b46c08173
CRs-Fixed: 2116267
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history. Update sap_is_auto_channel_select() to use the true
struct pointer type.
Change-Id: I9a233ba67f773edce6a866dc0664f92cf3610c81
CRs-Fixed: 2116267