Commit Graph

11663 Commits

Author SHA1 Message Date
Jeff Johnson
c730906d09 qcacld-3.0: Replace hal in sme_api
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal with mac_handle
in sme_api.

Change-Id: Ic1fc8017e0f953ed83cfcee9c7b58e5e23ee5ca8
CRs-Fixed: 2351899
2018-11-21 13:46:53 -08:00
Jeff Johnson
1856266cba qcacld-3.0: Replace hal in sap_module
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal with mac_handle
in sap_module.

Change-Id: I8631e7b3cc4bdca564846bb2dee50e6c993087ef
CRs-Fixed: 2351898
2018-11-21 13:46:46 -08:00
nshrivas
5d379e6851 Release 5.2.0.107L
Release 5.2.0.107L

Change-Id: Ifa02f5acd31dbce17166b353b0365676deb8b3ae
CRs-Fixed: 774533
2018-11-21 13:46:41 -08:00
Jeff Johnson
15f7829bbb qcacld-3.0: Replace hal in sap_fsm
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal with mac_handle
in sap_fsm.

Change-Id: I560f99110bd38815c6e515006245f538d3dc6482
CRs-Fixed: 2351897
2018-11-21 13:46:38 -08:00
Jeff Johnson
d5fb2dbc26 qcacld-3.0: Replace hal_ctx in sme_api
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal_ctx with
mac_handle in sme_api.

Change-Id: Ib17e1c7855c449533f0d7b13cd67dba224bb9a8e
CRs-Fixed: 2351896
2018-11-21 13:46:34 -08:00
Jeff Johnson
3863387566 qcacld-3.0: Replace hal_ctx in sme_power_save
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal_ctx with
mac_handle in sme_power_save.

Change-Id: Ie58b394f6f2327b6cc141992bccd3aa69bcaa53c
CRs-Fixed: 2351895
2018-11-21 13:46:31 -08:00
nshrivas
ea31163b1a Release 5.2.0.107K
Release 5.2.0.107K

Change-Id: Ia7869386744dcdf1868e619ed5918b98471301e2
CRs-Fixed: 774533
2018-11-21 13:46:26 -08:00
Jeff Johnson
2b51190eeb qcacld-3.0: Rename mac in __lim_counter_measures()
An upcoming campaign will rename all instances of pMac to mac in the
driver. In function __lim_counter_measures() there is already a local
variable named mac, so the pMac renaming will cause a conflict. In
order to avoid the conflict rename the existing local variable.

Change-Id: If7438c9ca98a65c0a3c29b77d279f8bd41258165
CRs-Fixed: 2353461
2018-11-21 13:46:23 -08:00
nshrivas
5a62246566 Release 5.2.0.107J
Release 5.2.0.107J

Rebasing
Change-Id: I6355f271687a5b18c2588718534c158b12e9e1d7
CRs-Fixed: 774533
2018-11-21 13:44:36 -08:00
CNSS_WLAN Service
e933e9c8e4 Merge "Revert "qcacld-3.0: Fix WDI 1.0 MCC TX SMMU unmap"" into wlan-cld3.driver.lnx.2.0 2018-11-21 02:50:59 -08:00
Mohit Khanna
c908646fa9 Revert "qcacld-3.0: Fix WDI 1.0 MCC TX SMMU unmap"
This reverts change I7d04e9b01fbd973601ee9e4e74c6bf4dd3d0f7bb

This patchset is causing wlan_ipa_nbuf_cb to be called even when ipa_ctx
is null. wlan_ipa_nbuf_cb should not be called for non-IPA packets. Also
there should be a NULL check for ipa_ctx in the function.

Reverting the change may lead to SMMU errors during AP-AP MCC mode.

CRs-Fixed: 2352812
Change-Id: I2f2382ca12a14a09ed124ccd18a7f450282c5975
2018-11-21 14:46:31 +08:00
nshrivas
cf21bf92f6 Release 5.2.0.107I
Release 5.2.0.107I

Change-Id: Icc4ddb2f001fbce48c43328c7dc45380ae9afa9b
CRs-Fixed: 774533
2018-11-20 14:38:04 -08:00
Arif Hussain
41cbc1e9a5 qcacld-3.0: Add ucfg api to get/set ps data inactivity timeout
Add and use ucfg api to get/set ps data inactivity timeout value.

Change-Id: I8b0931870507aac146a18b70103c323bea1ca6f3
CRs-Fixed: 2335980
2018-11-20 14:38:03 -08:00
Jeff Johnson
ec85d5d076 qcacld-3.0: Remove obsolete tAniIbssRouteTable
The functionality that handles tAniIbssRouteTable is no longer
present, so remove the associated function prototype and data
structures.

Change-Id: I80eebe7494bf60b46165e0bd1eea04ce0f23c44b
CRs-Fixed: 2352149
2018-11-20 14:37:59 -08:00
nshrivas
7588e01447 Release 5.2.0.107H
Release 5.2.0.107H

Change-Id: I0d90169dfe071482a1d6564d50e313cdfafbfc38
CRs-Fixed: 774533
2018-11-20 12:19:03 -08:00
Vignesh Viswanathan
fe1b5bd1de qcacld-3.0: Add change to set HT Op Mode in handle_ht_capabilityand_ht_info
Add missing change in handle_ht_capabilityand_ht_info to set the HT
OpMode field in the LIM capabilities.

Missing change from I019961016a2f0e39c7c62066c04788d3bd3d37e7.

Change-Id: If75ef4cfca5cdd3c42bedcf1f9303a63b264cea9
CRs-Fixed: 2346227
2018-11-20 12:19:02 -08:00
nshrivas
438679cdc1 Release 5.2.0.107G
Release 5.2.0.107G

Change-Id: I6737546c60d8732b55fa303a4fce10034ac28509
CRs-Fixed: 774533
2018-11-20 10:31:29 -08:00
Karthik Kantamneni
309ed808f5 qcacld-3.0: Fix cfg80211 change interface failure
In cfg80211_change_iface if we don't get previous mode vdev
references then error is returned. In a case where there is
no vdev existing before this will cause sap failure.

Fix is if previous vdev reference is not available skip vdev
access and continue further operations.

Change-Id: I3209f1e1a86050baf389f20029a97a5bdb50d71d
CRs-Fixed: 2352385
2018-11-20 10:31:28 -08:00
wadesong
3daaeeb4ea qcacld-3.0: CFG INI refining - wave 3
Remove the definitions and related internal data structures and
value retrieving code of the following 3 CFG INI items, due to
they're not used to control any driver behavior any more.

 -gVccRssiTrigger
 -gVccUlMacLossThresh
 -gEnableBypass11d

Change-Id: I919bf191f48db4bf0947235ff804aed2b4b1bdb9
CRs-Fixed: 2352224
2018-11-20 10:31:24 -08:00
Pragaspathi Thilagaraj
6af860a3e8 qcacld-3.0: Update disable_hi_rssi after roam sync is complete
The disable_hi_rssi flag in pe session is used to control the hi
rssi scan delta value sent from the host to the firmware. If the
disable_hi_rssi is set to false, then the ini parameter
hi_rssi_scan_rssi_delta value is sent to the firmware.
When STA roams from 5G to 2G band, this disable_hi_rssi should
be set to false and hi-rssi scan delta will be non zero, so the
firmware will handle high rssi scans if the RSSI is better than
the roaming threshold. The default ini value of
gRoamScanHiRssiDelta is 10.

