Commit Graph

10488 Commits

Author SHA1 Message Date
Min Liu
f2bc4850fa qcacld-3.0: Delete peer when vdev start timeout
When failure status is received in vdev start response from FW,
host will call wma_remove_peer to delete peer.
However, this operation is not done in the timeout handler of vdev
start request and it will lead to peer leak when vdev start response
failed to be received from FW.
Add peer deletion in vdev start request timeout handler accordingly.

Change-Id: I419369d09be1bd4b7e19e45b11256190fd2ec267
CRs-Fixed: 2288937
2018-08-07 08:41:24 -07:00
Sravan Kumar Kairam
a886120770 qcacld-3.0: Do rx inorder replenish for fragmented packets
Currently for fragment packets received legacy rx buffer replenish
is done which does not take in to account number of msdu count but
depends on fill count. Variable fill count is not protected and the
value becomes incorrect if AP sends both the fragmented and normal
packets at the same time. This leads to rx buffer replenish failure
and eventually data stall. To fix this do rx inorder replenish for
fragmented packets similar to normal ones if rx full reorder offload
is enabled.

Change-Id: I144c10be7b45268300b040e07ecb909a1ca113cc
CRs-Fixed: 2289797
2018-08-07 08:41:21 -07:00
Vignesh Viswanathan
d5a5f2e278 qcacld-3.0: Add support for OUI framework during join request in CSR
Add support to use the action OUI framework to identify vendor APs from
the ini and apply vendor AP specific WARs during CSR join request.

Change-Id: Icb6742bfeb9515c11d61034b795b95b92e833b64
CRs-Fixed: 2254532
2018-08-07 08:41:18 -07:00
nshrivas
ff909ba8e7 Release 5.2.0.91I
Release 5.2.0.91I

Change-Id: Ie97fad46c4ac5e2b8922c33095b7d0dcde67afac
CRs-Fixed: 774533
2018-08-07 02:19:19 -07:00
Tushnim Bhattacharyya
aececb20dc qcacld-3.0: Add ENABLE_DBS_CXN_AND_DISABLE_SIMULTANEOUS_SCAN
Add ENABLE_DBS_CXN_AND_DISABLE_SIMULTANEOUS_SCAN option for the ini
gDualMacFeatureDisable. This is to enable DBS support for the
connection and disable simultaneous scan from upper layer. But DBS
scan remains enabled in FW.

Change-Id: Ic280de2cc63a3775c0d9dd61985ff89df58a4a89
CRs-Fixed: 2288294
2018-08-07 02:19:18 -07:00
Nirav Shah
6a17618a8a qcacld-3.0: Replace MAX_SME_SESSIONS macro to SIR_MAX_SUPPORTED_BSS
Use SIR_MAX_SUPPORTED_BSS macro to decide max number of SME sessions
to avoid timer leak issue as SIR_MAX_SUPPORTED_BSS can be
configured through kbuild.

Change-Id: I86377d43ceb1b5cfcaa7c17a15a4fb300b79246b
CRs-Fixed: 2288864
2018-08-07 02:19:15 -07:00
nshrivas
00c7d9ea1c Release 5.2.0.91H
Release 5.2.0.91H

Change-Id: I3d52efdac3cb6dab04938466157aaae98ea249b1
CRs-Fixed: 774533
2018-08-06 20:55:19 -07:00
Kiran Kumar Lokere
782bb6cc73 qcacld-3.0: Fix the stability issue in wlan stop modules
wait for single event in umac_stop instead of wait for event
completion in which the events can be forcefully get reset
in the event of SSR.

Change-Id: I1925b820c7c292acbc019b058ff51297ad800b88
CRs-Fixed: 2289353
2018-08-06 20:55:18 -07:00
Jeff Johnson
4ea7974ce3 qcacld-3.0: Refine the mac_start() API
The mac_start() API currently specifies a void pointer for the "start
params" parameter. But both mac_start() and its caller must agree on
the type of this structure, so replace the void pointer with the
actual struct pointer. In the process rename that struct to comply
with the coding style and relocate it to be a part of the MAC Init
API.

Change-Id: I7fc62abbb17d214551ca6ff0cda8b76d218280e3
CRs-Fixed: 2290807
2018-08-06 20:55:14 -07:00
nshrivas
4af1cf4d6d Release 5.2.0.91G
Release 5.2.0.91G

Change-Id: If206553f7239ae5cdcbe8c5165b1bc35ea516329
CRs-Fixed: 774533
2018-08-06 19:03:12 -07:00
Dustin Brown
d0bf6403d2 qcacld-3.0: Reduce SMMU mapping logs
Reduce the number of logs during the SMMU mapping process in
cds_smmu_mem_map_setup by refactoring the logic to reduce the number of
branches.

Change-Id: I1a8b0ece31ab51eaf6f96232b284b61d77c83084
CRs-Fixed: 2291034
2018-08-06 19:03:12 -07:00
Dustin Brown
6099ddc417 qcacld-3.0: Add Driver Synchronization Core (enablement)
The Driver Synchronization Core (DSC) is a set of synchronization
primitives for use by the driver's orchestration layer. It provides APIs
for ensuring safe state transitions (including bring up and tear down)
of major driver objects: a single driver, associated psocs, and their
associated vdevs.

