Commit Graph

1400 Commits

Author SHA1 Message Date
Jianmin Zhu
c2eae9c566 qcacld-3.0: MCL change after serialization enhancement
1. Set all MCL cmds as blocking cmds.
2. Rename WLAN_SER_CMD_STOP_BSS to WLAN_SER_CMD_VDEV_STOP_BSS.
3. Add new binary files and remove old binary files in Kbuild.
4. Disable CONFIG_SERIALIZATION_V1 in Kbuild, switch to new
   serialization code.

Change-Id: I46f876e4cbc31881ca0559e4705cddf4a26a46c1
CRs-Fixed: 2315411
2018-09-20 13:10:34 -07:00
Bala Venkatesh
2fde2c61db qcacld-3.0: SAP CFG Items part 2
Add support for the sap cfg items in new mlme component

Change-Id: I80f3f00a85720fe7bec11575fe67dd2f6b9d44b2
CRs-Fixed: 2316643
2018-09-20 10:30:08 -07:00
Jianmin Zhu
9058c52fb6 qcacld-3.0: Fix assert for NULL vdev in csr_nonscan_pending_ll_next
If SSR during sme close session when interface down and vdev
destroy, qdf_session_close_event is completed forcely before
peer detached, vdev becomes LOGICALLY_DELETED instead of
destroyed actually for peer ref count is held.

When bss is deleted and eWNI_SME_JOIN_RSP is handled,
is_disconnect_pending-> csr_nonscan_pending_ll_next is called,
wlan_objmgr_get_vdev_by_id_from_psoc return NULL,  cmd.vdev is
NULL, NULL pointer dereference will happen.

Change-Id: I790a12483c2b9f967da9ced387935f93a6168e81
CRs-Fixed: 2316960
2018-09-20 00:56:16 -07:00
Vignesh Viswanathan
987f0bba09 qcacld-3.0: Use MLME CFG for BSS Scoring Items
Implement the usage of MLME CFG infra for BSS Scoring related INI Items
and remove the older INI definitions from HDD.

Change-Id: I0db69138f0439131916a38176b5b21b706ff3671
CRs-Fixed: 2318320
2018-09-19 23:15:15 -07:00
Abhinav Kumar
c816a9515d qcacld-3.0: Revert "qcacld-3.0:Fix the IOT issue with TxBF CSN value"
This reverts the change-Id: Iec7423809f5225de9b5c4d08d7806a8a2a9dfe06.
Advertise the min of self TxBF CSN and APs TxBF CSN value to
fix the IOT issue with the AP.

Change-Id: Ifd344bfd3cb6ca5a18d356b888d85bd100d4194d
CRs-Fixed: 2312098
2018-09-19 19:32:42 -07:00
Vignesh Viswanathan
32f21c89bd qcacld-3.0: Update CSR session PMK during Roam Sync Propagation
Currently CSR session PMK is updated from the set_key command from
supplicant after successful 8 way handshake with the AP. However,
in case of roaming to an AP which already has the PMKID cached, the
Roam Sync happens with Auth Status Authenticated and set_key from the
supplicant does not happen. In this case, the value in the CSR session
PMK is incorrect and is the PMK of the previous AP before roaming.
After this scenario, if any RSO command is sent to the FW, the incorrect
PMK is sent as part of the RSO command updating the FW with incorrect
PMK for the current AP. The next time a roaming happens to the same AP,
then the 4 way handshake fails and fallback to 8 way handshake happens.

Update the PMK in CSR session for the current AP from PMKID cache
during Roam Sync propagation, if the Auth Status is authenticated.

Change-Id: I3ced7d0fd75379ede01cf9f993f5beefbb20cda1
CRs-Fixed: 2313289
2018-09-19 08:33:13 -07:00
Vignesh Viswanathan
f04daafe76 qcacld-3.0: Reset 11i parameters in RSO command
PMK caching and OKC is valid only in non CCKM roaming scenarios.
If these parameters passed to FW in CCKM case then device may add the
PMKID in reassoc request frames which is not expected.
So reset 11i parameters in RSO command if the authentication type is
CCKM.

Change-Id: I32bdb288e7fa557f133b7f311f51d85d57ff659b
CRs-Fixed: 2306038
2018-09-19 01:15:25 -07:00
Tushnim Bhattacharyya
c08f4abac1 qcacld-3.0: Reduce log level in csr_roam_close_session
Reduce log level from error to debug in csr_roam_close_session.

