Commit Graph

306 Commits

Author SHA1 Message Date
lifeng
7c607dd603 qcacld-3.0: Add a timer to reduce and resume beacon interval
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
2017-11-07 01:13:18 -08:00
lifeng
1c16b6b0ac qcacld-3.0: Enhance dfs beacon tx
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
2017-11-07 01:13:15 -08:00
Sandeep Puligilla
999ba33342 qcacld-3.0: cleanup legacy scan request processing
Cleanup legacy scan request processing
from HDD and SME api to process the same.

Change-Id: Ic160dfafcfa015eb42a226304260b1be3dddc6f0
CRs-Fixed: 2136149
2017-11-05 00:08:30 -07:00
Jeff Johnson
2ec495d3c9 qcacld-3.0: Remove eSAP_GET_WPSPBC_SESSION_EVENT
"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
2017-11-02 12:59:15 -07:00
Krunal Soni
f6a367bf53 qcacld-3.0: Make SAP open()-close() & start()-stop() symmetrical
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
2017-11-01 17:39:02 -07:00
Himanshu Agarwal
dfc4dcac67 qcacld-3.0: Code cleanup in Vendor ACS support code
1. Add modularity to the vendor acs logic
2. Add error conditions, return values and their handling.
3. Add appropriate kernel doc.

Change-Id: I5e07910d243686f77a8abbed373ea7970992b6d0
CRs-Fixed: 2100804
2017-10-30 01:39:13 -07:00
Jayachandran Sreekumaran
9f18042578 qcacld-3.0: Restrict AP switching to DFS channel
Restrict AP switching to DFS channel to enforce SCC
in AP+STA+AP case

Change-Id: I5b581142abb02a9209200ee21fb6a2e1fbc18795
CRs-Fixed: 2133126
2017-10-26 23:48:13 -07:00
Ajit Pal Singh
813383c330 qcacld-3.0: Force SCC for STA+P2PGO if gWlanMccToSccSwitchMode!=0
While selecting P2PGO channel in sap_goto_channel_sel(), force SCC
if there is STA + P2PGO concurrency AND gWlanMccToSccSwitchMode!=0,
This makes behaviour similar to STA + AP concurrency.

Change-Id: Ib80a36c22432791c5466b68b625373c58e4c8206
2017-10-25 07:40:52 -07:00
Srinivas Girigowda
b9086af019 qcacld-3.0: Fix checkpatch warnings (QUOTED_WHITESPACE_BEFORE_NEWLINE)
Fix checkpatch warnings (QUOTED_WHITESPACE_BEFORE_NEWLINE).

Change-Id: I8901c49fa48c8a9c3a9c83c6be5ff003fe0eae62
CRs-Fixed: 2126814
2017-10-24 16:40:56 -07:00
Srinivas Girigowda
ea4d806da9 qcacld-3.0: Fix checkpatch warnings (SPACING)
Fix checkpatch warnings (SPACING).

Change-Id: I966fe641b4722cc15584defc42c90921090687fb
CRs-Fixed: 2126814
2017-10-24 16:40:54 -07:00
Srinivas Girigowda
4d65ebe983 qcacld-3.0: Fix checkpatch warnings (LINE_SPACING)
Fix checkpatch warnings (LINE_SPACING).

Change-Id: Ibac537792bfd68a1e4b42eec0f5ece579fb15a20
CRs-Fixed: 2126814
2017-10-24 16:40:49 -07:00
Jayachandran Sreekumaran
9575dec599 qcacld-3.0: Allow MCC in exceptional cases
In AP + STA case allow MCC if the STA's channel
is DFS or passive or part of LTE avaoidance channel list

Change-Id: Iece69bf5d70d5e2ed9f9505a72c7a40f35d11b75
CRs-Fixed: 2127091
2017-10-23 06:13:00 -07:00
Jayachandran Sreekumaran
922477bbb0 qcacld-3.0: MCC to SCC switch for SAP+SAP and SAP+GO
MCC to SCC switch for second beaconing interface,
SAP+SAP and SAP+GO