APIs are divided into two categories: mutual exclusion of conflicting
transitions, and operation tracking, blocking, and waiting capabilities.

For part 6, enable the DSC component.

Change-Id: I0ac37f479a4a38e346fb91ad041a4f51ccc6c879
CRs-Fixed: 2290260
2018-08-06 19:03:09 -07:00
nshrivas
f88b7f861f Release 5.2.0.91F
Release 5.2.0.91F

Change-Id: I9dee809b6b2e731603470f839b895ddb9faeb74b
CRs-Fixed: 774533
2018-08-06 06:28:03 -07:00
Yun Park
5fe20500cd qcacld-3.0: Check kernel scheduler APIs for wake up on idle CPU
Check PF_WAKE_UP_IDLE macro defined to determine the presence of
kernel scheduler APIs for wake up on an idle CPU.
If not, call dummy functions instead.

Change-Id: I34065aa244dc132e228c6e9f764c8eae90d81261
CRs-Fixed: 2168716
2018-08-06 06:28:03 -07:00
nshrivas
071a021a38 Release 5.2.0.91E
Release 5.2.0.91E

Change-Id: I06e90fc7eb69e269d6b0a6da07763a572f2de93a
CRs-Fixed: 774533
2018-08-06 04:21:25 -07:00
jitiphil
900e0e617a qcacld-3.0: Reuse preample type, vht_sig_a_1 and vht_sig_a_1
In monitor mode, current implementation
uses the preample type, vht_sig_a_1 and vht_sig_a_1
values associated with each mpdu, instead of reusing
the values from the first mpdu, to calculate data rates.

This is causing incorrect rates to be recorded in monitor mode logs
Reuse preample type, vht_sig_a_1 and vht_sig_a_1 of first
mpdu till the last mpdu is reached.

Change-Id: Ia6e5c1b3b0cc8d8b27f16cdfbd469fdba5c4a8f2
CRs-Fixed: 2276766
2018-08-06 04:21:25 -07:00
Nirav Shah
575282cd60 qcacld-3.0: Featurize DSRC(802.11p) implementation
Featurize DSRC(802.11p) implementation

Change-Id: I64baee9d26b2300b7a7282ad2eff031c0b02b0b2
CRs-Fixed: 2287352
2018-08-06 04:21:21 -07:00
Nirav Shah
6ebfe2419d qcacld-3.0: Separate out HL and LL RX data path
Separate out HL and LL Rx Data Path in different files
to compile out features cleanly

Change-Id: Ifc0e2d7e740142f0115d1fcd53db2936f7a30979
CRs-Fixed: 2287351
2018-08-06 04:21:18 -07:00
Nirav Shah
52d85aacf5 qcacld-3.0: Separate out HL and LL TX data path
Separate out HL and LL Tx Data Path in different files
to compile out features cleanly.

Change-Id: I9033a5bc83bbc95ff00be3f46dc6eda65eab9e71
CRs-Fixed: 2287346
2018-08-06 04:21:13 -07:00
nshrivas
39f150ce40 Release 5.2.0.91D
Release 5.2.0.91D

Change-Id: I0c5246f3c21266a19d6175c8a1fb8254b214ca0c
CRs-Fixed: 774533
2018-08-03 23:44:17 -07:00
Abhinav Kumar
87ccf7b34b qcacld-3.0: Update last_scan_reject_timestamp with proper value
When the scan is rejected, driver saves the scan reject reason and the
rejected time by converting the jiffies to msec. In case when
HZ is 100 while converting jiffies to msec, jiffies_to_msecs() return
wrapped value of jiffies(in msec). This result value of the current jiffies
(return value of jiffies_to_msecs API) becomes greater than scan reject
time (pHddCtx->last_scan_reject_timestamp) and __wlan_hdd_cfg80211_scan
trigger SSR in case of scan rejection.

Fix is to Use jiffiy directly instead of using jiffies_to_msecs()
while updating scan reject time(pHddCtx->last_scan_reject_timestamp).

Change-Id: Ib86830456fdc48143bf282779216ab94aed11923
CRs-Fixed: 2289992
2018-08-03 23:44:15 -07:00
nshrivas
7c258d6d6e Release 5.2.0.91C
Release 5.2.0.91C

Change-Id: I4b76aac33691fde2f9b0687df33389a28f9cf852
CRs-Fixed: 774533
2018-08-03 22:00:47 -07:00
Alok Kumar
90a73092e6 qcacld-3.0: Consider INI param LROEnable during advertising LRO
Currently in driver we are advertising LRO Support as part of
hdd_init_station_mode() with dev->features |= NETIF_F_LRO.

This is not tied up with INI param "LROEnable", to advertise LRO
to kernel. Add INI check for "LROEnable" before advertising LRO.

Change-Id: I6a3940b65e72ae12015d0303c573456d44e1ac9c
CRs-Fixed: 2269590
2018-08-03 22:00:46 -07:00
nshrivas
6d00fad947 Release 5.2.0.91B
Release 5.2.0.91B

Change-Id: I34f8bcb9381f67b08ba810132c2f80d2e0adc7c4
CRs-Fixed: 774533
2018-08-03 18:43:45 -07:00
Paul Zhang
9ffb043af4 qcacld-3.0: Remove the ssidlen check in get_sta_stats
Per protocol definition, the ssid length in OWE bss’s IE is zero
when in OWE transition mode. And the api wlan_hdd_get_sta_stats
thinks it is invalid ssidlen and returns directly. It causes the
uplayer can not get stats info.