When host driver receives roam sync complete event, set the
disable_hi_rssi to true if band is 5G else set it to false.

Change-Id: I7b9d94f804619d7a4a11d0ba9acaa6cf5defbc68
CRs-Fixed: 2350842
2018-11-20 10:31:21 -08:00
nshrivas
9e6d301c66 Release 5.2.0.107F
Release 5.2.0.107F

Change-Id: I386059e3c7a4052d249a3e41daf9f180f05f1ba0
CRs-Fixed: 774533
2018-11-20 05:28:48 -08:00
wadesong
08b7370738 qcacld-3.0: Fix a partial AID flag discrepancy
VHT Partial AID feature's enabling is currently controlled by
gEnableGID, which is incorrect.

Make the same feature controlled by gEnablePAID.

Change-Id: I755f3f899b5f62a257b8254bfbfad7acc50d8cdd
CRs-Fixed: 2352431
2018-11-20 05:28:47 -08:00
Jeff Johnson
b1e673cd1d qcacld-3.0: Fix camelCase in hdd_cfg_get_config()
In order to conform to the coding style rename local variables in
function hdd_cfg_get_config().

Change-Id: I2b3d3d6b5c3b630967bed389f7f33b6c7b091413
CRs-Fixed: 2352065
2018-11-20 05:28:43 -08:00
nshrivas
452b907100 Release 5.2.0.107E
Release 5.2.0.107E

Change-Id: I841035a9668be2b82bbff6d6d382654fa143d9c6
CRs-Fixed: 774533
2018-11-20 00:26:34 -08:00
Bala Venkatesh
6d53709337 qcacld-3.0: ADD HE CFG items in MLME component
Refactor HE cap cfg items to new mlme component using
updated cfg architecture.

Change-Id: Ib983d3fc983dfffd2eee7efd1a4e3681d26d84a6
CRs-Fixed: 2351420
2018-11-20 00:26:34 -08:00
nshrivas
f4c2fca917 Release 5.2.0.107D
Release 5.2.0.107D

Change-Id: I562a01f2ab103c04f5650ca4a3abd1f1f1b3a33e
CRs-Fixed: 774533
2018-11-19 06:41:32 -08:00
Pragaspathi Thilagaraj
aba1b5d830 qcacld-3.0: Fix possible NULL pointer dereference in lim_send_mlm_assoc_ind
In SAP mode, when a STA is associated, the assoc request is
stored in session_entry->parsedAssocReq. The function
lim_send_mlm_assoc_ind is called to indicate the association to
SME. In lim_send_mlm_assoc_ind, parsedAssocReq is copied to
assoc_req which fills the assoc_ind to be sent to sme,
and session_entry->parsedAssocReq is dereferenced before
validating it against NULL. This could result in NULL pointer
dereference.

Add NULL pointer check before dereferencing parsedAssocReq.
Return if it fails.

Change-Id: Ied2b5f64c0351a648c1d398f616450aa406fc82e
CRs-Fixed: 2348565
2018-11-19 06:41:31 -08:00
nshrivas
a5f3b80857 Release 5.2.0.107C
Release 5.2.0.107C

Change-Id: I13c53b5a202f33481f1337039df957c4af8cfcd6
CRs-Fixed: 774533
2018-11-19 03:19:34 -08:00
Abhishek Singh
4f5f1f94ce qcacld-3.0: Remove duplicate channel info in vdev_start_params
Remove the duplicate channel info in vdev_start_params and
it sub structure channel and use implementations
can use the channel sub structure directly.

Change-Id: Ib1c4e47639f6a4883b944200c3649dc54bb2c59a
CRs-Fixed: 2350648
2018-11-19 03:19:33 -08:00
nshrivas
3ea9fc8b9e Release 5.2.0.107B
Release 5.2.0.107B

Change-Id: Ib8df81c591d7324fb53edac96ee88a5897403476
CRs-Fixed: 774533
2018-11-17 15:59:57 -08:00
Pragaspathi Thilagaraj
9de8f865d2 qcacld-3.0: Fix null pointer dereference in wma
In wma_remove_peer_on_add_bss_failure, wma is returned from
cds_get_context(). This is not validated for null before being
passed to wma_remove_peer where dereference can occur.

Validate wma against null before passing it to wma_remove_peer.

Change-Id: Ia0323d88a719b6f6bfae058ddf499650a5c078a7
CRs-Fixed: 2350512
2018-11-17 15:59:56 -08:00
nshrivas
5c8b6e0575 Release 5.2.0.107A
Release 5.2.0.107A

Change-Id: Ibac0d095e24536705f1402ee103e27c5a505c67f
CRs-Fixed: 774533
2018-11-17 08:00:21 -08:00
Bala Venkatesh
46e2903f11 qcacld-3.0: Refactor SAP CFG items
Refactor SAP CFG items gMaxLIModulatedDTIM,
gCountryCodePriority, gSapPreferredChanLocation.

Change-Id: I52a1b3f782c440b12a2f2dcf82d9dad6cf6e76e0
CRs-Fixed: 2351237
2018-11-17 08:00:20 -08:00
nshrivas
14450a0aa5 Release 5.2.0.107
Release 5.2.0.107

Change-Id: I3195b0dc4fd72217d691ceb62eaaa0e670f845f2
CRs-Fixed: 774533
2018-11-16 23:22:55 -08:00
Jeff Johnson
7730fbbd64 qcacld-3.0: Replace halHandle in sap_ch_select
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of halHandle with
mac_handle in sap_ch_select.

Change-Id: I4306005fb2677b1892272e2176e8cc73cb927d29
CRs-Fixed: 2351894
2018-11-16 14:55:36 -08:00
nshrivas
677ca1e763 Release 5.2.0.106Z
Release 5.2.0.106Z

Change-Id: Ie0dd476b5877d6e60653aff471ae70c73d6e7a18
CRs-Fixed: 774533
2018-11-16 09:24:12 -08:00
Jeff Johnson
3ba2732a20 qcacld-3.0: Use vtable in __iw_setint_getnone()
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). A prior set of changes has refactored all of
the individual sub-ioctl handling into separate functions with a
consistent signature. Now convert __iw_setint_getnone() to use a
vtable as the last step of refactoring.

Change-Id: I7f9d5442083a58b9f36e3bb874748d0d5068bc12
CRs-Fixed: 2350073
2018-11-16 09:24:11 -08:00
Sriram Madhvapathi
8a697c8d65 qcacld-3.0: Don't wait for dload-complete for wmi_service_mgmt_tx_wmi
In High Latency interfaces, do not wait for download complete when
management over wmi service is enabled.