Change-Id: Ifc486feefe2cde4635617f327fa5256bac202160
CRs-Fixed: 2317871
2018-09-18 23:39:59 -07:00
Wu Gao
ca416ff63a qcacld-3.0: Apply mlme lfr configuraions
Since refined mlme lfr configures based on converged cfg component,
apply mlme lfr configurations, remove related legacy codes.

Change-Id: Iebda5bbb3c5c68b922b7f6ac1adaf25cccf903a6
CRs-Fixed: 2316494
2018-09-18 12:49:00 -07:00
gaurank kathpalia
36b0c58a5d qcacld-3.0: Add src, and dst id support in SME
In the scheduler_post_message, src_id is now added to
know the source module of the msg. the present scheduler
doesn't know about the same which is scheduler_post_msg

Replace the scheduler_post_msg with scheduler_post_message

Change-Id: If929a98b8b9d5b1b9c8f0291876e410a3dfbdf49
CRs-Fixed: 2305983
2018-09-18 12:48:54 -07:00
Sourav Mohapatra
49ce4cec0f qcacld-3.0: Add support to send RX stats to framework
As a part of the cfg80211_get_station command, the driver sends TX stats
(tx rate, MCS index, NSS and flags). Currently there is no support to
send the similar RX stats.

Add support to send RX stats to the framework.

Change-Id: Ic66596d118ad1395706db7638da1b4fdef7dc2d5
CRs-Fixed: 2303306
2018-09-18 12:48:47 -07:00
Pragaspathi Thilagaraj
cd6aef0bd3 qcacld-3.0: Add MLME CFG items of MBO INI configs
Add the MBO ini configs to mlme for the following:
1. CFG_MBO_CANDIDATE_RSSI_THRESHOLD
2. CFG_MBO_CURRENT_RSSI_THRESHOLD
3. CFG_MBO_CUR_RSSI_MCC_THRESHOLD
4. CFG_MBO_CAND_RSSI_BTC_THRESHOLD

Change-Id: I9e779c912538973c8281170ec8c212a4f05b7e2e
CRs-Fixed: 2314168
2018-09-18 06:17:05 -07:00
Wu Gao
93816217da qcacld-3.0: Apply mlme sta configuraions
Since refined mlme sta configures based on converged cfg component,
apply mlme sta configurations, remove related legacy codes.

Change-Id: Ia5989a29378bf33e3c9550a0ae26338aeb966592
CRs-Fixed: 2312079
2018-09-17 10:44:54 +08:00
Pragaspathi Thilagaraj
48d273cbf0 qcacld-3.0: Remove legacy INI items of QOS aggregation configs
Remove the legacy INI code from hdd_cfg. Replace the existing
access from hdd_config with new mlme api.

Change-Id: Iddde15330c1ad39a59bd9a3c7ea86af971df61b5
CRs-Fixed: 2313296
2018-09-14 03:12:25 -07:00
Srinivas Girigowda
eff16d956b qcacld-3.0: Fix tab stop checkpatch warnings
Fix tab stop checkpatch warnings.

Change-Id: I4ccbc39b571737413de038fabcd4b8641a39cd62
CRs-Fixed: 2312593
2018-09-13 13:20:38 -07:00
Jinwei Chen
ffaa467dff qcacld-3.0: support HE STS Caps setting by INI
Currently user can not configure HE STS capability through
INI, use gTxBFCsnValue that share same INI with VHT to achieve
it.

Change-Id: Ia83462113cdf06e0af8b9f00c968745363aba9b4
CRs-Fixed: 2306083
2018-09-13 07:58:35 -07:00
Wu Gao
d8f3db0fb5 qcacld-3.0: Refine mlme obss ht40 configurations
Refine mlme obss ht40 configurations based on converged cfg component.
Remove related legacy codes.

Change-Id: If4f061a16e9a2a0bba81d1d24aa1f52bbeadacf5
CRs-Fixed: 2311907
2018-09-13 04:52:15 -07:00
Arif Hussain
aad545423d qcacld-3.0: Disable uAPSD if TWT is allowed
Disable uAPSD if TWT can be allowed for a given session.

Change-Id: Ia2d0b4b1ab5fc7fd703db66fda28e16a1e611c56
CRs-Fixed: 2287743
2018-09-12 20:45:13 -07:00
Srinivas Girigowda
09625b0222 qcacld-3.0: Fix embedded function name checkpatch warnings
Logging macros already print function name by default,
there is no need to print the function name again as part of the log.

