Commit Graph

11727 Commits

Author SHA1 Message Date
nshrivas
95cc5a27ca Release 5.2.0.95Q
Release 5.2.0.95Q

Change-Id: Ica9cc24f35cbc8dde989c5cb83cfbd3c1b77d734
CRs-Fixed: 774533
2018-09-06 22:22:36 -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
Dustin Brown
ad698aef12 qcacld-3.0: Update country code from features init
hdd_reg_set_country() validates the hdd context, which returns an error
if start_modules_in_progress is true. This was the motivation behind
I4378438873ffa72c0fce415ade65b91b90e2c84a, which effectively moves the
call to hdd_reg_set_country() to after start modules is complete.
However, all of the callers to hdd_reg_set_country() already validate
the hdd context, so this check is redundant. This means
I4378438873ffa72c0fce415ade65b91b90e2c84a was unnecessary. As this
change also brought with it some technical debt in the form of
additional driver_status checks, simply remove the validate hdd context
check from hdd_reg_set_country(), and replace the original call site.

This change is also necessary to enable the removal of the
DRIVER_MODULES_OPENED state (I4ec1268eb491fec04a78b90e51c6e616d95e019e).

Change-Id: I5a0d8a8407969275f023431095ff6205ef515b62
CRs-Fixed: 2310446
2018-09-06 22:22:33 -07:00
nshrivas
3691901fe9 Release 5.2.0.95P
Release 5.2.0.95P

Change-Id: Icd336cd7379575333ad32b08373dbf92276bc0aa
CRs-Fixed: 774533
2018-09-06 20:34:24 -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
Rachit Kankane
1de679d3dc qcacld-3.0: Disable P2P_LISTEN_OFFLOAD for Genoa
Disable CONFIG_FEATURE_P2P_LISTEN_OFFLOAD for genoa

Change-Id: I9afeb16d7167bcc7f491ac9d79d383cb6c1ee077
CRs-Fixed: 2310201
2018-09-06 20:34:20 -07:00
nshrivas
59975c4308 Release 5.2.0.95O
Release 5.2.0.95O

Change-Id: If16650dd7595bc52af24a71655330afdcc736dbf
CRs-Fixed: 774533
2018-09-06 18:56:00 -07:00
Dustin Brown
099048b780 qcacld-3.0: Enable scheduler history for SLUB builds
Enable the scheduler history when compiling SLUB debug builds.

Change-Id: If06f9076bcb01fe5dbb3fd4d031fc87b7e883425
CRs-Fixed: 2307251
2018-09-06 18:56:00 -07:00
nshrivas
11fcfcceaf Release 5.2.0.95N
Release 5.2.0.95N

Change-Id: I95df41866231c310e3d0db8579d8caf942cd249a
CRs-Fixed: 774533
2018-09-06 16:13:15 -07:00
Krunal Soni
3de6853e17 qcacld-3.0: Enable policy manager utfw only in slub debug build
1) CONFIG_MPC_UT_FRAMEWORK should only be enabled for slub debug build
2) CONFIG_MPC_UT_FRAMEWORK should be protected under
gEnableUnitTestFramework INI setting.

CRs-Fixed: 2309562
Change-Id: I314ec928af2a350d518eb8f8dd62dbadee1746e8
2018-09-06 16:13:15 -07:00
Amar Singhal
cc5a4ec63d qcacld-3.0: Check for hdd_ctx being NULL
In function hdd_register_rx_ol, hdd_ctx is retruned by cds_get_context.
Check for hdd_ctx being NULL before de-referencing it.

Change-Id: I5e45036930a03368310871d108062c2d24742602
CRs-Fixed: 2299782
2018-09-06 10:08:05 -07:00
Amar Singhal
9babc67597 qcacld-3.0: Check if NAPI ptr is NULL
Check if pointer returned by hdd_napi_get_all is NULL. This would prevent
de-referencing of NULL pointer.