Change-Id: I1b8e897ffc719b63a4de92f5fe02a2820bc29e4f
CRs-Fixed: 2127091
2017-10-23 06:12:52 -07:00
Rachit Kankane
11ac4bc61c qcacld-3.0: Update for 3port channel overlap
Update to find channel overlap in case of 3-port concurrency.
The changes are made as mentioned below:
1. Find active session on same band channel
2. If found, then set same channel to achieve SCC

Change-Id: I87ba2121608c789814b1213dc807fed82fd0f882
CRs-Fixed: 2127091
2017-10-23 06:12:50 -07:00
Wu Gao
aa5e3f7476 qcacld-3.0: Remove legacy P2P codes in SAP
To reduce code size, remove legacy P2P codes in SAP layer. Remove
P2P files from Kbuild.

Change-Id: I83a704d3f03e9cb9e6a7420f32d609a323799a12
CRs-Fixed: 2111575
2017-10-18 23:50:55 -07:00
Krunal Soni
22208393bb qcacld-3.0: Remove SAP connection from policy manager upon stopbss
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
2017-10-16 16:44:13 -07:00
Jeff Johnson
38e38a8483 qcacld-3.0: Remove duplicate GET_IE_LEN_IN_BSS_DESC() macros
Both HDD and SAP define GET_IE_LEN_IN_BSS_DESC() macros, but these
macros simply replicate the logic already present in the global macro
GET_IE_LEN_IN_BSS(). Therefore delete these macros, and use
GET_IE_LEN_IN_BSS() instead.

Change-Id: I431984673141715ad32ca6ea96e31722129ce929
CRs-Fixed: 2122547
2017-10-12 14:00:45 -07:00
Arif Hussain
4549efa73b qcacld-3.0: Use updated dfs public function
Dfs public function are renamed to have utils_ prefix,
make sure to call new dfs public API's.

Change-Id: Ib36ebb6ca4d3838c5e7468e22f6dd5182a0a08e0
CRs-Fixed: 2124373
2017-10-12 14:00:08 -07:00
Kiran Kumar Lokere
9471221c04 qcacld-3.0: Reduce log messages during scanning
Excessive logging during scan causes the watchdog timeout
hence reduce the log messages in the scan path

Change-Id: I378e9667dfad15cfd5ba1c68484b97567af5d45f
CRs-Fixed: 2079149
2017-10-12 14:00:02 -07:00
Hanumanth Reddy Pothula
714d7d5bd7 qcacld-3.0: Remove unnecessary assertion in SAP callback
Propagation from qcacld-2.0 to qcacld-3.0

In random testing cases, the SAP close may be called even before the BSS
is started. In such cases the SAP callback may not have been registered
and such scenarios may lead to unnecessary assertion. Just returning an
errror should do.

Remove the assert but retain the error notification.

Change-Id: Ief9ea45d2d7f3d910766e73a9e0dca5e34c85905
CRs-Fixed: 2121720
2017-10-09 03:47:57 -07:00
Krunal Soni
bfd0549f67 qcacld-3.0: Initialize roam id to invalid value
Current driver has roam id uninitialized in anticipation that roam id
will be filled by SME APIs to correct value but in error conditions
that value may not be filled at all. In those kind of cases
initializing to invalid value will help to avoid any security breach.

CRs-Fixed: 2119198
Change-Id: I96e55cb91ef76df63dd6ba267130e1092fdcf899
2017-10-06 21:49:13 -07:00
Jeff Johnson
e13d806b89 qcacld-3.0: Rename pSapCtx to sap_ctx
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
2017-09-28 21:59:32 -07:00
Naveen Rawat
09b96dfecf qcacld-3.0: Fix memory leak in SAP csr roam profile during SSR
In case of SSR and SAP is active, if hdd_init_ap_mode is not clean
SAP profile will leak memory. Fix memory leak in this case.