Change-Id: I20eb7aa79ce25a4b66d9be093510eb414d4fca42
CRs-Fixed: 2285542
2018-08-03 18:43:44 -07:00
Arunk Khandavalli
a592bb6164 qcacld-3.0: Dont start the adapter from the change interface
With the latest android upgrade after the sap is turned off
change interface will switch netdev back to original mode and
starting the adapter in this state will create resources even
when the upper layer is not using the netdev.
Do not start the adapter from the change interface.

Change-Id: I763879ecc84dca4115bca0e4e805b8b4b6108bb8
CRs-Fixed: 2270730
2018-08-03 18:43:38 -07:00
nshrivas
14a4a40051 Release 5.2.0.91A
Release 5.2.0.91A

Change-Id: I5248a61dae532b393c4bcf039cfaf875a07d45af
CRs-Fixed: 774533
2018-08-03 14:28:41 -07:00
Dustin Brown
024c9cd510 qcacld-3.0: Split probe into probe and reinit
The PLD probe event handler does both probe and reinit. However, the
probe and reinit logics are quite different. Split this shared logic
into two handler functions, one for probe and one for reinit. Update the
PLD probe event handler to invoke the correct handler function based on
the reinit flag received as part of the event.

Change-Id: Id48d18aee0d449b6849297848c2bab96c6e008ae
CRs-Fixed: 2290221
2018-08-03 14:28:41 -07:00
Dustin Brown
86d196bacd qcacld-3.0: Normalize bus bandwidth init/deinit sequence
The HDD bus bandwidth infrastructure init/deinit sequence is currently
very sporadic. Startup and re-init initialize it at different point, and
failed to de-initialize it in the case of failure. Likewise, exit and
shutdown de-initialize it at different points. Update the HDD bus
bandwidth init/deinit sequence so that it is uniform and symmetrical in
all situations.

Change-Id: I5312bd340d885aafb8d4e809672eb02afc199781
CRs-Fixed: 2290237
2018-08-03 14:28:37 -07:00
nshrivas
f6e75c88de Release 5.2.0.91
Release 5.2.0.91

Change-Id: Ibc08ae0bc74d7e2332e515ce84a9831c3fc93ca1
CRs-Fixed: 774533
2018-08-03 12:39:58 -07:00
Dustin Brown
a31fa1103b qcacld-3.0: Validate adapter before sched scan stop
wlan_hdd_cfg80211_sched_scan_stop() currently does not validate the
given adapter or the hdd context. Validate both before performing a
scheduled scan stop operation on said adapter.

Change-Id: I4e0370ad059fbb0371a38300f33dfae7a9f8106d
CRs-Fixed: 2289411
2018-08-03 12:39:58 -07:00
nshrivas
af5a0e7212 Release 5.2.0.90Z
Release 5.2.0.90Z

Change-Id: Ib1788e1536b915088cf3603fb1287e1fc29134cb
CRs-Fixed: 774533
2018-08-02 20:36:03 -07:00
Ashish Kumar Dhanotiya
9fbe737fee qcacld-3.0: Increase ll_stats driver buffer size
Currently driver allocates buffer of size 10KB which is
getting filled completely in some cases when size of
ll_stats is more than 10KB. Because of this driver
ignores some of the stats and user space does not
get the complete stats.

To address this issue increase the size of the buffer
to 12 KB.

Change-Id: I8c5500545a3c69ecb5ba3b1bb3e7f3338a61714f
CRs-Fixed: 2279495
2018-08-02 20:36:03 -07:00
nshrivas
e0769cf1d1 Release 5.2.0.90Y
Release 5.2.0.90Y

Change-Id: I585f325fe8f63f4edf6afa90d08566b32101fe33
CRs-Fixed: 774533
2018-08-02 18:29:59 -07:00
Wu Gao
3365e780ff qcacld-3.0: Cleanup P2P and TDLS WNI configures
Use new cfg API for P2P and TDLS WNI configures, and cleanup related
legacy codes. Remove two not use P2P INI configures.

Change-Id: Ie37fd5e598ececba561581952a23601595607b2e
CRs-Fixed: 2286387
2018-08-02 18:29:58 -07:00
Kiran Kumar Lokere
8dba1899b8 qcacld-3.0: Fix the issue with HE MCS cfg with Nss setting
When the Nss is set to 2,MCS0-11 is used as default HE MCS config
for 2x2 mode which may not be same as 1x1 HE MCS config.
Use the 1x1 MCS config for Nss setting to 2 to keep the MCS
config same for both streams.

Change-Id: I76157357667696979976983e81f014182dfe769e
CRs-Fixed: 2284467
2018-08-02 18:29:55 -07:00
nshrivas
ba4125e5e8 Release 5.2.0.90X
Release 5.2.0.90X

Change-Id: I5b6c292e1c9def88b7dca81b9ba98ef0685fc987
CRs-Fixed: 774533
2018-08-02 15:00:24 -07:00
Yeshwanth Sriram Guntuka
25fa2c0792 qcacld-3.0: Don't fill any WMA request if target is not ready
If any WMA request is queued in wma hold req/vdev resp queue after fw
has crashed and sent the corresponding uevent to HOST, request will
timeout and if at the same time, SSR is also going on, it may lead to
various issues and crashes.