Change-Id: I7e1e175fdf5b4c836c504a7a816be4f98d4451a0
CRs-Fixed: 2341451
2018-11-16 09:24:07 -08:00
nshrivas
321ac56671 Release 5.2.0.106Y
Release 5.2.0.106Y

Change-Id: Ice811b113a437f7d19fc733ed1977b89c4a4f986
CRs-Fixed: 774533
2018-11-16 05:10:02 -08:00
wadesong
3777915910 qcacld-3.0: Add missing CFG INI comment text - wave 2
1) Some CFG INI options' comment text are missing.
   Add them so automation script can parse and retrieve the
   correct comment text.
2) Fix some discrepancies in existing CFG INI comments.
3) Delete some INI items that are not used any more.

Change-Id: Ia2fc4fab70f78e99d14fd1f7f2b4248e6484ee32
CRs-Fixed: 2350612
2018-11-16 05:10:01 -08:00
gaurank kathpalia
2fc3b89d0b qcacld-3.0: Fill nss chain params from legacy structure
Fill the cmn nss chains structure from the mlme
nss chain params structure and send to fw

Change-Id: I573b0df20be31af536107f0585e7fa825dc2b6b3
CRs-Fixed: 2349823
2018-11-16 05:09:56 -08:00
gaurank kathpalia
651abcd134 qcacld-3.0: Legacy vdev type nss inis cleanup
With the introduction of new 32 bit ini for per vdev
nss and chains, the legacy inis are no longer required.

Cleanup the legacy inis of per vdev nss for both the
bands.

Change-Id: Ia4c8301062457a15a9bda49dca4a4a36a4372f88
CRs-Fixed: 2349204
2018-11-16 05:09:50 -08:00
gaurank kathpalia
24ed0f4056 qcacld-3.0: Infra for mlme_priv_obj with VDEV_SM enable/disable
Define two different mlme priv obj structures
based upon the flag CONFIG_VDEV_SM, for the
support of dynamic nss, chains update.

Change-Id: I00f39eb82973da86233ddfc8bdcc94b6ca8a439a
CRs-Fixed: 2349200
2018-11-16 05:09:40 -08:00
gaurank kathpalia
b414bce3b7 qcacld-3.0: Add prefix NSS_CHAINS to band info
Add prefix NSS_CHAINS to band info to remove duplicate band
info in driver, and minor code cleanup.

Change-Id: I3a8446af6b6c272cfcb19583540e2384f64e3a1a
CRs-Fixed: 2347624
2018-11-16 05:09:35 -08:00
gaurank kathpalia
6982d47826 qcacld-3.0: Accept the dynamic command only in started state
Accept the command to change the dynamic params like nss
and chains only when the vdev is in connected state for
STA/P2P-CLI, and in start state in case of SAP/P2P-GO.

Change-Id: Id4d2e3c4ac6745e25c7005af0b3c95e3e1db4533
CRs-Fixed: 2347488
2018-11-16 05:09:30 -08:00
gaurank kathpalia
ad98049f34 qcacld-3.0: Populate the ini nss, chains value in IEs
For the FW to configure the roaming module to roam either in
1x1, or 2x2 mode, the driver needs to configure the correct
MCS according to the ini params in respective vdev.

Populate the correct MCS values in MCS set of HT, and VHT.

Change-Id: Idfe595d5653ad52455d661f34e58a1502b9e3745
CRs-Fixed: 2347493
2018-11-16 05:09:25 -08:00
gaurank kathpalia
2472fb942e qcacld-3.0: Get the current chains in drv_cmd_get_antenna_mode
In the API drv_cmd_get_antenna_mode, the driver gets the
hdd_ctx->current_antenna_mode, which is pdev level, but
with the new feature of per vdev antenna mode, return the
num of chains for that particular vdev.

Change-Id: Ia8180592c34a29a7593943fc5e10c781682aac56
CRs-Fixed: 2347494
2018-11-16 05:09:20 -08:00
gaurank kathpalia
f95ae68380 qcacld-3.0: Remove the pdev level antenna mode
If the new feature of per vdev antenna mode is enabled, there
is no need of per pdev level antenna mode, as it may happen that
one vdev configures its antennas as 2, and the other vdev configures
its antennas as 1, which could lead to change of pdev level antenna
mode, by a vdev level command.

Fix is to keep the antenna mode only if the feature is not enabled.

Change-Id: I67011a5b88f8750cab22d76b1bf6d8ccc1f5375d
CRs-Fixed: 2347495
2018-11-16 05:09:16 -08:00
gaurank kathpalia
1281b30098 qcacld-3.0: Refactor nss update API
Refactor the code to a new API, and
inform the TDLS module about the new
nss change.

Change-Id: Ic478bed0634ba1f862d844994a0836a23eda3f56
CRs-Fixed: 2347496
2018-11-16 05:09:11 -08:00
gaurank kathpalia
db87c0d648 qcacld-3.0: Update dynamic config with user config
After the command to update the user params is sent to FW
update the dynamic config with user config.

Change-Id: I31ac19a86f68d9c2f8f4ce71f88eb12eb2d9b2f0
CRs-Fixed: 2347497
2018-11-16 05:09:07 -08:00
gaurank kathpalia
5836acff3e qcacld-3.0: Send the vdev ini params before vdev start
For fw to store the dynamic config, the host needs to send
the vdev params to fw before vdev start.

Send the vdev ini params to the fw before vdev start.

Change-Id: I83a93481bae8452eb47f9a14d1978e8d8dd02f03
CRs-Fixed: 2347498
2018-11-16 05:09:03 -08:00
gaurank kathpalia
748c7274d3 qcacld-3.0: Send vdev nss params to fw
Infra to send vdev nss chain user params to the fw.

Change-Id: I907ffe0906712b328e276527412530225c23b68e
CRs-Fixed: 2347499
2018-11-16 05:08:58 -08:00
gaurank kathpalia
7cb6a32f47 qcacld-3.0: Add support for dynamic chains update in set antenna mode ioctl
Populate and verify the num of chains params sent by
the user and then send it to the fw.

Change-Id: I9a4870913ce9484d1a5dc5fddcade72bdafb6116
CRs-Fixed: 2347501
2018-11-16 05:08:54 -08:00
gaurank kathpalia
2b32de0c58 qcacld-3.0: Validate nss configuration from user
Validate the nss set by the user and then
send the user config to the firmware

Change-Id: Ia1292e428e0c5b30ff0b96f2387ea29ceec9c97c
CRs-Fixed: 2347502
2018-11-16 05:08:50 -08:00
gaurank kathpalia
78af193878 qcacld-3.0: Populate the ini and dynamic params
Populate the ini and dynamic params from the mlme
component and store them to the respective
vdev component in mlme priv obj during vdev create.

Change-Id: Ic80526e51ba97c24b5340843fc97406a6ba4c7ef
CRs-Fixed: 2347504
2018-11-16 05:08:46 -08:00
gaurank kathpalia
5fcefa93b0 qcacld-3.0: Populate the per vdev chain capability in hdd context
Populate the feature capability from wmi to hdd config