Change-Id: I7655d8f1d5654e583cbf4812c7f5e2a3a20ff54a
CRs-Fixed: 2112581
2017-09-28 17:13:52 -07:00
Krunal Soni
e8324ce7d8 qcacld-3.0: Fix SAP+SAP SCC DFS concurrency on DBS platform
As per current implementation, if one SAP is on DFS channel & another
SAP is non-DFS and if RADAR is detected on DFS channel then both SAPs
are changing channels which is incorrect behavior for new platforms.

Above limitation was added for old platform where SAP+SAP concurrency
was allowed only for DFS SCC feature.

Allow both SAPs to change the channel back to back when they are on
same SCC DFS channel. This change will allow to maintain backward
compatiblity with old platform.

CRs-Fixed: 2114154
Change-Id: I9c426f9a148d0feac552c34929daad1e802edd2f
2017-09-28 16:11:22 -07:00
Jeff Johnson
164b3bb59f qcacld-3.0: Refine API wlansap_channel_change_request()
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
2017-09-28 03:49:03 -07:00
Jeff Johnson
3abdd24af4 qcacld-3.0: Refine API wlansap_start_beacon_req()
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
2017-09-28 03:49:01 -07:00
Jeff Johnson
bfeafc6ba7 qcacld-3.0: Refine API wlansap_dfs_send_csa_ie_request()
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
2017-09-28 03:48:58 -07:00
Jeff Johnson
ed4ed172fc qcacld-3.0: Refine API wlan_sap_set_vendor_acs()
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
2017-09-28 03:48:56 -07:00
Jeff Johnson
b26e270d4e qcacld-3.0: Refine API wlansap_get_dfs_nol()
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
2017-09-28 03:48:54 -07:00
Jeff Johnson
b3c4f7e460 qcacld-3.0: Refine API wlansap_set_dfs_nol()
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
2017-09-28 03:48:52 -07:00
Jeff Johnson
ffa38768fa qcacld-3.0: Refine API wlansap_scan_callback()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_scan_callback() to use the true struct pointer type.

Change-Id: I7c77827de37a4beb4bedcfb5716e61573c27eaad
CRs-Fixed: 2116267
2017-09-28 03:48:50 -07:00
Jeff Johnson
14ec0689da qcacld-3.0: Refine API wlansap_cleanup_cac_timer()
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
2017-09-28 03:48:48 -07:00
Jeff Johnson
104433afa3 qcacld-3.0: Refine API wlansap_set_invalid_session()
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
2017-09-28 03:48:39 -07:00
Jeff Johnson
92675a5d15 qcacld-3.0: Refine API wlansap_get_chan_width()
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
2017-09-28 03:48:37 -07:00
Jeff Johnson
630fd6a3c3 qcacld-3.0: Refine API wlansap_acs_chselect()
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
2017-09-28 03:48:35 -07:00
Jeff Johnson
bc110a7828 qcacld-3.0: Refine API sap_is_auto_channel_select()
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
2017-09-28 03:48:33 -07:00
Jeff Johnson
a68cc538cd qcacld-3.0: Refine API wlan_sap_set_pre_cac_complete_status()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlan_sap_set_pre_cac_complete_status() to use
the true struct pointer type.

Change-Id: I814af33f02c847e542bb3c1b87d1f8da3cd82ff1
CRs-Fixed: 2116267
2017-09-28 03:48:31 -07:00
Jeff Johnson
2cdcfdcd69 qcacld-3.0: Refine API wlan_sap_set_chan_before_pre_cac()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlan_sap_set_chan_before_pre_cac() to use the
true struct pointer type.

Change-Id: I4dd1a526645317560a2929ddc4fed496d71867d1
CRs-Fixed: 2116267
2017-09-28 03:48:29 -07:00
Jeff Johnson
108566e1e1 qcacld-3.0: Refine API wlan_sap_set_pre_cac_status()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlan_sap_set_pre_cac_status() to use the true
struct pointer type.