Change-Id: I23af3319422e0d2ebd93ce410d76457c54551538
CRs-Fixed: 2299788
2018-09-06 10:06:11 -07:00
Amar Singhal
ddd2cf98d2 qcacld-3.0: Unlock the rx_ring spin-lock appropriately
Unlock the rx_ring.rx_hash_lock spin-lock when returning due to
failure to do smmu map_unmap.

Change-Id: I1b905c0ad529c80f78807c030920121ee0909825
CRs-Fixed: 2299785
2018-09-06 10:05:27 -07:00
nshrivas
f0144b67ab Release 5.2.0.95M
Release 5.2.0.95M

Change-Id: Iaac5e2408d14dfa4488720bf6351439d844012a3
CRs-Fixed: 774533
2018-09-06 08:54:37 -07:00
Rajeev Kumar Sirasanagandla
85f8b02175 qcacld-3.0: Add debugfs support for offload info
Add debugfs entry to get offload info (mc addr list, arp, ns etc.,)
for STA interface.

Change-Id: I8bf4491929b5ef04ed5ce19f4b0030945f0eb0c0
CRs-Fixed: 2203786
2018-09-06 08:54:37 -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
Rajeev Kumar Sirasanagandla
197d417733 qcacld-3.0: Add debugfs framework support for CSR
Add debugfs framework support to get connect, scan,
roam scan statistics and offload info from debugfs.

Change-Id: I86bdd7e449488d2bcda1b2eaaeb07aac7465770b
CRs-Fixed: 2203626
2018-09-06 08:54:31 -07:00
nshrivas
ac7764bd5e Release 5.2.0.95L
Release 5.2.0.95L

Change-Id: I9d44a165c2466d431315eeebde98f043deec5b30
CRs-Fixed: 774533
2018-09-06 01:41:53 -07:00
Alok Kumar
a13db78b09 qcacld-3.0: Add pre-allocated pool of SKBs for Rx ring
In low memory condition, RX ring may become empty when all
SKB buffers attached to the ring get consumed and kernel is
unable to allocate SKB buffer during replenish.

Create a pre-allocated pool of skbs during driver load time
and request the buffer from this pool in low memory case.

Change-Id: If8c6a4fe04f3c931dc60dcffe28e45166eab9835
CRs-Fixed: 2306861
2018-09-06 01:41:52 -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
nshrivas
5599e816fe Release 5.2.0.95K
Release 5.2.0.95K

Change-Id: I9d70edc449ae98c25e38f4a8de0e108f9d452b14
CRs-Fixed: 774533
2018-09-05 23:55:39 -07:00
Kiran Kumar Lokere
3499dcb1f4 qcacld-3.0: Fix the issue with Nss setting
Correct the typo in status check variable due to which
Nss setting returns failure.

Change-Id: I81a430b0482e79ee3b2d0b2c4e6aea232907919a
CRs-Fixed: 2302465
2018-09-05 23:55:39 -07:00
Dustin Brown
94ce20f5a4 qcacld-3.0: Validate context for qdf transition check
cds_is_module_state_transitioning() is effectively a partial
re-implementation of wlan_hdd_validate_context(). Instead of having
multiple copies of this logic, register a new callback in QDF which
simply calls wlan_hdd_validate_context() instead.

Change-Id: If533d72725b4cc9dbe5e4b9c25e499657c8e1376
CRs-Fixed: 2308771
2018-09-05 23:55:35 -07:00
nshrivas
0d5a51e3ad Release 5.2.0.95J
Release 5.2.0.95J

Change-Id: I068340a1f93e3e453fd2f45276c979e8318cf550
CRs-Fixed: 774533
2018-09-05 22:14:48 -07:00
Kiran Kumar Lokere
ad2a36b257 qcacld-3.0: Do not disable the Tx bfer capability when Nss is 1
Do not disable the Tx beamformer capability when Nss is set to 1.
FW would check the current chainmask configuration and enables
the Tx beamformer capability accordingly.

