Commit Graph

14743 Commits

Author SHA1 Message Date
Rajeev Kumar Sirasanagandla
815a7dfa5d qcacld-3.0: Fix function type for wdi_event_unsub
To address kernel control flow integrity (CFI) issues related to type
mismatch, correct the return type of wdi_event_unsub().

Change-Id: I45d090cb4011ca659e30b2f7be6c2b7d32bbba4b
CRs-Fixed: 2402957
2019-02-23 00:25:45 -08:00
Dustin Brown
1d31b08769 qcacld-3.0: Integrate DSC (vdev cfg80211 ops)
As part of DSC integration, use vdev op start/stop for appropriate
cfg80211 operation callback handlers.

Change-Id: Id2a13469267547b878e234cb3c0b16e74abe00d5
CRs-Fixed: 2402143
2019-02-23 00:25:42 -08:00
nshrivas
a1ecc623c9 Release 5.2.0.121D
Release 5.2.0.121D

Change-Id: Ie0ed031eff2246ff9ba363c60aa792ac3509769b
CRs-Fixed: 774533
2019-02-22 22:52:13 -08:00
Dustin Brown
a09acf4e35 qcacld-3.0: Integrate DSC (vdev vendor commands)
As part of DSC integration, use vdev op start/stop for appropriate
vendor commands.

Change-Id: I5d296e7e97158bcc11db04361e0211d1a44b7fcd
CRs-Fixed: 2402142
2019-02-22 22:52:12 -08:00
nshrivas
feb5429fc6 Release 5.2.0.121C
Release 5.2.0.121C

Change-Id: I776d4c8e838433a5fb2c00aeb943633829cbb1ae
CRs-Fixed: 774533
2019-02-22 21:23:43 -08:00
Jeff Johnson
ff1fd4311e qcacld-3.0: Remove lim_send_sme_disassoc_ntf() serdes logic
An ancestor of the current driver used mailboxes for communication
between SME and LIM, and serialization/deserialization routines were
used to encode and decode the mailbox messages. This mechanism is no
longer in use, but there are remnants still present.

Two such remnants are in lim_send_sme_disassoc_ntf(). The logic for
creating both the Disassoc Response and the Disassoc Indication use a
combination of direct structure writes and serialized buffer writes.
Bring this logic up to date by removing all serialized buffer writes
and exclusively use direct structure writes.

Change-Id: I73be566a1512fdc9b8dc28c9ddf818b7c4aa26ed
CRs-Fixed: 2402223
2019-02-22 21:23:42 -08:00
Jeff Johnson
9f72f45926 qcacld-3.0: Remove csr_ser_des_unpack_diassoc_rsp()
An ancestor of the current driver used mailboxes for communication
between SME and LIM, and serialization/deserialization routines were
used to encode and decode the mailbox messages. This mechanism is no
longer in use, but there are remnants still present.

One such remnant is csr_ser_des_unpack_diassoc_rsp(). This function
currently deserializes a message that is already in the correct
format. Since this is pointless, remove the functionality.

Change-Id: I2d212f0f7a40fd12d9932974dfd3f5cde7fc4eb7
CRs-Fixed: 2402222
2019-02-22 21:23:38 -08:00
Ashish Kumar Dhanotiya
6ed4434bdc qcacld-3.0: Enable logging for CP_STATS Module
Currently all logging for CP_STATS is disabled so CP stats
logs are not getting printed.
Enable all the logs for CP_STATS Module.

Change-Id: If465c813d98410129f80427ed7072de063f1f3c8
CRs-fixed: 2402649
2019-02-22 21:23:34 -08:00
Rajeev Kumar Sirasanagandla
02d6f8612c qcacld-3.0: Fix markings
Fix markings per current guidance.

Change-Id: Ibff12c8fb077e5d3ee82d803da499ff65a62b5c6
CRs-Fixed: 2399801
2019-02-22 21:23:30 -08:00
nshrivas
680db41f0a Release 5.2.0.121B
Release 5.2.0.121B