Hence, remove the function name or
wherever required use '"%s...", __func__'

Change-Id: Ib6dc6cc03ef148146b1c626271d5ac3b7345c4bb
CRs-Fixed: 2312593
2018-09-12 11:58:26 -07:00
Kiran Kumar Lokere
f1a96f4fa3 qcacld-3.0: Add support to configure the HE OM control support
Add support to configure the HE Operating mode control support.

Change-Id: I97720465109b3b4f2462142901ddbc8a02951723
CRs-Fixed: 2305762
2018-09-11 16:42:01 -07:00
Kiran Kumar Lokere
1f96b4af34 qcacld-3.0: Add support for 11ax draft3.0 spec
Add support for 11ax draft3.0 spec.

Change-Id: I272d9f4ec6b3a2a23ad708265dd0afaf289c1b95
CRs-Fixed: 2294255
2018-09-11 16:41:57 -07:00
Ashish Kumar Dhanotiya
9f72df00fd qcacld-3.0: Add mtrace logging for P2P module
We are transitioning to new logging infrastructure
by using existing mtrace functionality.

Add new logging for complete P2P module.

Change-Id: If49d66ea42a48be0ac6c7a8b4c91d69ebd5fcef9
CRs-Fixed: 2308618
2018-09-11 12:01:40 -07:00
Pragaspathi Thilagaraj
00bd8bc47f qcacld-3.0: Remove legacy ini for chainmask configs
Remove the legacy ini config values defined in hdd_cfg.
Call the mlme cfg get api to retrieve chainmask config values.
Remove the tx_chainmask_cck from cds_config as mlme object is
not initialized during cds_open. Call mlme cfg api during
wma_open to populate the tx_chainmask_cck value.

Change-Id: If48aeb62cf35e2e604be2b72845b8e98c5c313dc
CRs-Fixed: 2310382
2018-09-11 12:01:28 -07:00
Qiwei Cai
ba95ce632f qcacld-3.0: Featurize BUILD_DIAG_VERSION
Featurize BUILD_DIAG_VERSION to compile out to save memory.

Change-Id: Ib6b6c8d197556a9457e600dd5e802f7e50f6242d
CRs-Fixed: 2301487
2018-09-11 08:44:03 -07:00
Will Huang
24d272baff qcacld-3.0: Remove unneeded csr_nonscan_pending_ll_remove_entry()
csr_nonscan_pending_ll_remove_entry() is not a correct API to
remove command from non-scan pending queue, it always return
false and fail to insert command to local list.

The correct API to remove an entry is csr_release_command(), no
need to check entry when insert to local list.
Remove the wrong API csr_nonscan_pending_ll_remove_entry().

Change-Id: I6c81f5d4ae57ceb6ebf2eec0a63859d0c1f12cb1
CRs-Fixed: 2308863
2018-09-10 23:51:51 -07:00
Rajeev Kumar Sirasanagandla
4f20b67e7a qcacld-3.0: Add debugfs support for roam scan stats
Add debugfs entry to get last five roam scan stats info which includes
old bssid, new bssid, roaming candidates etc., for STA interface.

Change-Id: Ied66beb270d97b6e17a6116c1be0e82783094519
CRs-Fixed: 2203885
2018-09-07 04:43:53 -07:00
Liangwei Dong
d108cf20d6 qcacld-3.0: Disallow roam cfg if Roam not started
The driver always allow roaming command ROAM_SCAN_OFFLOAD_UPDATE_CFG
even through session roaming not "started" in CSR.
But WMA will always enable Roam_scan_mode to non-zero
to FW when handle the command ROAM_SCAN_OFFLOAD_UPDATE_CFG.
The inconsistency is the CSR still keep as roaming stopped
status but WMA enable the roaming on session.

In STA+STA case, there will cause two vdev roam mode enabled in Firmware
because the CSR roaming start state does not keep sync with FW.

Fix by enable FW roam only based on enable state from CSR
when handle the ROAM_SCAN_OFFLOAD_UPDATE_CFG in WMA.

Change-Id: I95a2bd1edd88cc241ae9821a6e0756c44663229a
CRs-Fixed: 2305594
2018-09-06 22:22:36 -07:00
Jeff Johnson
0c8dbc37c4 qcacld-3.0: Refine the extscan reset significant change logic
Make the following updates to the extscan reset significant change
logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I9b63924f4219f6d3567e3ee2b1a31e1a9ce3bc29
CRs-Fixed: 2309570
2018-09-06 20:34:23 -07:00
Rajeev Kumar Sirasanagandla
4c8edc0e69 qcacld-3.0: Add debugfs support for connect info
Add debugfs entry to get connect info (bssid, ssid, freq etc.,)
for STA interface.

