Commit Graph

11736 Commits

Author SHA1 Message Date
Vignesh Viswanathan
ff78bc174f qcacld-3.0: Add BSS Scoring Related INI Items
Add BSS Scoring Related CFG Items to CFG Component.

Change-Id: Icb012f2560e7ebed298d2041085a516c582e56b6
CRs-Fixed: 2318316
2018-09-19 23:15:08 -07:00
Sravan Kumar Kairam
0ebf453164 qcacld-3.0: Use psoc handle to check for wmi service cap
wma_mgmt_nbuf_unmap_cb uses wma handle to check if wmi service
capability for mgmt is supported. If wma handle is freed before
call back is invoked it returns with out doing unmap of nbuf.
Instead of wma handle use psoc object handle which has the
information about wmi service capability support.

Change-Id: Icbdeb155be0fb5d056dd876faa2bd73f78cd9db7
CRs-Fixed: 2317785
2018-09-19 23:15:04 -07:00
nshrivas
ffc3530786 Release 5.2.0.97P
Release 5.2.0.97P

Change-Id: I94356b91fef972ef7453af7227036b0f1ed07976
CRs-Fixed: 774533
2018-09-19 21:04:37 -07:00
Alok Kumar
016a1aca3a qcacld-3.0: In nud_reset_tracking, flush NUD work based on flag
Race condition occurs when NUD failure happens and NUD work is
scheduled and at the same time within driver csr disconnect
issued because of Roam Sync failure.

Disable flush of NUD work in hdd_nud_reset_tracking during
hdd_dis_connect_handler()

Change-Id: I3d24073c5c8047fad42309e878f3741c7a2d268e
CRs-Fixed: 2315973
2018-09-19 21:04:36 -07:00
nshrivas
c5c8a8de1b Release 5.2.0.97O
Release 5.2.0.97O

Change-Id: If837c1ae3efd484811b328e6ca835e598bdf40ee
CRs-Fixed: 774533
2018-09-19 19:32:46 -07:00
Yuanyuan Liu
e470977e9f qcacld-3.0: Call icnss API to check if WLAN FW is down
If modem crashed during wlan driver unloading, icnss driver
will call driver uevent callback to set FW down status in
driver side when it receives BEFORE_SHUTDOWN notification.
If wlan driver is de-initialized just before the callback
is called, kernel will panic as driver's context is freed.
This can be avoid by not setting FW status in host driver.
Instead, icnss driver provides an API to host driver to
check FW status and host driver calls this API before any timeout
assert or accessing HW registers.

CRs-Fixed: 2161431
Change-Id: I8331367dd41dd0cedfa65c63f1bb3ffcb535e1c9
2018-09-19 19:32:46 -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
nshrivas
f23268eebc Release 5.2.0.97N
Release 5.2.0.97N

Change-Id: Id970f5c36cb727260239609348d263c5db6bff3f
CRs-Fixed: 774533
2018-09-19 14:45:56 -07:00
Rajeev Kumar
e555e2d15c qcacld-3.0: Remove timer debug and memory debug string
Remove timer debug and memory debug string from hdd_module_init
since g_wlan_driver_version already has timer and memory debug
string levels.

Change-Id: I8ef9f43d971df18b5184d76c5a3f4628feb8d12d
CRs-Fixed: 2316929
2018-09-19 14:45:55 -07:00
nshrivas
31094f8cdb Release 5.2.0.97M
Release 5.2.0.97M

Change-Id: I147a83c8061c1e95f5857fb8ae865d63fd31dd85
CRs-Fixed: 774533
2018-09-19 08:33:13 -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
nshrivas
8e7cf01501 Release 5.2.0.97L
Release 5.2.0.97L