Change-Id: Id8bca020199315e1b9bf13f04fdaa49118811126
CRs-Fixed: 774533
2019-02-22 13:39:21 -08:00
Anurag Chouhan
ca8bc1663c qcacld-3.0: Add API to block/Unblock modem shutdown
Add API to Block/Unblock modem shutdown.

CRs-Fixed: 2393336
Change-Id: Ia1e455a8d52bb79451c26b9a527b902397f19508
2019-02-22 13:39:20 -08:00
Sourav Mohapatra
698d6f6638 qcacld-3.0: Block modem graceful shutdown during stop modules
In the case the interface timer gets expired and stop modules is called
in that context and modem graceful shutdown occurs at the same time,
there arises a situation in which there is a mismatch in the FW and
driver state. This results in the rx ring buffers being freed by the
host while FW still tries to access those buffers.

To avoid this assert situation, block the modem shutdown while the host
is performing stop modules. During stop modules, host will send pdev
suspend which will suspend all activity from FW. This can then clear the
path for the modem graceful shutdown.

Change-Id: I8ecae86bb90be7e97eb274946270eb57ca107332
CRs-Fixed: 2392815
2019-02-22 13:39:16 -08:00
nshrivas
43554d0280 Release 5.2.0.121A
Release 5.2.0.121A

Change-Id: I77c0f302b8afa9a3fc8ad7db0c4e65cece551932
CRs-Fixed: 774533
2019-02-22 11:47:28 -08:00
Rajeev Kumar Sirasanagandla
25bdfadf87 qcacld-3.0: Use vdev argument to release reference
In several functions of HDD, reference of vdev is acquired and released
with hdd_objmgr_get_vdev() and hdd_objmgr_put_vdev() respectively.

Both hdd_objmgr_get_vdev() and hdd_objmgr_put_vdev() use adapter input
argument to get the access to vdev pointer: adapter->vdev.

When acquiring vdev reference "adapter->vdev" can be valid but when
releasing vdev reference "adapter->vdev" can be NULL, leading to
reference leak. This can happen only when hdd_vdev_destroy() invoked
from another thread concurrently.

To address this issue, use the input argument vdev pointer to release
the reference in hdd_objmgr_put_vdev().

Change-Id: I89166a471b6c82a95ae0c70ae025608f2f19e5ca
CRs-Fixed: 2399777
2019-02-22 11:47:27 -08:00
nshrivas
b122544ea2 Release 5.2.0.121
Release 5.2.0.121

Change-Id: Id7e88c91eb30bac43f2aef8a0b0228f54e177671
CRs-Fixed: 774533
2019-02-22 08:24:25 -08:00
Abhinav Kumar
779493f48e qcacld-3.0: Use value of gAddTSWhenACMIsOff as per value in ini
Value of ts_acm_is_off gets updated by 0 irrespective of the value
passed by ini file results driver unable to send eSmeCommandAddTs
cmd.

Fix is to use value of ts_acm_is_off as per value in ini in
CSR_IS_ADDTS_WHEN_ACMOFF_SUPPORTED().

Change-Id: Ic5f34f4c4499f92471ce501a78c39a255d6537c9
CRs-Fixed: 2401454
2019-02-22 08:24:23 -08:00
nshrivas
31ba6ed177 Release 5.2.0.120Z
Release 5.2.0.120Z

Change-Id: I74caba58ddd61afbd7ae7d0a52f24a29d3fa21f3
CRs-Fixed: 774533
2019-02-22 06:56:34 -08:00
Ashish Kumar Dhanotiya
42b0378a80 qcacld-3.0: Send STA authorized status to supplicant for AP
Currently there is no support from driver to send STA authorized
event to supplicant.

Use QCA_NL80211_VENDOR_SUBCMD_LINK_PROPERTIES vendor command to
send STA authorized event to supplicant.