Change-Id: I8931da53fb50229b405a2b7c1802a6d15a35781b
CRs-Fixed: 2347619
2018-11-16 05:08:38 -08:00
Nirav Shah
7c8c171e05 qcacld-3.0: Remove unnecessary prints from data path
1. Remove error prints for qdf_mem_malloc APIs.
2. Remove unnecessary __func__ from data path prints.

Change-Id: I6c4b110f626d84da055821c5f210a3d000b6ff15
CRs-Fixed: 2317315
2018-11-16 05:08:30 -08:00
nshrivas
e7860df2b8 Release 5.2.0.106X
Release 5.2.0.106X

Change-Id: I0ffb7c8d8dc6f902b069fca8001a91e8eb4ef4b4
CRs-Fixed: 774533
2018-11-16 02:39:23 -08:00
Abhishek Singh
0ba1e8f90e qcacld-3.0: Fix serialization command list full issue
In __wlan_hdd_cfg80211_del_station while disconnecting all the
connected stations, driver send both disassoc and deauth and wait
for disconnect to complete for the STA. Once disconnect is completed
for the 1st STA, it continue to disconnect the next STA.

Now as both disassoc and deauth were queued and both of them set the
wait event resulting in wait event set twice for a disconnect
indication. This result in wait completion for the next STA disconnect
as well. This lead dynamo effect and multiple STA disassoc and deauth
commands are added in the serialization queue filling it up.

Fix this by sending only deauth STA req and removing the duplicate
disassoc STA req. Thus the next command will be queued only when
disconnect is completed for 1st STA.

Change-Id: I4ae6c578a3177a2a6ff75e6e75606e8c5e2f81a0
CRs-Fixed: 2350557
2018-11-16 02:39:22 -08:00
nshrivas
c5367d1c35 Release 5.2.0.106W
Release 5.2.0.106W

Change-Id: I3afa5374dc1b78073c643755ffb101cc0d3fd4b1
CRs-Fixed: 774533
2018-11-16 01:04:02 -08:00
Jeff Johnson
deab857b1b qcacld-3.0: Change hdd_we_set_11d_state() signature
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal update hdd_we_set_11d_state() to conform with a consistent
int()(adapter, value) signature.

Change-Id: I96a7424630ffc9fd3a8713d980fe6efad4a7be05
CRs-Fixed: 2350071
2018-11-16 01:04:02 -08:00
Jeff Johnson
b43ec12eb5 qcacld-3.0: Refactor WE_SET_MODULATED_DTIM ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_MODULATED_DTIM ioctl handling into a separate
function.

Change-Id: I81701e1c54e62deb01468bb16a940ae823014d04
CRs-Fixed: 2350072
2018-11-16 01:03:57 -08:00
Jeff Johnson
74696bbda0 qcacld-3.0: Refactor WE_SET_11AX_RATE ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_11AX_RATE ioctl handling into a separate
function with a consistent int()(adapter, value) signature.

Change-Id: Iaaba30073d59f96faddcb9f9baaabc60b8e58ee5
CRs-Fixed: 2350070
2018-11-16 01:03:53 -08:00
Jeff Johnson
d3f1efd8fa qcacld-3.0: Refactor WE_SET_CONC_SYSTEM_PREF ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_CONC_SYSTEM_PREF ioctl handling into a
separate function.

Change-Id: I89a0037902935d7ebf3c5ba3064ff9469d025c13
CRs-Fixed: 2350069
2018-11-16 01:03:49 -08:00
Jeff Johnson
e50951c939 qcacld-3.0: Refactor WE_SET_SCAN_DISABLE ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_SCAN_DISABLE ioctl handling into a separate
function.

Change-Id: I412098141c3d4664c24ef40d10d0372051b19b6b
CRs-Fixed: 2350068
2018-11-16 01:03:45 -08:00
nshrivas
0adef8fc0c Release 5.2.0.106V
Release 5.2.0.106V

Change-Id: I33fe0e9dacd2bf067df8267cf3ff7e11d4cad8d2
CRs-Fixed: 774533
2018-11-15 23:26:10 -08:00
Jeff Johnson
33ec1982cb qcacld-3.0: Refactor WE_SET_DEBUG_LOG ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_DEBUG_LOG ioctl handling into a separate
function.

Change-Id: I38b10ebef241cf202d17557293851af3b8af36ec
CRs-Fixed: 2350067
2018-11-15 23:26:10 -08:00
Jeff Johnson
0e07ca1d66 qcacld-3.0: Refactor WE_MCC_CONFIG_* ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_MCC_CONFIG_LATENCY and WE_MCC_CONFIG_QUOTA ioctl
handling into separate functions.

Change-Id: I3396b436d221871d3c22d838af1fbdfd229c7d66
CRs-Fixed: 2350066
2018-11-15 23:26:06 -08:00
nshrivas
bdc38531c4 Release 5.2.0.106U
Release 5.2.0.106U

Change-Id: I0f9467ebfc8d160b55b0a68f62bd40af6bcc0afb
CRs-Fixed: 774533
2018-11-15 22:00:20 -08:00
nshrivas
b537c64ac7 Release 5.2.0.106T
Release 5.2.0.106T

Change-Id: I60c724d68a074fd5243ba23db761cda62cf077a2
CRs-Fixed: 774533
2018-11-15 18:48:59 -08:00
Dustin Brown
5a26dae6d0 qcacld-3.0: Don't stop transition in ssr shutdown
During sub-system recovery, the platform driver invokes the wlan's
shutdown and reinit callbacks. Reinit is called regardless of the result
of shutdown. Currently, the SSR transition is aborted in shutdown in the
event of a failure. This results in a panic during reinit, which expects
to be protected by that transition. Regardless of the result of
shutdown, do not stop the SSR transition such that the entire recovery
process is properly protected.

Change-Id: I3685920de5a7d47f6334bf4d8389cb267a46fac2
CRs-Fixed: 2350868
2018-11-15 18:48:59 -08:00
nshrivas
ff2d5ca1b8 Release 5.2.0.106S
Release 5.2.0.106S

Change-Id: I91547ea9de4fc8c58a96dbd7578abdd49b0ac61f
CRs-Fixed: 774533
2018-11-15 17:19:26 -08:00
gaurank kathpalia
5f6919b0f4 qcacld-3.0: Skip ACS based on hw mode and STA's channel
If the STA is already present, and a SAP has to come up,
return the STA channel as the best channel, and skip ACS,
if the Hw_mode is set according to the STA channel
Eg:- STA on channel 1, and hw_mode is 11B, or 11G.
Also the driver doesnt check the DFS master mode, and
includes the DFS channels in the ACS scan list, which
may result in SAP bringup on a DFS channel

Check the conc_channel, and acs_policy ini, and return the
best channel as the STA channel.
Also exclude the DFS channels from the ACS scan list if
DFS master mode is disabled.

Change-Id: I70951d7b51b620db8cda7ed771d5c36a7571a125
CRs-Fixed: 2340965
2018-11-15 17:19:26 -08:00
Jeff Johnson
b460dd7685 qcacld-3.0: Replace hHal in sme_api
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sme_api.