Change-Id: Icaf05c16deca34caa93f397328c91d8bd0e068a1
CRs-Fixed: 774533
2018-09-19 01:15:29 -07:00
Vignesh Viswanathan
dada79318c qcacld-3.0: Append MBO IE from supplicant to Assoc Request Frame
The MBO IE sent from the supplicant supports multiple TLVs of the
same attribute type to be present. For example, for MBO case 5.2.8,
the supplicant sends 2 non-Preferred channel TLVs in the MBO IE.
However, when the driver unpacks the MBO IE for the Assoc Request
frame using frame parser, it supports only one unique TLV of each
attribute type in the MBO IE. So the second non-Preferred channel
TLV overwrrites the first TLV and the driver sends out Assoc Request
frame with only one non-Preferred Channel TLV in the MBO IE causing
the test case to fail.

Strip the MBO IE in the Additional IEs from supplicant and append
it to the end of the Assoc request frame without parsing it.

Change-Id: I35ede59983ef63268e4648bb38217ebec2454382
CRs-Fixed: 2310297
2018-09-19 01:15:29 -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
nshrivas
2464382942 Release 5.2.0.97K
Release 5.2.0.97K

Change-Id: Ib22aa14bbae1f90f6a1f72029792c9223bd60280
CRs-Fixed: 774533
2018-09-18 23:40:00 -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
Jianmin Zhu
13921e9f1e qcacld-3.0: Fix compiling issue of __DP_RX_THREAD__H
error: '__DP_RX_THREAD__H' is used as a header guard here,
followed by #define of a different macro [-Werror,
-Wheader-guard]

Change-Id: I21beca14c8ea98a9a6c4a4acd5f3c7428fd56e01
CRs-Fixed: 2315965
2018-09-18 23:39:56 -07:00
nshrivas
12744c44e1 Release 5.2.0.97J
Release 5.2.0.97J

Change-Id: I77ea8e0cf85d9c768437c63001ec2c988ee10c4a
CRs-Fixed: 774533
2018-09-18 16:17:40 -07:00
Ashish Kumar Dhanotiya
8ed432bbaa qcacld-3.0: Cache last connection info correctly
Currently copy of the last connection info is done
incorrectly inside hdd_save_bss_info api.
To address this issue update the memcopy with the
correct structure.

Change-Id: Ibc604650cd1d39c7b19619057427955ba3e4026f
CRs-Fixed: 2307526
2018-09-18 16:17:40 -07:00
nshrivas
1b249bbdd7 Release 5.2.0.97I
Release 5.2.0.97I

Change-Id: I6a66ac505e8b2e275a1a1098b940b93512860767
CRs-Fixed: 774533
2018-09-18 12:49:01 -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
Wu Gao
55f2171184 qcacld-3.0: Refine mlme lfr configurations
Define mlme lfr configures based on converged cfg component, add
APIs to get and set mlme lfr configurations.

Change-Id: I8aa9b37d1b943fcdc6a84704ede37b19cd7cffb8
CRs-Fixed: 2316490
2018-09-18 12:48:57 -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
Dustin Brown
76cd293220 qcacld-3.0: Introduce hdd_contex.psoc
The name 'hdd_psoc' is misleading, since it is not actually an HDD psoc
context. Rather, it is the Object Manager psoc context. Rename hdd_psoc
to psoc for consistency, and to make room for HDD to have its own psoc
context.

As a first step towards this large renaming, introduce a union in
hdd_context such that such both names can exist during the transition
period.

Change-Id: I9971c478c0d1dc111bb20a7cd6614f73ffb0b15d
CRs-Fixed: 2315990
2018-09-18 12:48:50 -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
nshrivas
97b3209cdc Release 5.2.0.97H
Release 5.2.0.97H

Change-Id: Iebb6f15e4d57e8ad7e5c543f8d89ecb4a67e33d2
CRs-Fixed: 774533
2018-09-18 06:17:06 -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
nshrivas
1849e963ff Release 5.2.0.97G
Release 5.2.0.97G

Change-Id: I79bd7ee5f940f65850a3cb2f8c09198801aaeec8
CRs-Fixed: 774533
2018-09-18 01:02:59 -07:00
Sravan Kumar Kairam
0512a84dba qcacld-3.0: Dequeue nbuf list from rx thread before continue
Currently in function dp_rx_thread_process_nbufq inside while
loop with nbuf list as condition if peer or vdev is not found
nbuf list is freed but not assigned to NULL and continue operation
is done. This leads to invalid freed nbuf list access in successive
loop iteration. In this change after nbuf list is freed assign it
to the next nbuf list which is in the rx thread queue.