Check whether target is ready or not before queuing any request
in wma hold req/vdev resp queue.

Change-Id: I26b5746e9ba4f57f46b3a5a486bd85ef150d0ee7
CRs-Fixed: 2289004
2018-08-02 15:00:23 -07:00
Kiran Kumar Lokere
eac7fe9f27 qcacld-3.0: Fix issue with 256 BA buff size setting
Change the BA buffer size attribute value to 16-bit to set
the 256 BA buffer size. Define the max supported BA buffer
size and advertise the max supported buffer size if the
user configures the value greater than supported.

Change-Id: I5efdee60517e02572386e9751706722987f44261
CRs-Fixed: 2284461
2018-08-02 15:00:20 -07:00
nshrivas
2ce4b8a8a8 Release 5.2.0.90W
Release 5.2.0.90W

Change-Id: I0e4e68982b6e9eb3e1a2df2ee3daeb9eb264bc13
CRs-Fixed: 774533
2018-08-02 02:48:39 -07:00
Krunal Soni
d2136c7666 qcacld-3.0: Block Ack state machine enhancement
Add state machine changes to Addba request handling
in order to include IN_PROGRESS state until addba
response tx is not successfully completed. If response
tx is successful, move tid to ACTIVE state.

CRs-Fixed: 2254887
Change-Id: I09f9d8aa09bbb3fb98e0873657d1b8072371f0d8
2018-08-02 02:48:36 -07:00
nshrivas
8cd2124789 Release 5.2.0.90V
Release 5.2.0.90V

Change-Id: Id274361e24ad73acac138f5d9639bb1e22abec14
CRs-Fixed: 774533
2018-08-01 20:37:24 -07:00
Kiran Kumar Lokere
86e855955c qcacld-3.0: Set the TxBF CBF frame rate with NSTS setting
Set the TxBF CBF frame rates to FW with user NSTS configuration
setting.

Change-Id: I553c253bddb695f5c61d889cd7ef57694d00954f
CRs-Fixed: 2281265
2018-08-01 20:37:24 -07:00
Venkata Sharath Chandra Manchala
43cb55c5cf qcacld-3.0: Enable Per Peer REO stats
Add a command: iwpriv <interface> txrx_stats 28 <mac_id>
for printing REO Queue statistics.

Change-Id: Ic5001706a6682bec3e8170c1e96825161fb5fc9d
CRs-Fixed: 2217833
2018-08-01 20:37:20 -07:00
nshrivas
9ef11955d2 Release 5.2.0.90U
Release 5.2.0.90U

Change-Id: I74cd0ad5b75f08d2f9e2368bcf1ad37a06cb87df
CRs-Fixed: 774533
2018-08-01 02:15:11 -07:00
Jianmin Zhu
2f708f250d qcacld-3.0: Avoid buffer overflow when process SA query action frame
No frame length check when extract 11w transaction id from SA
query request and response action frame, if frame length is
shorter than expected,  buffer overflow will happen
Change-Id: Iddefa809023da244564cfd227ccfe8c2de5717c0
CRs-Fixed: 2263320
2018-08-01 02:15:11 -07:00
nshrivas
0e98185f04 Release 5.2.0.90T
Release 5.2.0.90T

Change-Id: I1d2fa01819dd62afb0077b1fa3ce033c589e944f
CRs-Fixed: 774533
2018-07-31 19:01:19 -07:00
Dustin Brown
7e761c71eb qcacld-3.0: Reduce hdd/ipa info logs
A number of HDD and IPA logs are generally unnecessary and have been
identified as contributing to log spam. Reduce these log messages to the
debug level.

Change-Id: I2f92bb4caec5adc65fdad0146298aa5f88b43def
CRs-Fixed: 2288430
2018-07-31 19:01:18 -07:00
nshrivas
bc7d718715 Release 5.2.0.90S
Release 5.2.0.90S

Change-Id: I42e9a0cd71eb68a8507289a05e248f07e2f5bff0
CRs-Fixed: 774533
2018-07-31 15:25:42 -07:00
Dustin Brown
aeb556490f qcacld-3.0: Reduce logging for hdd netdev notifier
Reduce error logs in __hdd_netdev_notifier_call which do not alway
indicate an error.

Change-Id: I7386cb26993877ed86802b60240cd04b85dd4e8b
CRs-Fixed: 2287681
2018-07-31 15:25:41 -07:00
Abhishek Singh
53791fa58b qcacld-3.0: Remove dead code related to driver acs
Support of ini to control driver acs is removed, therefore remove
related code which is no longer used.

Change-Id: I3d279de67ee5f36b785e4516edd9f14484311f5c
CRs-Fixed: 2284253
2018-07-31 15:25:37 -07:00
nshrivas
842e48f930 Release 5.2.0.90R
Release 5.2.0.90R