Change-Id: Idd66679290567e9ed27b5c7e1a5401f36229d9a7
CRs-Fixed: 2349571
2018-11-15 17:19:21 -08:00
Jeff Johnson
fe8aa4ffe8 qcacld-3.0: Replace hHal in sme_ft_api
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sme_ft_api.

Change-Id: I5e41d0767b97bf698dbb14834f2080bd82577035
CRs-Fixed: 2349570
2018-11-15 17:19:18 -08:00
Jeff Johnson
d32f3622dc qcacld-3.0: Replace hHal in sme_qos
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sme_qos.

Change-Id: I067ec7d921888cc8f743561810f9163bb4ea9008
CRs-Fixed: 2349569
2018-11-15 17:19:14 -08:00
nshrivas
21702429c8 Release 5.2.0.106R
Release 5.2.0.106R

Change-Id: Ia8ec4c651e98d714c52115dea627012a260d76fc
CRs-Fixed: 774533
2018-11-15 15:18:15 -08:00
Jeff Johnson
c0203e218a qcacld-3.0: Replace hHal in wlan_qct_sys
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in wlan_qct_sys.

Change-Id: I4f5b7c46ae56140d0a2456f9ba48fdcf54d9262b
CRs-Fixed: 2349568
2018-11-15 15:18:14 -08:00
Jeff Johnson
419348b1bc qcacld-3.0: Replace hHal in sap_module
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sap_module.

Change-Id: I5422b4a7e1a464a8f870cea33069c47401c73bac
CRs-Fixed: 2349566
2018-11-15 15:18:10 -08:00
Jeff Johnson
793e5a9163 qcacld-3.0: Replace hHal in sap_api_link_cntl
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sap_api_link_cntl.

Change-Id: I1248b01c4da617c307bc7262e32c32e069491d1c
CRs-Fixed: 2349565
2018-11-15 15:18:05 -08:00
Jeff Johnson
19681ce028 qcacld-3.0: Replace hHal in sap_fsm
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hHal with mac_handle
in sap_fsm.

Change-Id: I478b21a0e060b86c05025f3f8b1d46e196d7e93f
CRs-Fixed: 2349564
2018-11-15 15:18:01 -08:00
nshrivas
ed18801089 Release 5.2.0.106Q
Release 5.2.0.106Q

Change-Id: I94589f4cdf1da79057327c71350fe2267bdfdb1a
CRs-Fixed: 774533
2018-11-15 10:08:24 -08:00
Abhinav Kumar
9b4f4ba969 Revert "qcacld-3.0: Acquire wake lock timeout for rrm scan"
FW does not assert when wow is enabled in presence of active
scans. Only requirement is to abort the scans while suspending.
So holding wakelock till scan is complete may introduce power
side effects.

Aborting the scan while suspending is already taken care by
the CR-2343385.

Fix is to revert the
Change Id: I02ddc9b5e6ba5f1782d00e34f044ace34c54d0b0 and
cleanup the channel list from rrm context in case of failure
of rrm scan req.

Change-Id: I844210a6a11f1d882bf42340b80b386856d9b87b
CRs-Fixed: 2349857
2018-11-15 10:08:24 -08:00
nshrivas
b6a147a2af Release 5.2.0.106P
Release 5.2.0.106P

Change-Id: Id5c5e9ecd0dd0919ff2172df144a6549a90d8ab5
CRs-Fixed: 774533
2018-11-15 08:20:30 -08:00
Bala Venkatesh
4a72b06fc9 qcacld-3.0: Avoid redefination of tdls_add_oper enum
Enums tdls_add_oper and TdlsAddOper are same. Instead redefining
use the same enum across different files.

Change-Id: Ibb71b0f80e156e4bd3a345a56c7b4d99ce770ef7
CRs-Fixed: 2349616
2018-11-15 08:20:30 -08:00
Ashish Kumar Dhanotiya
c90aaa122d qcacld-3.0: memset mac_context on mac close
on mac_close, current global mac_context is not getting memset
to zero, so when new mac_open occures this global mac_context
contains the previous configuration which leads to undefined
behaviour.
Initially during load time, driver type is set as production in
global mac context, on change of the con_mod to FTM, this driver
type is chnaged to MFG, now again if the con_mode is changed to
MISSION mode or MONITOR mode this driver type should be updated
to production, but since during mac_close, mac_ctx is not memset
to zero, this driver type is not getting updated and having the
previous value as MFG, because of this in pe mc process handler,
message is not getting processed leading to mem leak at stop
modules.

Change-Id: I342ad5c9bd4b710c668d8121f41f5ffd98d2c221
CRs-Fixed: 2349670
2018-11-15 08:20:25 -08:00
Arif Hussain
ca0fbb7d93 qcacld-3.0: Fix memory leak issue in csr_roam_issue_ft_preauth_req()
Make sure to free BSS descriptor buffer in case of failure to
send message. In failure case only message body buffer is freed.

Change-Id: I1919ed25d98808fad47f455820b760d96d18f4b2
CRs-Fixed: 2332101
2018-11-15 08:20:19 -08:00
nshrivas
57630b746b Release 5.2.0.106O
Release 5.2.0.106O

Change-Id: Iabcece5261e72421664cb834f0df4d6d87b34025
CRs-Fixed: 774533
2018-11-15 05:11:04 -08:00
nshrivas
0a5ab8a3a4 Release 5.2.0.106N
Release 5.2.0.106N

Change-Id: I3ca920e9156a3e8661e4b791b80764a3e641c3d3
CRs-Fixed: 774533
2018-11-15 03:38:19 -08:00
jitiphil
4e3bef4621 qcacld-3.0: disable pktlog as part of stop modules
Pktlog is not disabled as part of stop procedure. If
the DUT was booted up with WLAN turned off, the modules
will be loaded and after a timer expires they are
unloaded. At this point if WLAN was turned on, the start
procedure will try to enable pktlog and find that it
is already enabled, and will not send indication to
firmware.

Ensure pktlog is called as part of stop procedure.

Change-Id: If17fb597cabed59ef5a3220ba7e536820a940eaf
CRs-Fixed: 2349956
2018-11-15 03:38:19 -08:00
nshrivas
bc0c8bf21e Release 5.2.0.106M
Release 5.2.0.106M

Change-Id: I260799bc613b69ac4c301bc3d3df629627bac095
CRs-Fixed: 774533
2018-11-15 01:38:16 -08:00
Min Liu
8c5d99e012 qcacld-3.0: Get vdev from adapter directly
For the case that there is leakage of vdev, get ref of vdev by mac address
might get the incorrect vdev object. Get vdev from adapter directly.

Add help function to get vdev reference counted before use it.

Change-Id: I7d4ad1a2b7031f2877adb19bc15f690616e87c74
CRs-Fixed: 2312152
2018-11-15 01:38:16 -08:00
nshrivas
281eeafb6a Release 5.2.0.106L
Release 5.2.0.106L