Change-Id: I4b595a8708f91677645815105ad736926de91758
CRs-Fixed: 2309908
2018-09-18 01:02:59 -07:00
Yu Wang
68baaddd7f qcacld-3.0: check the data length when downloading firmware
When downloading a corrupted firmware file that has chunk length in
header which doesn't match the contents, buffer over-read may occur.

To fix it, before downloading the data, ensure the length is equal or
smaller than the left size of the firmware file.

Change-Id: I4e0c6c4423f94f26a8c4573b5d234296890f4ecf
CRs-Fixed: 2314182
2018-09-18 01:02:55 -07:00
nshrivas
94d245e1ed Release 5.2.0.97F
Release 5.2.0.97F

Change-Id: I6c87b644fb5df17ba96eff54c09006fe70aec11a
CRs-Fixed: 774533
2018-09-17 21:29:12 -07:00
Manjunathappa Prakash
a4272ab881 qcacld-3.0: Fix locking order in ol_txrx_disp_peer_stats()
Fix the locking order of pdev->peer_ref_mutex and pdev->local_peer_ids.lock
spin_locks in ol_txrx_disp_peer_stats(), this was resulting in deadlock
with lock order in ol_txrx_peer_get_ref_by_local_id().

Change-Id: I51d39daed7f8fb04c30fd6a73e2f9ca388543620
CRs-Fixed: 2315808
2018-09-17 21:29:12 -07:00
Nirav Shah
af1260fb4d qcacld-3.0: CE services separation for legacy and lithium architecture
CE service file includes APIs for both legacy and lithium architecture.
Legacy service APIs compiled for lithium architecture.
Separate the CE services into legacy and srng and selectively compile
required files.

Change-Id: Iad6b6c7cef7520e1e7b74da83805290eddcbabf6
CRs-Fixed: 2304556
2018-09-17 21:29:08 -07:00
Arif Hussain
6b0ed167ad qcacld-3.0: Fix possible OOB in wma_unified_radio_tx_mem_free()
In wma_unified_radio_tx_mem_free() function, results buffer array may be
dereferenced with large index value, that may result OOB memory access.

Fix the same by correcting incrementing pointer to results buffer.

Change-Id: I57a26dba9db32758c7d7fd51b99d3364a8020a9d
CRs-Fixed: 2308644
2018-09-17 21:29:04 -07:00
nshrivas
0b0463506c Release 5.2.0.97E
Release 5.2.0.97E

Change-Id: I8853eaf091110c24bd563aeaa929826207e929cb
CRs-Fixed: 774533
2018-09-17 17:53:38 -07:00
Dustin Brown
4b9dbe62c7 qcacld-3.0: move registration to end of driver load
An upcoming change will add synchronization to the driver load
operation. Effectively, driver load and psoc probe will need to be
exclusive operations. Because driver registration can synchronously
invoke psoc probe, move this registration to the end of the driver load
function. This prepares the way for adding synchronization around the
bulk of the load logic, and releasing it just before registration. This
avoids issues where driver load and psoc probe would otherwise execute
at the same time.

Change-Id: I3a617673ea0d4a56e2c08b2ef2f98f8cbdf42205
CRs-Fixed: 2315976
2018-09-17 17:53:37 -07:00
nshrivas
bbc70fa636 Release 5.2.0.97D
Release 5.2.0.97D

Change-Id: Ibbcda4c7ae1b32caf6d3159a30c5c2bf098c25b7
CRs-Fixed: 774533
2018-09-17 14:24:49 -07:00
Dustin Brown
f0f7056644 qcacld-3.0: Refactor __hdd_module_init/exit
In preparation for additional work in this area, refactor the
__hdd_module_init and __hdd_module_exit areas.