Change-Id: I8709147c63f2990f135d098fdf13fc3d9b00d7bc
CRs-Fixed: 2305772
2018-09-05 22:14:48 -07:00
Amar Singhal
4e855ade4c qcacld-3.0: Check for pdev being NULL
In function ol_txrx_offld_flush, check for pdev being
NULL, before de-referencing it.

Change-Id: I8999d894c74b6ef10cef91345370d859f5eee8ec
CRs-Fixed: 2299780
2018-09-05 22:14:44 -07:00
nshrivas
d457201d46 Release 5.2.0.95I
Release 5.2.0.95I

Change-Id: I78108260d8021e622e835bbc2b47e432ec927555
CRs-Fixed: 774533
2018-09-05 18:11:24 -07:00
Bala Venkatesh
113a9e602a qcacld-3.0: Configure the tdls offchannel params through IOCTL
Add support to configure tdls offchannel params
through IOCTL commands.

Change-Id: I90ba90b5ef980f837ce4759755efe190672ad911
CRs-Fixed: 2303145
2018-09-05 18:11:23 -07:00
nshrivas
252cb2bd7b Release 5.2.0.95H
Release 5.2.0.95H

Change-Id: I7245de192e06ef9faa3a076b6ec9f9911ccf80ab
CRs-Fixed: 774533
2018-09-05 16:45:35 -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
nshrivas
b6723ecdb7 Release 5.2.0.95G
Release 5.2.0.95G

Change-Id: I25f26c7c9b185b0400f915ce96216f60bf05b2b4
CRs-Fixed: 774533
2018-09-05 09:49:59 -07:00
Vignesh Viswanathan
a0921c424e qcacld-3.0: Fix naming conventions for MLME APIs and files
Fixed the naming conventions of APIs and files for MLME component.
Internal MLME component only APIs are in wlan_mlme_main.h/c files
under core.
APIs exposed to other components are in wlan_mlme_api.h/c files
under dispatcher.
APIs exposed to HDD are in wlan_mlme_ucfg_api.h/c files
under dispatcher.
mlme_init/deinit, mlme_psoc_open/close are called from HDD,
so made that as ucfg APIs.

Change-Id: I049008ceaa86ca52acd3ad9a02f903a732117d1f
CRs-Fixed: 2309276
2018-09-05 09:49:58 -07:00
nshrivas
b06efcfc04 Release 5.2.0.95F
Release 5.2.0.95F

Change-Id: Ic8f55ec95246b89f1130d99756861eea60337b65
CRs-Fixed: 774533
2018-09-05 08:20:55 -07:00
Abhinav Kumar
6f6944851b qcacld-3.0: Update secondary channel params for SAP after SSR
In case of recovery of SAP after SSR, driver is not updating
params for secondary channel as per primary channel (Operation
channel) for SAP.

Update parameters for secondary channel as per primary channel
before SAP start.

Change-Id: I2da2eff62881fe4e65208be778618d0b9c05bf88
CRs-Fixed: 2292645
2018-09-05 08:20:54 -07:00
Vignesh Viswanathan
56ee81f377 qcacld-3.0: Fix error handling cases in mac_open
Address remaining comments from I39eaa7bef5e5c50b9b1a8833bec5e6da8cdf0d72
to fix error handling cases in mac_open.

Change-Id: Ica67df97442275e80cb6a33da5b431ab457bb6ea
CRs-Fixed: 2305354
2018-09-05 08:20:50 -07:00
nshrivas
6af40cfb4b Release 5.2.0.95E
Release 5.2.0.95E

Change-Id: I6b2d63f63e76df17752dccfa131045cc2802ff18
CRs-Fixed: 774533
2018-09-05 06:47:08 -07:00
Mohit Khanna
b8ccd6ea7f qcacld-3.0: Reduce hdd txrx stats log level
Reduce the current stats log level for HDD TXRX stats from info to
debug.