Change-Id: I5b0c88c47beb1449949efe522cc6d9d178be6278
CRs-Fixed: 774533
2018-11-14 22:06:11 -08:00
Jeff Johnson
274a1d6063 qcacld-3.0: Refactor WE_SET_CHANNEL ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_CHANNEL ioctl handling into a separate
function.

Change-Id: I66a8e9902b8b2a1ab2df0088630dc9a4923fbabd
CRs-Fixed: 2350065
2018-11-14 22:06:10 -08:00
jiad
15fb83796a qcacld-3.0: Fix WDI 1.0 MCC TX SMMU unmap
For WDI 1.0 MCC TX, wlan driver is involved for TX and skb is
provided from IPA driver. With SMMU enabled, dma_addr is of
IPA domain. In such case, wlan driver needs to do DMA map
itself. After doing DMA map, an offset of frag_header
and ipa_header is added to the iova and skb->cb is updated
with the new iova. After TX completion, skb DMA unmap is done
but with the iova of the above offset included, which leads to
unmapped iova error.

Fix is to recalculate the iova and update skb->cb with new iova,
which has frag_header and ipa_header length removed.

Change-Id: I7d04e9b01fbd973601ee9e4e74c6bf4dd3d0f7bb
CRs-Fixed: 2338049
2018-11-14 22:06:05 -08:00
nshrivas
8055beccd8 Release 5.2.0.106K
Release 5.2.0.106K

Change-Id: I2fd79eab47fe9ff82a2e9ac5fcfbf3f173b7f3d7
CRs-Fixed: 774533
2018-11-14 20:30:06 -08:00
Abhishek Singh
cdd3d4c1d1 qcacld-3.0: Use objmgr API to get 1st vdev from pdev
If Vdev id is not present driver tries to get vdev with vdev id 0
from pdev. Vdev with vdev_id 0 might not be present on pdev so use
objmgr API wlan_objmgr_pdev_get_first_vdev to get the first vdev.

Change-Id: I2ae0d6056709339a8167582ec327269aa84c93f4
CRs-Fixed: 2349702
2018-11-14 20:30:06 -08:00
nshrivas
a1d56ead93 Release 5.2.0.106J
Release 5.2.0.106J

Change-Id: I278ce6afc13c44761abb4e6211775a470993a46a
CRs-Fixed: 774533
2018-11-14 18:51:41 -08:00
wadesong
5cea9124a5 qcacld-3.0: Add missing CFG INI comment text - wave 1
Some CFG INI options' comment text are missing.

Add them so automation script can parse and retrieve the
correct comment text.

Change-Id: I4f79b075244c18490c52bc9a178d36c47db43878
CRs-Fixed: 2348307
2018-11-14 18:51:40 -08:00
nshrivas
7cb027d4ac Release 5.2.0.106I
Release 5.2.0.106I

Change-Id: Idb8a454febc7412a272eb417873d19a566308cd3
CRs-Fixed: 774533
2018-11-14 13:47:15 -08:00
Kai Liu
eabb1df217 qcacld-3.0: Release bus clock and bandwidth when module stop
Wlan should release bus clock and bandwidth when module stop,
otherwise when system enter into X0 shutdown, voted clock is still on.

Change-Id: I735cbed1289b17ab2fbc81e35043f1f663a60473
CRs-Fixed: 2341653
2018-11-14 13:47:15 -08:00
Karthik Kantamneni
9180c75d61 qcacld-3.0: Add RTT related CFG item
ADD RTT MAC randomization CFG item based on converged cfg component

Change-Id: I0e1203fc3b3cdab8d9f331c90092b460a02f0fbf
CRs-Fixed: 2349709
2018-11-14 13:47:11 -08:00
nshrivas
3c4fb6e9be Release 5.2.0.106H
Release 5.2.0.106H

Change-Id: Ic05c8bb8974514d5d2369d3cd87219c02553eaf9
CRs-Fixed: 774533
2018-11-14 10:40:52 -08:00
Alok Kumar
2fad644d65 qcacld-3.0: Add vendor event to update TCP paramenter
Currently, TCP params are configured through cnss-daemon.

Add vendor event to configure TCP params through Wi-Fi HAL.

Change-Id: I5ca3e33a8b15b5d499f771098ce8a3c58e4bb850
CRs-Fixed: 2349253
2018-11-14 10:40:52 -08:00
nshrivas
e265432489 Release 5.2.0.106G
Release 5.2.0.106G

Change-Id: Ib3185d7b6bea94f7eca86797144db9507701f2c5
CRs-Fixed: 774533
2018-11-13 21:11:50 -08:00
yuanl
45a1526a61 qcacld-3.0: Fix compiling error for 32 bit platform
Fix compiling error on 32 bit platform due to integer overflow

Change-Id: Ie9517e141b504cfd28138a0e353a0fbbad46e806
CRs-Fixed: 2347903
2018-11-13 21:11:45 -08:00
nshrivas
d4d2582ae6 Release 5.2.0.106F
Release 5.2.0.106F