Change-Id: Id5c350dbb4ca9b9f6b203459adee59b2d5e94f67
CRs-Fixed: 2203654
2018-09-06 08:54:34 -07:00
Rachit Kankane
026e77a99d qcacld-3.0: Featurize P2P Listen Offload
P2P Listen offload is not a requirement for Genoa, hence featurize
P2P listen offload code to save memory foot-print for Genoa.

Change-Id: If50c784bb4cd6daac513a0654364e78cd636c9d3
CRs-Fixed: 2304554
2018-09-06 01:41:49 -07:00
Arif Hussain
6686c0b995 qcacld-3.0: Enable twt based on peer capabilities
Enable twt based on peer capabilities, for non-AX devices.

Change-Id: I2710cfa362efe6fc58ad46ed41b1c3fe1b85d6f9
CRs-Fixed: 2287706
2018-09-05 16:45:34 -07:00
Jeff Johnson
b43ed03298 qcacld-3.0: Refine the extscan set significant change logic
Make the following updates to the extscan set significant change
logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I916f387cee254c2d8ba57a9182bd927a91eadf0c
CRs-Fixed: 2307374
2018-09-05 06:46:59 -07:00
Jianmin Zhu
aac14e0ac6 qcacld-3.0: Remove useless legacy roam reason eCsrLostLink1/2/3
1. Remove eCsrLostLink1/2/3 from csr_roam_reason.
2. Remove eCsrLostLink1/2/3 from csr_get_roam_cmd_type.
3. Remove csr_set_abort_roaming_command
4. Remove CSR_IS_ROAMING_COMMAND

Change-Id: Ibcc5dc63739b2764301f5a35a2110d570bc3928e
CRs-Fixed: 2308267
2018-09-05 05:08:47 -07:00
Jianmin Zhu
1ad0dadd83 qcacld-3.0: Remove useless legacy roam reason eSmeIssuedIbssJoinFailure
Remove all eSmeIssuedIbssJoinFailure relative code in disasssoc
and roam result handler.

Change-Id: Ia204fa331ec6f5de1ff52b8c2d2907d10f0d1ee4
CRs-Fixed: 2308522
2018-09-05 05:08:44 -07:00
Rajeev Kumar Sirasanagandla
e3b599151d qcacld-3.0: Add support to store vdev object in PE session
Add support to store vdev object in PE session and acquire/release its
reference count during PE create/delete session respectively.

Change-Id: I476798c4c42992dec2a2648319780b206274e8c4
CRs-Fixed: 2306387
2018-09-05 05:08:37 -07:00
Rachit Kankane
ee1735c905 qcacld-3.0: Featurize RMC
Featurize RMC and disable for Genoa

Change-Id: I66b17622c89dd5736f152c4cd9506ce2706b4604
CRs-Fixed: 2304269
2018-09-05 00:17:52 -07:00
Rachit Kankane
f6834c4b4c qcacld-3.0: Featurize Dynamic Voltage Config
Host provides INI way to control voltage configs, featurizing the
same for Genoa.

Change-Id: Ia58d84eb2e2a67ead189a51d2a0b98230513f8f9
CRs-Fixed: 2304125
2018-09-05 00:17:45 -07:00
Ashish Kumar Dhanotiya
8d039c8829 qcacld-3.0: Add mtrace logging for scan request
We are transitioning to new logging infrastructure
by using existing mtrace functionality.
Add new logging for complete scan request and response path.

Change-Id: Iab48b0f2a6ab9d0ec14e3110eb628b6d1731df53
CRs-Fixed: 2308237
2018-09-04 21:15:01 -07:00
Yeshwanth Sriram Guntuka
cbe6144d29 qcacld-3.0: Reduce log level for few prints to debug
Change log level for few messages from info/warn/err
to debug.

Change-Id: I2fd3df21d70326301b39b91efdf827d6b391f4e3
CRs-Fixed: 2301924
2018-09-03 06:48:36 -07:00
Vignesh Viswanathan
7818250f0f qcacld-3.0: Fix camel case names in mlme_ht_capabilities_info structure
Rename camel case names of members of mlme_ht_capabilities_info
structure.