Change-Id: Ic9ee7bfa01eb01c7c8c6b665c25300611fb7edde
CRs-Fixed: 2116267
2017-09-28 03:48:26 -07:00
Jeff Johnson
cd1ee1eedd qcacld-3.0: Refine API wlan_sap_update_next_channel()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlan_sap_update_next_channel() to use the true
struct pointer type.

Change-Id: I10226f1bc7d4e47fb363de54b4bc0bc7784416ef
CRs-Fixed: 2116267
2017-09-28 03:48:24 -07:00
Jeff Johnson
d4ca1e5b46 qcacld-3.0: Refine API wlansap_cancel_remain_on_channel()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlansap_cancel_remain_on_channel() to use the
true struct pointer type.

Change-Id: Ibaa79aa4edd9c60915319e2b8f507e70acc0d774
CRs-Fixed: 2116267
2017-09-28 03:48:21 -07:00
Jeff Johnson
eea4e304b6 qcacld-3.0: Refine API wlansap_remain_on_channel()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_remain_on_channel() to use the true struct pointer type.

Change-Id: Iaa8be32f34e61da652b74e67c36d1cf27f13d961
CRs-Fixed: 2116267
2017-09-28 03:48:19 -07:00
Jeff Johnson
730c250ce5 qcacld-3.0: Refine API wlansap_send_action()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_send_action() to use the true struct pointer type.

Change-Id: I122b84fd9156558789b1b9d87120804d5598f3a4
CRs-Fixed: 2116267
2017-09-28 03:48:17 -07:00
Jeff Johnson
e6b25d9878 qcacld-3.0: Refine API wlansap_set_key_sta()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_set_key_sta() to use the true struct pointer type.

Change-Id: I401f5dcf04547b263daf89b75cd17a6768d9f1d5
CRs-Fixed: 2116267
2017-09-28 03:48:14 -07:00
Jeff Johnson
52a2ce3d16 qcacld-3.0: Refine API wlansap_set_channel_change_with_csa()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlansap_set_channel_change_with_csa() to use
the true struct pointer type.

Change-Id: Ia4b31f9f726528e9c76f60d4fc314fc87b892555
CRs-Fixed: 2116267
2017-09-28 03:48:12 -07:00
Jeff Johnson
e7ff1d07db qcacld-3.0: Refine API wlansap_deauth_sta()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_deauth_sta() to use the true struct pointer type.

Change-Id: Ia58822ad42d2a36333c4c085f6a4f4498d70e5f8
CRs-Fixed: 2116267
2017-09-28 03:48:10 -07:00
Jeff Johnson
92e867c568 qcacld-3.0: Refine API wlansap_disassoc_sta()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_disassoc_sta() to use the true struct pointer type.

Change-Id: I20209f92b7313026aee712a639f3605619255079
CRs-Fixed: 2116267
2017-09-28 03:48:08 -07:00
Jeff Johnson
31d1a74d61 qcacld-3.0: Refine API wlansap_clear_acl()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_clear_acl() to use the true struct pointer type.

Change-Id: I7ffab7e01a107ad476c2a02ffb60bad4d9b62a97
CRs-Fixed: 2116267
2017-09-28 03:48:06 -07:00
Jeff Johnson
49c819f9a0 qcacld-3.0: Refine API wlansap_get_acl_deny_list()
See change "qcacld-3.0: Refine API wlansap_open()" for the API history.
Update wlansap_get_acl_deny_list() to use the true struct pointer type.

Change-Id: I8d0981b6a11d854fc3f4b228703271608367bcab
CRs-Fixed: 2116267
2017-09-28 03:48:03 -07:00
Jeff Johnson
878f6d5cff qcacld-3.0: Refine API wlansap_get_acl_accept_list()
See change "qcacld-3.0: Refine API wlansap_open()" for the API
history.  Update wlansap_get_acl_accept_list() to use the true
struct pointer type.

Change-Id: I6dd326745fee2769753afb71f64bbf6ef3023a22
CRs-Fixed: 2116267
2017-09-28 03:48:01 -07:00