Change-Id: Ic3c186fcdc95db18413559b9d26c96d33a0ee215
CRs-Fixed: 774533
2018-11-13 19:41:42 -08:00
Dustin Brown
13fa987a29 qcacld-3.0: Ignore uninitialized driver mode change
The driver mode can be dynamically controlled via the module parameter
"con_mode," which triggers the callback con_mode_handler(). However, if
the wlan module is loaded with a non-default con_mode, this callback
handler is invoked before module init (e.g. 'insmod wlan.ko
con_mode=5'). If con_mode_handler is invoked before module init, simply
return success, as no processing is needed.

Change-Id: Iaa426188d13507cc6c7f09a03effd881854bbf3d
CRs-Fixed: 2349370
2018-11-13 19:41:41 -08:00
nshrivas
61ee8a5da2 Release 5.2.0.106E
Release 5.2.0.106E

Change-Id: I538c3fcfe9bf7e7eb7b8de97c8ec4839181b85f5
CRs-Fixed: 774533
2018-11-13 17:21:18 -08:00
Jeff Johnson
030cd90bd9 qcacld-3.0: Rename hdd_is_valid_mac_address() pMacAddr param
hdd_is_valid_mac_address() currently takes a parameter named pMacAddr.
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged" so rename the
parameter to mac_addr to conform to the naming convention. As part of
the cleanup relocate the documentation so that the interface is
documented, not the implementation.

Change-Id: I4abff563bb396a4ffce1356527307ce3bfed8a16
CRs-Fixed: 2347990
2018-11-13 17:21:17 -08:00
nshrivas
5c842e949b Release 5.2.0.106D
Release 5.2.0.106D

Change-Id: I70435228cec986b479c45d6c2399b15ff5848f1e
CRs-Fixed: 774533
2018-11-13 15:43:03 -08:00
Abhishek Singh
1d8bd6255d qcacld-3.0: Fix 80Mhz BW allowed for PEER in 2.4GHz SAP
In case PEER send BW as 80Mhz in OPmode IE in 2.4Ghz, driver doesn't check
the SAP session BW and allow this BW in PEER assoc command to firmware.

Fix this by limiting the PEER BW to less than or equal to SAP session
BW.

Change-Id: Icf9e53fec32d30e5620e51b8664b0e92ba2b26d6
CRs-Fixed: 2346537
2018-11-13 15:43:02 -08:00
Jeff Johnson
53f3acab74 qcacld-3.0: Remove tHalHandle definition
All references to the legacy tHalHandle have been removed, so remove
the definition itself.

Change-Id: I41e93fc7dd1bc7cb5d06300c607854b7c691f3c1
CRs-Fixed: 2348558
2018-11-13 14:24:54 -08:00
Jeff Johnson
60bfb3efd0 qcacld-3.0: Replace tHalHandle in sap_fsm
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sap_fsm.

Change-Id: Ia61860e788b51c7becc6fc708a41f78e4658565d
CRs-Fixed: 2348557
2018-11-13 14:24:54 -08:00
Jeff Johnson
adf1313618 qcacld-3.0: Replace tHalHandle in sap_ch_select
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sap_ch_select.

Change-Id: I204e955c7cda75bbed27a8653fbca4cca4f4b055
CRs-Fixed: 2348556
2018-11-13 14:24:53 -08:00
Jeff Johnson
6340ee0e43 qcacld-3.0: Replace tHalHandle in sap_api_link_cntl
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sap_api_link_cntl.

Change-Id: I2d54133a841112486ecfd7a7971a1fcefa471cfc
CRs-Fixed: 2348553
2018-11-13 14:24:53 -08:00
Jeff Johnson
facce873dd qcacld-3.0: Replace tHalHandle in sap_module
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sap_module.

Change-Id: Ib3dbaf58c4dd4408a09a099b233f94331f46075f
CRs-Fixed: 2348555
2018-11-13 14:24:53 -08:00
Jeff Johnson
1f2dabcfb1 qcacld-3.0: Replace tHalHandle in sme_api
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sme_api.

Change-Id: I46690f8913a8ca34f7494e7baf38188c11073f7b
CRs-Fixed: 2348552
2018-11-13 14:24:52 -08:00
Jeff Johnson
8d8172119c qcacld-3.0: Replace tHalHandle in sme_rrm
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sme_rrm.

Change-Id: I289a11a5e0e4a788f512bcb2a6095e2070be73f9
CRs-Fixed: 2348551
2018-11-13 14:24:52 -08:00
Jeff Johnson
adbe0c50eb qcacld-3.0: Replace tHalHandle in sme_qos
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sme_qos.

Change-Id: I47f4e41e7d8cceafd2232392f00fc0dad64fa842
CRs-Fixed: 2348550
2018-11-13 14:24:51 -08:00
Jeff Johnson
b98ee39c0a qcacld-3.0: Replace tHalHandle in sme_ft_api
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sme_ft_api.

Change-Id: I0d185e15611597d396c00f7e6f2c3d27472426c9
CRs-Fixed: 2348549
2018-11-13 14:24:51 -08:00
Jeff Johnson
0aaecf6b60 qcacld-3.0: Replace tHalHandle in sme_power_save
I9d0d7d109621237f29d66f7b06c5b63c38f63fb2 (qcacld-3.0: Introduce
mac_handle_t) introduced a "better" name for tHalHandle, so replace
tHalHandle with mac_handle_t in sme_power_save.

Change-Id: I7030567c6f73abba10a3e0f29def78249fe91b5a
CRs-Fixed: 2348506
2018-11-13 14:24:51 -08:00
Jeff Johnson
59429b0b5c qcacld-3.0: Replace tHalHandle references in LIM
The LIM code should deal exclusively with the "real" MAC context, so
replace references to the opaque handle tHalHandle with references to
the actual underlying struct.

Change-Id: I2801f6531d810710d6ec0fdbd517d30f85407c25
CRs-Fixed: 2347928
2018-11-13 14:24:50 -08:00
nshrivas
023a0f4463 Release 5.2.0.106C
Release 5.2.0.106C

Change-Id: I444090915d106d9291e7e645e36b34b1d196412e
CRs-Fixed: 774533
2018-11-13 13:54:55 -08:00
Jeff Johnson
7c4335001d qcacld-3.0: Refactor WE_SET_AMPDU ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the WE_SET_AMPDU ioctl handling into a separate
function.

Change-Id: I76c11e2a099c2f9734a0e9b0208b339406b4a22c
CRs-Fixed: 2348656
2018-11-13 13:54:55 -08:00
Jeff Johnson
22e57f1269 qcacld-3.0: Refactor "set dbg" ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the "set dbg" ioctl handling into separate functions.
Note that the existing logic that updates the fw_log_settings in the
HDD context is obsolete, so remove that logic as part of the
refactoring.

Change-Id: Ibf632d1ef37905ca8159ea997dc07e4f2f7d12cc
CRs-Fixed: 2348502
2018-11-13 13:54:50 -08:00
nshrivas
84b5f6b1f7 Release 5.2.0.106B
Release 5.2.0.106B

Change-Id: I334ce5ae48680ca6568e1e18cdd224fbcb78e9d0
CRs-Fixed: 774533
2018-11-13 12:04:39 -08:00
Jeff Johnson
2e38127bd8 qcacld-3.0: Refactor "set vdev" ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the "set vdev" ioctl handling into separate functions.

Change-Id: I73cc9fd5400fadb5812687d13741b7c430a0045c
CRs-Fixed: 2347909
2018-11-13 12:04:39 -08:00
Dundi Raviteja
5296f49644 qcacld-3.0: Possible OOB access in wlan_hdd_cfg80211_start_bss()
In wlan_hdd_cfg80211_start_bss(), beacon head buffer is typecast
to ieee80211_mgmt structure without checking for buffer length
against beacon header length which may cause OOB access
while accessing iee80211_mgmt structure.

To address this, add check for beacon head length against beacon
header length before typecasting to iee80211_mgmt structure.

Also while accessing supported rates, length given to function
wlan_hdd_cfg80211_get_ie_ptr() is the total length of management
frame that also includes header length which may cause OOB access
while getting supported rates.

To address this, send only beacon data length and exclude header
length to function wlan_hdd_cfg80211_get_ie_ptr().

Change-Id: I442b236e48c3be8cbd8019c5c339593f9aa74e3e
CRs-Fixed: 2335957
2018-11-13 12:04:34 -08:00
nshrivas
73d76b975c Release 5.2.0.106A
Release 5.2.0.106A

Change-Id: I631919e131192d12188463f3f778211b9ecfd4d5
CRs-Fixed: 774533
2018-11-13 09:55:43 -08:00
Pragaspathi Thilagaraj
46e10b36ef qcacld-3.0: Fix error handling path of wma_remove_peer
If the wma_remove_peer fails, the caller can still proceed to
start vdev hold request timer for WMA_DELETE_STA_REQ. The Host
driver doesnot stop the timer and this results in page fault
when the timer is expired.

Check the return status of wma_remove_peer and send failure
to the caller of  wma_remove_peer.

Change-Id: I63d0dfefb183cf1a88b1f7abb2686b2dfdc6bd79
CRs-Fixed: 2348248
2018-11-13 09:55:43 -08:00
nshrivas
266e5e0b2e Release 5.2.0.106
Release 5.2.0.106

Change-Id: Iff34a4b4e6502d7ea61cd6ac0f40157a663d79a3
CRs-Fixed: 774533
2018-11-13 08:28:09 -08:00
wadesong
cc2e216a57 qcacld-3.0: Fix some discrepancies in CFG INI comments
Discrepancies between some of the CFG INI names and their comment
text were discovered during reviewing.

Fix them by making all comment text aligning with the real CFG
INI names.

Change-Id: I1bf5417ea79727da451d0d6ca1a5cd100523e49a
CRs-Fixed: 2348140
2018-11-13 08:28:08 -08:00
Dustin Brown
f967e48d1d qcacld-3.0: Integrate DSC (psoc ssr)
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.

As part of integrating the DSC APIs into HDD, protect psoc sub-system
recovery (SSR).

Change-Id: I0374cdb22259763b0f61a4bea89fdb4ffc2c215c
CRs-Fixed: 2348567
2018-11-13 08:28:04 -08:00
Dustin Brown
3ecc87863e qcacld-3.0: Integrate DSC (psoc idle shutdown/restart)
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.

As part of integrating the DSC APIs into HDD, protect psoc idle shutdown
and restart.

Change-Id: I416a8f4cfb67fabce377ff96715e3a372a3aed7d
CRs-Fixed: 2347019
2018-11-13 08:28:00 -08:00
nshrivas
73cf0763b3 Release 5.2.0.105Z
Release 5.2.0.105Z

Change-Id: I7ba067be2e1f588f89ecda97a05557a9c0168215
CRs-Fixed: 774533
2018-11-13 06:56:05 -08:00
Pragaspathi Thilagaraj
5772627cad qcacld-3.0: Send auth failure only if get default wep key fails
The function lim_process_auth_frame_type2 gets the wep default
key from mlme_get_wep_key(). Auth failure should be sent only
if mlme_get_wep_key fails. But currently, for success case also
the auth failure is sent and wep shared key auth fails.

Check the return status of mlme_get_wep_key and don't send auth
failure during success case.

Change-Id: I70c2bba7cd01385cec0c5d7df4437e1e4ec7548e
CRs-Fixed: 2348208
2018-11-13 06:56:05 -08:00
Nachiket Kukade
7dac923e1e qcacld-3.0: Return appropriate status code in sme_nan_request
After the NAN request message is posted to the SME queue in
sme_nan_request, the status of the scheduler API is ignored.
Success will be returned in the case of a failure during
posting the message. This may generate unexpected outcomes
during NAN testcases.

Return appropriate status code in sme_nan_request to the caller.

Change-Id: I31f518e7b90315c0f7c30ec2f5aeebec19d64813
CRs-Fixed: 2335734
2018-11-13 06:56:01 -08:00
nshrivas
150cb0ca56 Release 5.2.0.105Y
Release 5.2.0.105Y

Change-Id: I9f5ce36337fd00f038f59b0794ce7b1a449602ae
CRs-Fixed: 774533
2018-11-13 04:20:49 -08:00
Jingxiang Ge
7cdb955b0f qcacld-3.0: Fix tx queue is paused forever
Put flow control setting in the flow_pool_lock, which can avoid
race condition between ol_tx_desc_free and ol_tx_desc_alloc.
This is a refine based on Ib60139fd94a4fb88c92a7f8aaf886ae9d3ca4c75.

Change-Id: I8d89323b5631039d7ff5a141775cc5825389c18b
CRs-Fixed: 2297190
2018-11-13 04:20:48 -08:00
Dustin Brown
623e7e358d qcacld-3.0: Integrate DSC (psoc probe/remove)
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.

As part of integrating the DSC APIs into HDD, protect psoc probe and
remove.

Change-Id: I5db13fb321695f535b5765c637ee638396e5ca6f
CRs-Fixed: 2347016
2018-11-13 04:20:44 -08:00
nshrivas
e665cc8412 Release 5.2.0.105X
Release 5.2.0.105X

Change-Id: I95e55933e60b7962b4b4f7e807d7eb1a6d92b111
CRs-Fixed: 774533
2018-11-13 02:43:45 -08:00
Abhishek Singh
11ff22150c qcacld-3.0: Cleanup the unused quiet timers and TX control API
Quiet timers and TX control API are no longer used and are dummy API
which is dropped in WMA layer. Thus remove this unused code.

Change-Id: I77617df14093806f19c0d587e953f63ae86f8ffe
CRs-Fixed: 2348271
2018-11-13 02:43:45 -08:00
Jeff Johnson
610151f500 qcacld-3.0: Use mac_handle_t in sap_validate_chan()
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
sap_validate_chan() to use the new naming.

Change-Id: I5495d00a0fa2d1bef8d491788559fc9493797dd6
CRs-Fixed: 2347657
2018-11-13 02:43:41 -08:00
Jeff Johnson
74df585cec qcacld-3.0: Use mac_handle_t in csr_packetdump_timer_stop()
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
csr_packetdump_timer_stop() to use the new naming.

Change-Id: I420949b9d4a88c9aaec7ee768914583f17fefadb
CRs-Fixed: 2347656
2018-11-13 02:43:37 -08:00
nshrivas
8c282e4087 Release 5.2.0.105W
Release 5.2.0.105W

Change-Id: If7193691b4cfbcd222fa7e7ff7ee075ca2af699f
CRs-Fixed: 774533
2018-11-13 01:11:31 -08:00
Jeff Johnson
20967c9708 qcacld-3.0: Remove unused enum essid_bcast_type
enum essid_bcast_type is unused. so remove it.

Change-Id: I9d4307bfb7f502576abb0434030888f5ca27243f
CRs-Fixed: 2348051
2018-11-13 01:11:31 -08:00
Jeff Johnson
034f3c92a8 qcacld-3.0: Replace tpAniSirGlobal in HDD
Typedef tpAniSirGlobal is obsolete, so replace it with the underlying
struct pointer or handle conversion function as appropriate.

Change-Id: I4dd5d91f54bfb57d6322a5e3c91795b80393da8a
CRs-Fixed: 2347908
2018-11-13 01:11:27 -08:00
Jeff Johnson
5d0e8cd6cd qcacld-3.0: Refactor "set pdev" ioctl processing
One of the HDD functions with the highest cyclomatic complexity is
__iw_setint_getnone(). In order to reduce the complexity there is a
plan to replace the existing switch with a vtable. As part of that
goal refactor the "set pdev" ioctl handling into separate functions.

Change-Id: I4f382b7681710ce50cb5b2ffe65e4ad03d73a670
CRs-Fixed: 2346189
2018-11-13 01:11:24 -08:00
nshrivas
797b563317 Release 5.2.0.105V
Release 5.2.0.105V

Change-Id: Ia4934f0aebd77ce36f1e5e968d99f186d30d0125
CRs-Fixed: 774533
2018-11-12 18:28:04 -08:00