Change-Id: Id50e45a57eb667af4e42f58d5df7b9bef9535517
CRs-Fixed: 2307482
2018-09-05 06:47:07 -07:00
Rajeev Kumar
b2b5e695a9 qcacld-3.0: Add SSR protection wrapper for bus bandwidth compute work
Bus bandwidth compute work handler is missing SSR protection wrapper
although it has HDD validate context check but since HDD validate
context check is not sufficient alone add CDS SSR protection wrapper
around bus bandwidth compute work handler.

Change-Id: I43b3495610b2a9936472ff67a95c7db8dbfa5560
CRs-Fixed: 2307421
2018-09-05 06:47:03 -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
Liangwei Dong
2f29b37809 qcacld-3.0: Add INI for dbs mode selection
Add dbs_selection_policy to select preferred
2x2 DBS band.
Add vdev_priority_list to set the vdev 2x2
priority list.

Change-Id: I79bba3dbeecba85a04a4ddc1b57ca798998fc7d7
CRs-Fixed: 2304298
2018-09-05 06:46:55 -07:00
Abhinav Kumar
1138a912a7 qcacld-3.0: Possible mem leak in wma_roam_scan_offload_mode
wma_roam_scan_offload_mode, allocates mem for params buffer
to store roaming offload scan parameters locally from incoming
roam req. In last it calls wmi_unified_roam_scan_offload_mode_cmd
using param as an argument to set roam scan parameters to wmi
structure and free the local param buffer in the successful case.
But in case if driver unable to write wmi struct,
wma_roam_scan_offload_mode returns error status to its caller
without freeing locally allocated params mem buffer. This results
in mem leak while unsuccessful roaming offload.

Fix is to free locally allocated mem buff before the return
in case of roaming offload failure

Change-Id: Ic73f0b3ec004c3dcc53076594c0b872a29fee633
CRs-Fixed: 2308506
2018-09-05 06:46:51 -07:00
nshrivas
f7d3e88fa8 Release 5.2.0.95D
Release 5.2.0.95D

Change-Id: Ib8367eb8e988d375eeedf1f4b7c5acaa44f0bc0a
CRs-Fixed: 774533
2018-09-05 05:08:54 -07:00
hqu
bf1b618ba7 qcacld-3.0: Add process for userspace does not set avoid channel list
In platforms that support dual wifi instances, userspace doesn't
set avoid frequency channel list with command
QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY to trigger restart sap
process, but current handling is always to check avoid channel list
which is set by userspace so it will be failed for lte coex case.

Fix is to add process for userspace doesn't set avoid channel list.

Change-Id: Icc3356191411791f4cec9fd89e4490359cf6f1fc
CRs-Fixed: 2294109
2018-09-05 05:08:54 -07:00
Will Huang
6ab242c917 qcacld-3.0: Fix possible roam_synch_frame_event handler OOB
The length attributes for all message frames are retrieved from
param_buf->fixed_param rather than using the correct TLV length values.
This can result in multiple buffer overreads due to the fact that the
param_buf->fixed_param lengths are never properly checked against the
original TLV buffer.

Add check param_buf->fixed_param lengths against the TLV buffer to
prevent OOB happen.

Change-Id: Ib6e2c847b9a2cc7bfe1233eb1f8214be75f21850
CRs-Fixed: 2304631
2018-09-05 05:08:51 -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
75fc36eda0 qcacld-3.0: Free apf memory when interpreter is enabled
Dynamically allocated apf buffer memory is not freed in error case
when interpreter is enabled and leading to memory leak. Free APF
buffer memory in case APF interpreter is enabled to avoid memory
leak.

Change-Id: I012bf80eb6db7b986f812161b48f96b0965c0542
CRs-Fixed: 2308702
2018-09-05 05:08:41 -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
nshrivas
1119590a5f Release 5.2.0.95C
Release 5.2.0.95C

Change-Id: I2a40452a8b862a7ed940e1a5f8c0821bf0ad5a2a
CRs-Fixed: 774533
2018-09-05 00:17:53 -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