Change-Id: I2a7b91810ae680066f79e3b76cf50a7ec3fc1aa2
CRs-Fixed: 774533
2018-07-31 12:58:50 -07:00
Jeff Johnson
354c20bce8 qcacld-3.0: Implement WLAN_FEATURE_SARV1_TO_SARV2
SARv1 to SARv2 upgrade can have the following problem:
1) Userspace application was written to use SARv1 BDF entries
2) Product is configured with SAR V2 BDF entries

So introduce WLAN_FEATURE_SARV1_TO_SARV2 which has the logic:
If this feature is enabled, and if the firmware is configured with SAR
V2 support, and if the incoming request is to enable a SAR V1 BDF
entry, then the WMI command is generated to actually configure a SAR
V2 BDF entry.

CRs-Fixed: 2282071
Change-Id: I1f4c65d0315b56af6646ca1d5491eaa9c1f732a5
2018-07-31 12:58:46 -07:00
Jeff Johnson
f917638b7d qcacld-3.0: Save sar version in the HDD context
SAR version information is now being populated in struct wma_tgt_cfg.
Keep a copy of the information in the HDD context for local reference.

Change-Id: I7bc943fc71b651baeb56e4966d97efca2cccbf4e
CRs-Fixed: 2282071
2018-07-31 12:58:42 -07:00
Jeff Johnson
0918f242d1 qcacld-3.0: Add SAR version to struct wma_tgt_cfg
HDD needs to know the SAR version running in firmware so add that
information to struct wma_tgt_cfg.

Change-Id: Idcb79921cb417a923ced8b6cfed2672bee03eaf1
CRs-Fixed: 2282071
2018-07-31 12:58:39 -07:00
nshrivas
0ad44e9bec Release 5.2.0.90Q
Release 5.2.0.90Q

Change-Id: I08897469513a656cbcf56afe7969e9d695e7087b
CRs-Fixed: 774533
2018-07-31 10:39:37 -07:00
Dustin Brown
b0b240a984 qcacld-3.0: Reset txrx handles during STA deinit
HDD currently reset various txrx handles during the deinit of an access
point (AP) interface, but fails to do so for station interfaces. This
can lead to a user-after-free while changing the interface mode from
station to something else. Reset the txrx handles during deinit for
station interfaces.

Change-Id: I189089fabefb9c430da493c0c99473179d02b5cd
CRs-Fixed: 2283532
2018-07-31 10:39:36 -07:00
nshrivas
f0a4e5796a Release 5.2.0.90P
Release 5.2.0.90P

Change-Id: I9ca768973b2e08fed434799272b15c181f90ece2
CRs-Fixed: 774533
2018-07-31 06:10:27 -07:00
Paul Zhang
7d1d5361c5 qcacld-3.0: update rx nss per num_rf_chains
The host will update the rx nss after it gets the
rx nss info from the operating mode notification
IE. Currently, it does not check the num rf chains
of the dut. It causes the difference between
software and hardware.

Change-Id: I5d6852f8e2928cc99fc88ccface3bc4abe97f273
CRs-Fixed: 2280003
2018-07-31 06:10:27 -07:00
nshrivas
f7253dc8f2 Release 5.2.0.90O
Release 5.2.0.90O

Change-Id: I85ad29bcef6feabd4f90413c6dc23606329fbd6b
CRs-Fixed: 774533
2018-07-31 00:46:37 -07:00
Dustin Brown
3cfe0d47d0 qcacld-3.0: Check peers in hdd_check_for_leaks
Before checking for other kinds of resources leaks, check to ensure all
objmgr peers have been properly freed.

Change-Id: Ifb1016be456c26e140f324fc3c858bd4a5fa6a27
CRs-Fixed: 2285186
2018-07-31 00:46:36 -07:00
Mohit Khanna
b8b6e58eb4 qcacld-3.0: Remove peer AST entries on peer delete
During peer removal, call cdp_peer_teardown to
make sure all the peer AST entries are removed.
This also marks the peer->delete_in_progress flag.

Change-Id: Ibe4a0244cadc2b8073e4e71a925a615447d00933
CRs-Fixed: 2287663
2018-07-31 00:46:33 -07:00
nshrivas
213ce15a42 Release 5.2.0.90N
Release 5.2.0.90N

Change-Id: I050df516a62c132e5d255c5555177cfecf3c05aa
CRs-Fixed: 774533
2018-07-30 18:26:25 -07:00
Pragaspathi Thilagaraj
7dba4a7af8 qcacld-3.0: Remove csr_release_command_roam call in csr_roam_issue_connect
In the function csr_queue_sme_command, we memset the memory for
the roam command to 0 in case of failure and release the memory
to the global command pool. But in csr_roam_issue_connect,
csr_release_command_roam is called again in case of failure,
and this can lead to memset of memory to 0 that is released to
global command pool.

Remove the redundant csr_release_command_roam in the function
csr_roam_issue_connect and the call to csr_reinit_preauth_cmd in
csr_roam_enqueue_preauth.

Change-Id: Ifab3551dd3b2dbb2d135b5488f7b09f422648abb
CRs-Fixed: 2280904
2018-07-30 18:26:24 -07:00
nshrivas
45530e7ce9 Release 5.2.0.90M
Release 5.2.0.90M

Change-Id: Ide69bd005ae7c81426010f0a12503508d3719006
CRs-Fixed: 774533
2018-07-30 16:34:07 -07:00
Jun Wang
92cd83692b qcacld-3.0: remove time-consuming debug log
print format "pS" in module will call module_address_lookup in
kernel, which will disable preempt. This could result in some
performance issues, like block rt task vsync_retire_work and
then cause janks.