Change-Id: I46416949f04dd28a1713cbebf1f7d0e84b5efda2
CRs-Fixed: 2172816
2019-02-22 06:56:33 -08:00
nshrivas
2fdb89b818 Release 5.2.0.120Y
Release 5.2.0.120Y

Change-Id: I980a8372ac4bca25bda088846fc0da7464cdea80
CRs-Fixed: 774533
2019-02-22 05:24:15 -08:00
Srinivas Dasari
12df344db1 qcacld-3.0: Enable mgmt_tx for auth frames in SAP mode
Hostapd handles SAE authentication and sends the
authentication frames via NL80211_CMD_FRAME interface.
Enable mgmt_tx API for SAP mode as well to
facilitate the same.

Change-Id: Ie858881333b0f12e03f9a4f7b54fe5476b1d9173
CRs-Fixed: 2396335
2019-02-22 05:24:14 -08:00
nshrivas
3448b4bc4b Release 5.2.0.120X
Release 5.2.0.120X

Change-Id: Idba321df925c3addb02ff20494666c2b41323f61
CRs-Fixed: 774533
2019-02-22 01:27:44 -08:00
hangtian
0aa4b545c5 qcacld-3.0: Revert set ol_rx_thread to SCHED_RR
Revert set ol_rx_thread to SCHED_RR, SCHED_RR could lead to
hdd_ctx->bus_bw_work delayed for long time, and throughput level is not
updated while running traffic, finally hdd_rx_packet_cbk drop packets(rx
path slow).

Change-Id: Idc48c4ff4f38e25124121f814492ea116555cd32
CRs-Fixed: 2398511
2019-02-22 01:27:43 -08:00
nshrivas
b0057722fc Release 5.2.0.120W
Release 5.2.0.120W

Change-Id: I5140ab1b6b293cb7257d536764c27fbc76be9e78
CRs-Fixed: 774533
2019-02-21 23:25:18 -08:00
Venkata Sharath Chandra Manchala
27e44903f9 qcacld-3.0: Enable full pktlog
Enable full pktlog for QCA6390.

Change-Id: I985ada6895925cbeb8c616428db05075880fa605
CRs-Fixed: 2388909
2019-02-21 23:25:17 -08:00
nshrivas
e323e63162 Release 5.2.0.120V
Release 5.2.0.120V

Change-Id: I9d7998e1a829c9be954950c3b968f2fd91cea1c1
CRs-Fixed: 774533
2019-02-21 01:46:25 -08:00
Nirav Shah
6aeecf9cc4 qcacld-3.0: Fix epping mode for QCN7605
Epping mode is currently borken in qcacld-3.2 codebase.
Fix epping mode for QCN7605 for USB and PCIe interface.

Change-Id: I12a11989d86f255e7ec61c98e328fbb755fc39ae
CRs-Fixed: 2400179
2019-02-21 01:46:24 -08:00
nshrivas
68208856bc Release 5.2.0.120U
Release 5.2.0.120U

Change-Id: I661e9a5bca61499658635fcfe537b8f75bf36a27
CRs-Fixed: 774533
2019-02-20 21:40:36 -08:00
Rachit Kankane
997e373da8 qcacld-3.0: Add a check to allow DBS concurrency
If gEnableMCCMode is disabled then STA connection is rejected by
driver if it is second connection and creating a 2-port combination.
STA should work as the selected AP is operating on otherband thereby
creating a DBS concurrent scenario.

Change-Id: Ia1f4f8dbf927a872ada72fb15d646a0a0e323e36
CRs-Fixed: 2400546
2019-02-20 21:40:35 -08:00
nshrivas
ef9b417aee Release 5.2.0.120T
Release 5.2.0.120T

Change-Id: I912cecd32e0e6cc0c3e147e9ff9aeaec0837261a
CRs-Fixed: 774533
2019-02-20 19:02:05 -08:00
Pragaspathi Thilagaraj
a07b727e75 qcacld-3.0: Fix 11k neighbor report parameters copy from fwol component
11k offload params bitmask is sent over the wmi command
WMI_11K_OFFLOAD_REPORT_CMDID. Its value is controlled by the ini
value "nr_offload_params_bitmask". The ini value got from the cfg
component during initialization is not correctly populated to the
sme layer resulting in zero values sent to firmware. This results
in 11k functionality failure.