* Rename __hdd_module_init to hdd_driver_load
* Rename __hdd_module_exit to hdd_driver_unload
* Add missing error handing in hdd_driver_load
* Address symmetry issues between hdd_driver_load and hdd_driver_unload
* Remove redundant call to hdd_sysfs_destroy_version_interface
* Update hdd_set_conparam to take a signed integer
* Address various other style issues

Change-Id: I8ea936a493bb262abf7d43a816dbf72530efa424
CRs-Fixed: 2315840
2018-09-17 14:24:48 -07:00
Dustin Brown
d585cb3396 qcacld-3.0: Add error handling to component init
During insmod, the various driver components are initialized. HDD,
however, does not pay attention to any of the return statuses. Add error
handling for component initialization in HDD.

Change-Id: Ia8e3114685086964acacdee481a9fec8b7ef8a00
CRs-Fixed: 2314569
2018-09-17 14:24:45 -07:00
nshrivas
b21f8a1389 Release 5.2.0.97C
Release 5.2.0.97C

Change-Id: I20198bf19c994d7eeb1578d52fdf1e201bde688d
CRs-Fixed: 774533
2018-09-17 12:39:03 -07:00
Harprit Chhabada
6c641bada4 qcacld-3.0: Populate crypto params
Translate the legacy auth type to crypto auth type.
Set the crypto auth type under vdev object.
Use APIs to translate NL param type to crypto
param type from common.

Change-Id: I7073d35fe1724d37467bf970cf6bac7bc40045d1
CRs-Fixed: 2285045
2018-09-17 12:39:02 -07:00
nshrivas
8f533a4138 Release 5.2.0.97B
Release 5.2.0.97B

Change-Id: I12233e31ce6eb0d78b1b9a38a6d182368edb6f93
CRs-Fixed: 774533
2018-09-17 06:09:36 -07:00
Abhishek Singh
5ad797d0b3 qcacld-3.0: Remove legacy APIs to modify vdev state machine
This change Removes legacy APIs to modify vdev state machine and
add use new API to get vdev state.

Change-Id: I48aa3744dafc6d13a43a14e48de821c7dadf3a37
CRs-Fixed: 2314730
2018-09-17 06:09:35 -07:00
nshrivas
6b37ca8762 Release 5.2.0.97A
Release 5.2.0.97A

Change-Id: I3e0594ef490e986dcab39733ab458b9e1cb91052
CRs-Fixed: 774533
2018-09-17 04:26:54 -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
Wu Gao
406c53c169 qcacld-3.0: Refine mlme sta configurations
Define mlme sta configures based on converged cfg component, add
APIs to get and set mlme sta configurations.

Change-Id: I1a03037081ebe27760d23405adc3cc9042ba7698
CRs-Fixed: 2312002
2018-09-17 10:41:35 +08:00
nshrivas
edaef7e4d4 Release 5.2.0.97
Release 5.2.0.97

Change-Id: I4c762a542e3a6664d5e77a511c6147e56164065f
CRs-Fixed: 774533
2018-09-15 03:35:05 -07:00
Rajeev Kumar
9f2dd4729c qcacld-3.0: Increase FW response timeout values in debug build
In slub debug enabled build processing is slowed down and hence
increase the FW response timeout values by factor of 2 times.

Change-Id: I979269a9b4f6bc03f97452b3d7f7416fd418f336
CRs-Fixed: 2315934
2018-09-15 03:35:05 -07:00
Rajeev Kumar
1f3e99ad73 qcacld-3.0: Add timer manager and memory debug string
Add timer manager and memory debug string in driver version
global variable such that in offline tool analysis team can
easily find wlan build and version type.

Change-Id: Ie7283d86c0ca38f0b81d407c30da393ff666e51d
CRs-Fixed: 2315915
2018-09-15 03:35:01 -07:00
nshrivas
b163fdfaac Release 5.2.0.96Z
Release 5.2.0.96Z

Change-Id: I6a6ff0283f2262e878c432f7e9aba38ecdcb9e33
CRs-Fixed: 774533
2018-09-14 23:14:49 -07:00