Change-Id: I524b03315df7b1f6464912d2c9ce74b8dc33ea1a
CRs-Fixed: 2267779
2018-07-30 16:34:06 -07:00
nshrivas
1c1d573ae6 Release 5.2.0.90L
Release 5.2.0.90L

Change-Id: Ibba84e234674417a474d24f6a6fc917c1934fe3b
CRs-Fixed: 774533
2018-07-30 14:08:30 -07:00
Liangwei Dong
4bfffb4487 qcacld-3.0: Fix SAP 11g no ht protection failure
1.Scan entry uses MGMT_SUBTYPE_BEACON to specify
the frame type. Correct lim_handle_sap_beacon
to use MGMT_SUBTYPE_BEACON to check frame type.

2.lim_allocate_and_get_bcn return corrected
pkt and pkt info.

Change-Id: I607be66a376f5121d100db52a55faf32c088a94a
CRs-Fixed: 2282274
2018-07-30 14:08:29 -07:00
nshrivas
407ed04a41 Release 5.2.0.90K
Release 5.2.0.90K

Change-Id: If8c9e4e2c8f0bf954a9600c37e298905b4997e23
CRs-Fixed: 774533
2018-07-30 09:53:13 -07:00
Vignesh Viswanathan
cbbc358095 qcacld-3.0: Modify Default value for Switch to 11n OUI ini
Currently defined default value for gActionOUISwitchTo11nMode leads
to vendor APs which don't require the WAR also to be identified
for forcing 11n connection.

Fix the default value to limit the WAR to only the required vendor
AP.

Change-Id: Icecd5a3a92a35eb4d0a7eb4ae156aed7dcfbfb86
CRs-Fixed: 2276057
2018-07-30 09:53:13 -07:00
Jianmin Zhu
a0d8e00d02 qcacld-3.0: Fix double free in csr_roaming_state_config_cnf_processor
The beacon ie of AP to connect in sme cmd may be freed and set to
NULL in csr_roam if csr_roam_issue_join failed,
scan_result->Result.pvIes may be different in start and end of
csr_roaming_state_config_cnf_processor.

Fixed by using a local bool val to mark whether beacon ie is new
malloced and need free.

Change-Id: I04ec952273a28a3b8a215dd6812bba213ff5309a
CRs-Fixed: 2284311
2018-07-30 09:53:10 -07:00
nshrivas
5d54cb1ba4 Release 5.2.0.90J
Release 5.2.0.90J

Change-Id: If4bf0838f82fb5bec7eafe3999d57504f8aabf66
CRs-Fixed: 774533
2018-07-30 02:53:32 -07:00
Dundi Raviteja
e232cf1691 qcacld-3.0: Use request manager framework for LL stats response event
We are transitioning the usage of LL stats response event
to request manager framework.

Change-Id: Ice8b3d53beb47b345ed569f2b4bf790e9f5ce506
CRs-Fixed: 2274933
2018-07-30 02:53:31 -07:00
nshrivas
afb27b7d6c Release 5.2.0.90I
Release 5.2.0.90I

Change-Id: Ifad7bd6264088058521f817f7ab2a00f916fa579
CRs-Fixed: 774533
2018-07-30 00:49:03 -07:00
Ashish Kumar Dhanotiya
2853ba04f7 qcacld-3.0: Implement GET_DISABLE_CHANNEL_LIST driver command
Propagation from prima to qcacld-3.0

Implement GET_DISABLE_CHANNEL_LIST driver command to get disable
channel list programed by SET_DISABLE_CHANNEL_LIST driver command.

Change-Id: Ib741e1cd23cef105314325aaec86feb50f36a181
CRs-Fixed: 2206336
2018-07-29 10:11:51 -07:00
nshrivas
41dbf327c7 Release 5.2.0.90H
Release 5.2.0.90H

Change-Id: I276414694d189b280ddaf89343ffe4a24aecae8d
CRs-Fixed: 774533
2018-07-27 12:35:00 -07:00
Dundi Raviteja
cc95c56e15 qcacld-3.0: Remove hdd context validation in wlan_hdd_disconnect
If driver is removing while STA is in connected state, disconnect
is not happening because hdd context validation will not be success
while driver unload is in progress.

To address this issue, remove validation of hdd context in
wlan_hdd_disconnect to allow disconnection while driver unload
is in progress.

Change-Id: Ia10aa9237a30490f3085458ab38ce27c4eeebaf0
CRs-Fixed: 2284198
2018-07-27 12:35:00 -07:00
Ajit Pal Singh
8184e939b6 qcacld-3.0: Init tx_mutex in pdev_attach
Initialise spinlock: tx_mutex in pdev_attach instead of
pdev_post_attach as it may be accessed
in ol_tx_flow_ct_unpause_os_q() just after FW download.

Change-Id: I9de2eacd573420d23bc3a71a52dfb27bc1cfdab5
CRs-Fixed: 2285503
2018-07-27 12:34:57 -07:00
nshrivas
1449648511 Release 5.2.0.90G
Release 5.2.0.90G