Populate the 11k values to sme with values stored into fwol
component from ucfg_fwol_get_neighbor_report_cfg.

Change-Id: I8615745083cdab677bca8cbb76eb0902758a8a75
CRs-Fixed: 2397328
2019-02-20 19:02:04 -08:00
nshrivas
8b9b77e09c Release 5.2.0.120S
Release 5.2.0.120S

Change-Id: Ib6b458a8cf25651aa2ef4683da1dd69df86bb32f
CRs-Fixed: 774533
2019-02-20 11:31:56 -08:00
Dustin Brown
1b899ef904 qcacld-3.0: Integrate DSC (nan)
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 OSIF, protect NAN datapath and
NAN discovery.

Change-Id: Icf24c8f7717cd1ca92616c781f06dacdd69c01f0
CRs-Fixed: 2398340
2019-02-20 11:31:56 -08:00
nshrivas
ecfefa92f9 Release 5.2.0.120R
Release 5.2.0.120R

Change-Id: Idc0fc33f2453cd5f11c7549195889b379173976a
CRs-Fixed: 774533
2019-02-20 09:09:34 -08:00
Jeff Johnson
2de587987d qcacld-3.0: Replace CONVERGED_TDLS_ENABLE feature flag
The CONVERGED_TDLS_ENABLE feature flag was originally introduced when
the TDLS feature was being componentized so that one could select
either the legacy implementation or the componentized implementation.
That componentization activity has concluded and the legacy
implementation no longer exists. To align with the current usage
switch to exclusively using the FEATURE_WLAN_TDLS feature flag since
that more accurately describes the code being protected.

Change-Id: I2cdb4c6ddba22c5b1d29e87403e5e1c87ce5cbfe
CRs-Fixed: 2395728
2019-02-20 09:09:34 -08:00
nshrivas
207671e9bd Release 5.2.0.120Q
Release 5.2.0.120Q

Change-Id: Icd536674d60154b439373dd158dbbe6d4de7e7ee
CRs-Fixed: 774533
2019-02-20 07:42:05 -08:00
Pragaspathi Thilagaraj
2720d81efe qcacld-3.0: Send all assoc request IE to hostapd in SAP mode
Host driver packs only the RSN IE, WAP IE and additional IE
from association request to upper layers. With any new IE
support added on the driver, the driver has to add new structure
to csr_roam_info and pack that IE into the
tSap_StationAssocReassocCompleteEvent and pass it to higher
layers. This increases the redundancy with new IE introduced.

To facilitate hostapd to get information on all IE, pass all the
IE present in the assoc request to hostapd.

Change-Id: I1665a83de52bd67529ea026dc0c5e92cfbd51590
CRs-Fixed: 2390425
2019-02-20 07:42:04 -08:00
nshrivas
0603e26350 Release 5.2.0.120P
Release 5.2.0.120P

Change-Id: I38500ab764ebfcc6ff776d67c762d12e521bab2e
CRs-Fixed: 774533
2019-02-20 02:55:52 -08:00
Nirav Shah
da761ede23 qcacld-3.0: Fix datapath statistics print format
Fix datapath statistics print format.

Change-Id: Id1c95fc93f1d7335eb199afa59b2077a36641dc3
CRS-Fixed: 2401250
2019-02-20 02:55:51 -08:00
nshrivas
3c60710fe6 Release 5.2.0.120O
Release 5.2.0.120O

Change-Id: I1c1d2e01805fa6d903015af3fb4a1658c44a9b52
CRs-Fixed: 774533
2019-02-19 23:31:08 -08:00
Rachit Kankane
ff35d3c8be qcacld-3.0: decrement active sessions count
Decrement active session count to be in sync with total no of
active connection when existing AP is moving to STA's channel
to achieve SCC.