Change-Id: I576ad77c4744c240537d540f1efaab0e7d9cb109
CRs-Fixed: 2293859
2018-08-31 14:49:14 -07:00
Abhishek Singh
78f654bcc5 qcacld-3.0: Validate cbmode and bw provided by AP in HTinfo IE
Driver checks if 40 Mhz is supported for the channel but doesn't
validate if the cbmode provided by AP is valid.

Invalid cb mode provided by AP can lead to failure.

Add check to validate cbmode and bandwidth from AP in htinfo IE.

Change-Id: I3d2da7a8e3045594baf201732dd80a82bd88e16c
CRs-Fixed: 2303267
2018-08-30 10:15:57 -07:00
Sandeep Puligilla
1f1e400e99 qcacld-3.0: Change the log level in SME/PE/WMA
Change the info/err/warn log level to debug in
SME/PE/WMA layer.

Change-Id: Ica0a53d5d6e08b62bbc240ba763ccce59b26af0e
CRs-Fixed: 2299223
2018-08-29 12:30:20 -07:00
bings
13f45e6690 qcacld-3.0: Always update mgmt encryption type when there is RSN IE
If mgmt encryption type is not updated, 11w feature will not be enabled
correctly for this association.

Mgmt encryption type is always updated through limJoinReqSerDes in the
cld2.0, which is removed in cld3.0. In cld3.0 if fast roaming is enabled,
mgmt encryption type will be updated through csr_construct_rsn_ie. If
fast roaming is not enabled, csr_construct_rsn_ie will not be called and
mgmt encryption type will not be updated.

Always called csr_construct_rsn_ie in csr_retrieve_rsn_ie to make sure
mgmt encryption type is updated.

Change-Id: I2d6541dd88a9d1770f4976b9caa32baa70a60ed3
CRs-Fixed: 2300847
2018-08-29 03:07:51 -07:00
Jeff Johnson
9743eb7f49 qcacld-3.0: Refine the extscan stop BSSID hotlist logic
Make the following updates to the extscan stop BSSID hotlist logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.

Change-Id: I01e29a96fded829c734532b021aeea1960bba641
CRs-Fixed: 2294273
2018-08-20 22:32:28 -07:00
Jeff Johnson
57b264e259 qcacld-3.0: Remove ftm_msg_processor_callback from MAC context
The MAC context ftm_msg_processor_callback is a remnant from the
legacy FTM support. Since this callback is no longer used, remove it.

Change-Id: Ibd375bcd91900654315681f7f9b56bf100090942
CRs-Fixed: 2298895
2018-08-20 10:16:38 -07:00
Vignesh Viswanathan
21c58cb8c3 qcacld-3.0: Add MLME CFG items and APIs
Add the basic infra for MLME CFG items and the APIs to be used from
other components.

Change-Id: I39654de8f7266089d574b85437a19e8d21f91249
CRs-Fixed: 2293825
2018-08-20 05:29:46 -07:00
Qiwei Cai
16b98589f9 qcacld-3.0: Allocate csr_roam_roam_session dynamically
Allocate csr_roam_roam_session dynamically to reduce build size.

Change-Id: Ic11cc40ca47077ac18f944bd0e62b40e520b9b74
CRs-Fixed: 2290519
2018-08-16 00:47:53 -07:00
Qiwei Cai
7b9f9e5fe2 qcacld-3.0: Allocate sme_qos_cb dynamically
Allocate sme_qos_cb dynamically to reduce build size.

Change-Id: Ia51b9b6b96fb239198fcab256b955cd4a4b4da5f
CRs-Fixed: 2290541
2018-08-14 23:32:52 -07:00
Dustin Brown
6a8d39b6ed qcacld-3.0: Reduce excessive logging
Reduce or removed several excessive log in order to avoid spamming
dmesg.

Change-Id: I818c8f88f66ad11a3c3bc5d5a12799e83c02e5ff
CRs-Fixed: 2296680
2018-08-14 23:32:49 -07:00
Nirav Shah
e6194ac8ad qcacld-3.0: Update data path statistics log level
Do not required to print function and line number
for data path statistics function which is invoked
by ioctl.
Change data path statistics to info print so
that it can be printed in dmesg as well.

Change-Id: I4b5ea4202255ace71dbb6f9a4bbff6f93e496425
CRs-Fixed: 2278885
2018-08-14 02:15:39 -07:00