Change-Id: I73d219578f50ed8109899b35b0cf0d120273ce77
CRs-Fixed: 774533
2018-07-27 09:09:43 -07:00
Nirav Shah
790d943594 qcacld-3.0: Add per module logging macros without function/line info
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.

Change-Id: Id808fef623b82cec38fc31071ef384f3ff0c92da
CRs-Fixed: 2278874
2018-07-27 09:09:42 -07:00
Ashish Kumar Dhanotiya
3f78e68b92 qcacld-3.0: Add support to disable channel list
Propagation from prima to qcacld-3.0

Add support to disable channel list received with command
"SET_DISABLE_CHANNEL_LIST".

As part of this command, number of channels and list
of that many channels should be given. When SAP comes up, disable
the channels received in the command. If any of the interface
is up on any of the channel from the list, first disconnect
the interface and start the interface on the new channel.

Change-Id: I3c7810bfde78878a3e60570a13bf2741e1da599b
CRs-Fixed: 2205305
2018-07-27 09:09:37 -07:00
nshrivas
dbd9972463 Release 5.2.0.90F
Release 5.2.0.90F

Change-Id: I9ffa1f0e531f6354cb016a3fcecdcc493a09b82e
CRs-Fixed: 774533
2018-07-27 06:42:10 -07:00
Ashish Kumar Dhanotiya
7e345d04dd qcacld-3.0: Add data validation for avoid frequency command
Currently in avoid frequency vendor command, data validation
is not being done, since this data comes from userspace driver
should not be using this data pointer without validation.

To address this issue add validation for data pointer and data
length received in driver.

Change-Id: I7b56e2ddcbcb5e98dd93d152033db48063e772d3
CRs-Fixed: 2252793
2018-07-27 06:42:10 -07:00
nshrivas
b256327523 Release 5.2.0.90E
Release 5.2.0.90E

Change-Id: I8e051111deb91d4db8fb86d3933c2697791a7e31
CRs-Fixed: 774533
2018-07-26 15:36:53 -07:00
Pragaspathi Thilagaraj
b37dad385f qcacld-3.0: Serialize the command eSmeCommandDelStaSession
The command eSmeCommandDelStaSession issues vdev delete to
firmware. As this command eSmeCommandDelStaSession is not
serialized, this may issue delete vdev before the peers for the
vdev are deleted, resulting in fw assert. Serialization should
be brought in for this command, so that first eSmeCommandRoam
command will do vdev_stop-->remove_peer-->vdev_down and then
eSmeCommandDelStaSession will be processed which will send vdev
delete.

Post the command eSmeCommandDelStaSession to the serialization
module and WMA_DEL_STA_SELF_REQ will be posted from the sme
eSmeCommandDelStaSession handler.

Change-Id: I60fcbf622b961162c647db3638b5e019c5231971
CRs-Fixed: 2270982
2018-07-26 15:36:53 -07:00
nshrivas
13f092aea5 Release 5.2.0.90D
Release 5.2.0.90D

Change-Id: I0a6403de38f56a7bb3fc762636cf41fd261236d8
CRs-Fixed: 774533
2018-07-26 12:23:20 -07:00
Jeff Johnson
bffd274ba3 qcacld-3.0: Remove session_id from nan_datapath_peer_ind (Step 2)
Currently struct nan_datapath_peer_ind contains the following:
	uint8_t session_id;

This is problematic since "session_id" is a legacy concept and should
not be used in the converged project. Fortunately this field does not
actually serve any purpose. But in order to cleanly remove it a 3-step
approach is required.

Step 1 (qcacld Change If6cf48ccbfe87b23b275720df51c6cc26af9fa5e):
Remove the logic from the converged NAN code which currently reads
this field and logs the value.

Step 2 (this change):
Remove the logic from the legacy NAN code which sets this field.

Step 3 (qcacld Change Ibeb8007c96ae1a902bfd7dd99a42ba4a291a1dc6):
Remove the session_id field from struct nan_datapath_peer_ind.

Change-Id: I2819556d48a9dd901158aaa04d6bda9c36f33012
CRs-Fixed: 2284400
2018-07-26 12:23:19 -07:00
nshrivas
4cfe234197 Release 5.2.0.90C
Release 5.2.0.90C

Change-Id: Ibdc15249bd77d5c5ccac285042ccde81132e85fa
CRs-Fixed: 774533
2018-07-25 22:57:58 -07:00
Jianmin Zhu
d46bc4657f qcacld-3.0: Avoid buffer overflow in wma_process_bip
If 11w is enabled, mmie should be included in broadcast
multicast rmf, length check need consider it to avoid buffer
overflow

CRs-Fixed: 2270117
Change-Id: I6c2ebe18fb5b6e4246ba6d28c1dbc55175279e30
2018-07-25 22:57:58 -07:00
nshrivas
96dca9e04b Release 5.2.0.90B
Release 5.2.0.90B

Change-Id: Ie7c9aad55985811dffe1930c639aec8d83fc674a
CRs-Fixed: 774533
2018-07-25 14:43:34 -07:00
Dustin Brown
29533f2ca1 qcacld-3.0: Check for vdev/pdev leaks during SSR
Currently, all resource leaks are skipped during the SSR reinit stage.
However, recently added vdev and pdev leak checks apply equally as well
to SSR reinit. During SSR do as many resource leak checks as possible,
while retaining the entire set for normal use cases.