Change-Id: Id1b599bc53768ddf6b62efbd2dc2a3003c0ad0b8
CRs-Fixed: 2400564
2019-02-19 23:31:07 -08:00
Jeff Johnson
b8cfffb180 qcacld-3.0: Remove obsolete hdd_context_lock
The functionality previously synchronized by the hdd_context_lock has
migrated to the OSIF Request Manager, and the hdd_context_lock is no
longer used. Since it is obsolete, remove it.

Change-Id: Ibb807eeec5e5a20a39596cdb1b068ea5cca9d2d3
CRs-Fixed: 2400777
2019-02-19 23:31:03 -08:00
nshrivas
fb135f37c5 Release 5.2.0.120N
Release 5.2.0.120N

Change-Id: I516a03e2dc653c401a00b5e593874d32517c8cd8
CRs-Fixed: 774533
2019-02-19 21:54:01 -08:00
Srinivas Dasari
ed83ddebcd qcacld-3.0: Introduce ini parameter for SAE support on SAP
Define ini parameter enable_sae_for_sap to enable SAE
support on SAP. It's enabled by default.

Change-Id: I94f099862ad04e0c9f5155ad9dd7165241540c45
CRs-Fixed: 2394661
2019-02-19 21:54:00 -08:00
Jeff Johnson
3f3ad25bfb qcacld-3.0: Rename pGetTemperatureCb & pTemperatureCbContext
The Linux Coding Style frowns upon mixed-case names and so-called
Hungarian notation, so rename pGetTemperatureCb and
pTemperatureCbContext in struct sme_context to be compliant.

Change-Id: Ie87e87b8fffc89510d72a8b849282975b4202999
CRs-Fixed: 2400320
2019-02-19 21:53:56 -08:00
Jeff Johnson
e7aa5cd3b0 qcacld-3.0: Rename peerInfoParams in struct sme_context
The Linux Coding Style frowns upon mixed-case names so rename
peerInfoParams in struct sme_context to be compliant.

Change-Id: I7221fa6b7b432440d62cded556365d524b28bb14
CRs-Fixed: 2400319
2019-02-19 21:53:50 -08:00
Jeff Johnson
56ba88aeb5 qcacld-3.0: Replace typedef tSmePeerInfoHddCbkInfo
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSmePeerInfoHddCbkInfo typedef
does not meet any of those criteria, so replace it with a reference to
the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names so in
conjunction rename the underlying struct to be in compliance.

Change-Id: I751e865a5d3ad64ee46794a28a11b2671e405d34
CRs-Fixed: 2400318
2019-02-19 21:53:45 -08:00
Jeff Johnson
d6a2316239 qcacld-3.0: Rename typedef pIbssPeerInfoCb
The Linux Coding Style frowns upon mixed-case names and so-called
Hungarian notation so rename typedef pIbssPeerInfoCb to be compliant.

Change-Id: I2a2ab001ec6af392680810443bc971c56130f452
CRs-Fixed: 2400317
2019-02-19 21:53:40 -08:00
nshrivas
8a08212ff1 Release 5.2.0.120M
Release 5.2.0.120M

Change-Id: Ia8ca551e90a0aa7e3dc947df0d9da35a56813b6e
CRs-Fixed: 774533
2019-02-19 19:07:47 -08:00
Jeff Johnson
5a6a0c90ea qcacld-3.0: Rename currDeviceMode
The Linux Coding Style frowns upon mixed-case names so rename
currDeviceMode in struct sme_context to be compliant.

Change-Id: I26ca94487c4f037098e06f0dd820360d90cb276b
CRs-Fixed: 2400316
2019-02-19 19:07:46 -08:00
nshrivas
8a2639fa64 Release 5.2.0.120L
Release 5.2.0.120L

Change-Id: Ib26270f2ecc3856a410f4476d628b93258ec26bc
CRs-Fixed: 774533
2019-02-19 17:47:29 -08:00