Change-Id: I33248a9fb0fbacddf9ea8682ff984290712c29d3
CRs-Fixed: 2284384
2018-07-25 14:43:33 -07:00
nshrivas
a935b1377f Release 5.2.0.90A
Release 5.2.0.90A

Change-Id: Ic45fe0b3253c9999aac494306a4f5c255602cb3e
CRs-Fixed: 774533
2018-07-25 11:52:11 -07:00
Nachiket Kukade
ef86101690 qcacld-3.0: Remove code handling blacklist and whitelist OUI
This is an older implmenetation of handling blacklist and whitelist
OUI's. Hostapd doesn't send this information in start_ap now. There
is a possible out of bound memory access happening while parsing an
IE with this code. Remove the code to avoid security risk.

Remove redundant code handling blacklist and whitelist OUI IE's.

Change-Id: Ib16d26d6766bcffb53de34dca77073a3e986eee2
CRs-Fixed: 2239897
2018-07-25 11:52:08 -07:00
nshrivas
6ca91d61e1 Release 5.2.0.90
Release 5.2.0.90

Change-Id: I2e1443baee607e7b366a24a1eed5a1dc680c87e5
CRs-Fixed: 774533
2018-07-25 09:40:44 -07:00
Rachit Kankane
154559caad qcacld-3.0: Reduce MAX_BBS and MAX_PEERs for Genoa
Max 3 BSS sessions and 10 peers are required in Genoa.
To support this, reduce SIR_MAX_SUPPORTED_BSS to 3 and
SIR_SAP_MAX_NUM_PEERS to 10.

Change-Id: Ic773b5b38193d446288321c2dfd740f6de57704e
CRs-Fixed: 2283825
2018-07-25 09:40:43 -07:00
Pragaspathi Thilagaraj
ea97fe9ff1 qcacld-3.0: Fix mem leak in wma_roam_synch_frame_event_handler
The function wma_roam_synch_frame_event_handler, memory is
allocated for iface->roam_synch_frame_ind.bcn_probe_rsp,
iface->roam_synch_frame_ind.bcn_reassoc_req,
iface->roam_synch_frame_ind.bcn_reassoc_rsp when the wmi event
WMI_ROAM_SYNCH_FRAME_EVENT is received. This event is followed
by a WMI_ROAM_SYNCH_EVENT from the firmware where the host
copies the bcn_probe_rsp, bcn_reassoc_req, bcn_reassoc_rsp to
the structure roam_synch_ind_ptr and frees the allocated memory.
In this flow memory leak can happen in following cases:
 1. Firmware sends multiple cascade of WMI_ROAM_SYNCH_FRAME_EVENT
the host allocates bcn_reassoc_req, bcn_reassoc_rsp and
bcn_probe_rsp with out freeing the previous instance.
 2. Firmware sends WMI_ROAM_SYNCH_FRAME_EVENT with either
bcn_reassoc_req or bcn_reassoc_req or bcn_probe_rsp NULL or all
the three are NULL.
 3. Firmware sends WMI_ROAM_SYNCH_FRAME_EVENT having
bcn_reassoc_req bcn_reassoc_req and bcn_probe_rsp. Then it sends
the WMI_ROAM_SYNCH_EVENT with non zero bcn_reassoc_req_len or
bcn_reassoc_rsp_len or bcn_probe_rsp length.
 4. Host doesn't free the allocated memory in
wma_roam_synch_frame_event_handler during failure cases.

Check if received iface->roam_synch_frame_ind has non NULL
bcn_probe_rsp, bcn_reassoc_req, bcn_reassoc_rsp and free the
same before allocating new memory. Also free the allocated
bcn_probe_rsp, bcn_reassoc_req, bcn_reassoc_rsp in failure
return cases.

Change-Id: I2b76769d09fd61929f7837cb8661d778cd2f881a
CRs-Fixed: 2282413
2018-07-25 09:40:39 -07:00
Nirav Shah
d6fa0f8cd8 qcacld-3.0: Add compilation flag for enter/exit macros
Map all enter/exit log macros to enter/exit QDF TRACE macro
to provide option to compile out enter/exit logs if required.

Change-Id: I0c6cd633705e820fcfeb47e3f81a3522c9ef1974
CRs-Fixed: 2274850
2018-07-25 09:40:33 -07:00
nshrivas
9151602490 Release 5.2.0.89Z
Release 5.2.0.89Z

Change-Id: Ia0ac605b12c874a1d33be20078aeb3c645dd2fc3
CRs-Fixed: 774533
2018-07-25 07:49:49 -07:00
Vignesh Viswanathan
6177c7e8ec qcacld-3.0: Disable sending of solicited BTM query frame by default
Change the btm_offload_config INI default to disable the sending of
solicited BTM query frame from the host.

Change-Id: Ie1d1eeff268e445ed19c62413712ab2178c7ba54
CRs-Fixed: 2279249
2018-07-25 07:49:49 -07:00
nshrivas
412ddb6b0a Release 5.2.0.89Y
Release 5.2.0.89Y

Change-Id: I10ea03bebf949d267f8634d756b48490903355bf
CRs-Fixed: 774533
2018-07-25 01:24:21 -07:00