Commit Graph

14990 Commits

Author SHA1 Message Date
Alok Kumar
ea3b23bc74 qcacld-3.0: Fix callback function type for cds_ol_rx_thread_cb
To address kernel control flow integrity (CFI) issues related to
type mismatch, correct input argument type for ol_rx_data_cb().

Change-Id: Iafefe5dc3d946e3d67743de1a662aa3b0511cf5d
CRs-Fixed: 2407160
2019-03-07 23:53:53 -08:00
Dustin Brown
ffaf8cce87 qcacld-3.0: Remove SSR protect (transitions)
As part of DSC integration cleanup, remove SSR protection from
transitions where osif_sync trans start/stop protection is also in
place.

Change-Id: I0b4a9404697d130c8a1bfeb7d2c0d2977d825f5c
CRs-Fixed: 2411001
2019-03-07 23:53:48 -08:00
nshrivas
47568be1ab Release 5.2.0.124G
Release 5.2.0.124G

Change-Id: If82f1f326e89e313cdc023d53b2cef45636bebcc
CRs-Fixed: 774533
2019-03-07 22:22:47 -08:00
Jeff Johnson
66c376d228 qcacld-3.0: Remove typedef tSirNanEvent
Change I5565ef2eb72b3746e05cb8e16662985392bcc802 ("qcacld-3.0: Remove
unused wlan_hdd_cfg80211_nan_*() stubs") removed the last reference to
typedef tSirNanEvent. Since this typedef is obsolete, remove it.

Change-Id: I7b7ef8f0bde00a77d95e3e1451e6138b01061bd7
CRs-Fixed: 2411194
2019-03-07 22:22:46 -08:00
Jeff Johnson
dbb4d6c4e4 qcacld-3.0: Remove unused wlan_hdd_cfg80211_nan_*() stubs
Change I542e5afe832619f8c088220cc4456aa7fe4416fd ("qcacld-3.0: Route
the legacy NAN commands through NAN component") removed function
wlan_hdd_cfg80211_nan_callback(), but left behind the stub
implementation that was referenced when the NAN feature was not
enabled. This stub is unused, so remove it.

In addition functions wlan_hdd_cfg80211_nan_request() and
wlan_hdd_cfg80211_nan_ext_request() are only referenced when the NAN
feature is enabled, so the stub functions are also unnecessary, so
remove those as well.

Finally, wlan_hdd_cfg80211_nan_request() has two separate prototypes,
so remove one of the duplicates.

Change-Id: I5565ef2eb72b3746e05cb8e16662985392bcc802
CRs-Fixed: 2411169
2019-03-07 22:22:42 -08:00
Jeff Johnson
0fcc94efa0 qcacld-3.0: Remove setConfig ioctl support
Change I1b699d5fe5b3182c292cf10c85f842169bf14342 ("qcacld-3.0:
Refactor stats cfg items") removed the last of the legacy dynamic
config items. Since there are no items for the setConfig ioctl to
modify, the support is obsolete, so remove it.

Change-Id: I82e8a352a1c6af07f64951dca6ec5c712dbccef9
CRs-Fixed: 2411168
2019-03-07 22:22:37 -08:00
Jeff Johnson
d82d7893b1 qcacld-3.0: Remove is_ra_ratelimit_enabled from cds_config_info
Change I870a1271a627d47242000f5e04068e628f567216 ("qcacld-3.0: Cleanup
usage of RA rate limit variables in WMA") removed all usage of field
is_ra_ratelimit_enabled in struct cds_config_info. Since this field is
now obsolete, remove it.

Change-Id: Iea020b56cb1927718bccb7bc77d314e40b9c73a6
CRs-Fixed: 2411167
2019-03-07 22:22:32 -08:00
nshrivas
64a2f64ef3 Release 5.2.0.124F
Release 5.2.0.124F

Change-Id: I194135f99fd1439e199edd3d0f0c1b8e5648cf2b
CRs-Fixed: 774533
2019-03-07 20:46:59 -08:00
Abhishek Singh
5ffe9de5b4 qcacld-3.0: Fix Connection issue when AP change from hidden to non-hidden
If AP change its status from hidden to broadcasting SSID in its beacon
kernel drop the beacon entry as its confusing. Now during connection
driver try to update the entry in kernel and it fails and as kernel drop
the beacon the connection fails.

To fix this detect if AP changed its ssid type from hidden to
broadcasting and unlink the old bss from kernel in that case.

Change-Id: Ic7fc67aeb2b95e772ed12340f7ff84b1f2c233d9
CRs-Fixed: 2410209
2019-03-07 20:46:59 -08:00
nshrivas
71822369cf Release 5.2.0.124E
Release 5.2.0.124E

Change-Id: I97b11087bcd525897c8bb2954c8fbab43ea19f71
CRs-Fixed: 774533
2019-03-07 17:32:06 -08:00
Srinivas Girigowda
b971ba2678 qcacld-3.0: Replace lim_is_group_addr() with IEEE80211_IS_MULTICAST
Replace lim_is_group_addr() with IEEE80211_IS_MULTICAST.

Change-Id: Ide8c1a9b04c065896724c67123943128e76f8d1a
CRs-Fixed: 2410946
2019-03-07 17:32:06 -08:00
nshrivas
8c17145977 Release 5.2.0.124D
Release 5.2.0.124D

Change-Id: I145ac8afad5f04e13a13318a2250e20b28bee032
CRs-Fixed: 774533
2019-03-07 16:06:31 -08:00
Jeff Johnson
912b1bb540 qcacld-3.0: Replace HDD_SESSION_ID_INVALID
The macro HDD_SESSION_ID_INVALID uses legacy nomenclature and
replicates the semantics of converged macro WLAN_UMAC_VDEV_ID_MAX,
so replace it.

Change-Id: I312b0599a31b530abe5c072a50673ac0198da877
CRs-Fixed: 2410833
2019-03-07 16:06:30 -08:00
Jeff Johnson
995fd5192d qcacld-3.0: Rename last_scan_reject_session_id
The HDD context field last_scan_reject_session_id uses the legacy term
"session_id." To align with the current nomenclature change this to
"vdev_id."

Change-Id: Icb429e9a4e557c0edac8a1ba30339cd596209e68
CRs-Fixed: 2410832
2019-03-07 16:06:25 -08:00
Jeff Johnson
a2ac4e7375 qcacld-3.0: Rename hdd_is_connection_in_progress() params
Currently hdd_is_connection_in_progress() uses the legacy term
"session_id" for one of its parameters. In order to align with the
current terminology replace this with "vdev_id." And further to
provide additional information, add an "out_" prefix to both output
parameters.

Change-Id: I658e3adf0b4448f33f657d4cc839a4b6d180e31e
CRs-Fixed: 2410831
2019-03-07 16:06:21 -08:00
Jianmin Zhu
cc6b3d0c43 qcacld-3.0: Change log level from err to debug for LFR3 performance KPI
Log of level err will call printk to print on uart, may make
current thread sleep or delay > 10ms, then wma_roam_synch_event
need longer time to handle, LFR3 roam need longer time.

Change-Id: Ibdd58f74fcf5cf3de8e2b06166c375a2ce634cb5
CRs-Fixed: 2406307
2019-03-07 16:06:15 -08:00
nshrivas
0e41718553 Release 5.2.0.124C
Release 5.2.0.124C

Change-Id: I52d0920ec0a6904c638cf347341e0273d9671fac
CRs-Fixed: 774533
2019-03-07 14:30:27 -08:00
Bala Venkatesh
1ca2be1c00 qcacld-3.0: Fix return status in tdls_activate_update_peer
If the curr_peer link status is tearing or connected,
activate peer cmd is rejected and the return status is sent
to supplcant as success even.

But return failure status to supplicant if the link is tearing.

Change-Id: Ia976fee03c77191a7e617a3e21e8c5ddf98759d0
CRs-Fixed: 2411146
2019-03-07 14:30:26 -08:00
nshrivas
7e36dedeaa Release 5.2.0.124B
Release 5.2.0.124B

Change-Id: I959d60d779cdd0f02f914bf48af0efcbf16f55d6
CRs-Fixed: 774533
2019-03-07 13:03:58 -08:00
Varun Reddy Yeturu
d6bfcd76e6 qcacld-3.0: Add crypto component support for FILS
Add support in crypto for FILS set key functionality

Change-Id: Ibbb83940c6f2d8545966a0b122f132b55d5770bf
CRs-Fixed: 2407508
2019-03-07 13:03:57 -08:00
nshrivas
acdeb3d135 Release 5.2.0.124A
Release 5.2.0.124A

Change-Id: Id273d552b4e241c15e9ecb43354aa581676fe015
CRs-Fixed: 774533
2019-03-07 09:08:16 -08:00
Jeff Johnson
d7a7181e70 qcacld-3.0: Replace typedef tAniSirLimIbss
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 tAniSirLimIbss 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 and
so-called Hungarian notation, so in conjunction rename the struct and
underlying fields to be in compliance.

Change-Id: I92eeb5206e89e5682c928f8d4a5baabe77ea3d89
CRs-Fixed: 2410940
2019-03-07 09:08:15 -08:00
nshrivas
e5cb33a80a Release 5.2.0.124
Release 5.2.0.124

Change-Id: I781f717a21110095b6b24ad13eb124c4c7afecb7
CRs-Fixed: 774533
2019-03-07 05:15:16 -08:00
Krunal Soni
888d401f27 qcacld-3.0: Add ENABLE_VERBOSE_DEBUG macro to Kbuild
Add ENABLE_VERBOSE_DEBUG macro to Kbuild to trigger DP/HAL/HIF
excessive logging controlling mechanism.

CRs-fixed: 2405032
Change-Id: I2af5f9bf39540f952138aa8308401a387fe62bf1
2019-03-07 05:15:15 -08:00
nshrivas
ecdcf6c866 Release 5.2.0.123Z
Release 5.2.0.123Z

Change-Id: I9034b5baef776891d93ddfd179db7580d0fb4327
CRs-Fixed: 774533
2019-03-07 03:39:25 -08:00
Dustin Brown
6725e27955 qcacld-3.0: Integrate DSC (misc - part 2/3)
As part of DSC integration, replace cds_ssr_protect/unprotect with
appropriate osif_sync op start/stop calls in the miscellaneous
remaining callback handlers.

Change-Id: I0717bab8a9a45625f4bdc8ad97111581e6a66232
CRs-Fixed: 2410916
2019-03-07 03:39:24 -08:00
nshrivas
aefbf2a755 Release 5.2.0.123Y
Release 5.2.0.123Y

Change-Id: I5ba02d83e497e9486d5af81d81a96f937402cf00
CRs-Fixed: 774533
2019-03-07 02:01:43 -08:00
Jeff Johnson
62f2899348 qcacld-3.0: Fix channel avoid frequency list corruption
In wlan_hdd_merge_avoid_freqs() there is a test to determine if the
merged frequency list will exceed the size of the destination buffer,
and if so, the function returns an error. Unfortunately the method to
determine overflow actually modifies the information in the
destination list, and so if the error return occurs the destination
list will contain an incorrect, too large, destination list size.
Address this issue by determining if the list will overflow prior to
modifying the destination list size.

Change-Id: I9ede0bc24c676d6a9ef124d83c36ca9860b847f7
CRs-Fixed: 2410138
2019-03-07 02:01:42 -08:00
Sravan Kumar Kairam
c047d29ff2 qcacld-3.0: Add IPA over GSI support
For IPA WDI3.0 veresion IPA uses GSI FW. So add IPA
over GSI support.

Change-Id: I3ecdb0b365e6004f7694d19ea8165233f00c6335
CRs-Fixed: 2368038
2019-03-07 02:01:37 -08:00
nshrivas
3cc2246899 Release 5.2.0.123X
Release 5.2.0.123X

Change-Id: I6b794a174de25e6b352d00ab3ca2d172e7ce4729
CRs-Fixed: 774533
2019-03-07 00:20:28 -08:00
Nachiket Kukade
15bd4f725e qcacld-3.0: Define WMA callback to update NDI conn info
Unlike other connection types, vdev start parameters for NDI
do not reflect the correct connection information for the
datapath. Once an NDP is established on NDI this info in WMA
needs to be updated accordingly. Define a WMA callback and
use it after NDP confirm and NDP End to update the connection
info for NDI.

Use WMA callback for updating NDI connection info.

Change-Id: Iefb515a751bd3fb5e10610d191bdadaf3a01f59a
CRs-Fixed: 2407153
2019-03-07 00:20:26 -08:00
nshrivas
900f682a80 Release 5.2.0.123W
Release 5.2.0.123W

Change-Id: Ic6890bd88e42a6d0a68d3a8a697ebd0fe33efb9c
CRs-Fixed: 774533
2019-03-06 22:43:27 -08:00
Nachiket Kukade
6f46abc449 qcacld-3.0: Store NDP connection info in NAN's peer objects
To support NAN Datapath concurrencies driver needs to be aware
of the primary NDP connection for each NDI. If the primary
NDP has ended, driver needs to update NDI with the second NDP
if it exists. For this purpose driver needs to track the NDP
connections for every peer associated with NDI. Store and
update the primary NDP connection info in peer object for
NDP confirm, NDP End & NDP schedule update.

Store and update NDP connection info in NAN's peer objects.

Change-Id: I7d2c8c513beceebf155596bfa73841a834d9a97a
CRs-Fixed: 2406402
2019-03-06 22:43:26 -08:00
nshrivas
be525bf1fc Release 5.2.0.123V
Release 5.2.0.123V

Change-Id: I83a2e6812f42c70cb199bc576407f05074c47b93
CRs-Fixed: 774533
2019-03-06 16:56:22 -08:00
Jeff Johnson
5ba1df79d3 qcacld-3.0: Use the refined Link Layer Stats Unified API
Change Ifdc1fada55a559f3b3d0837ec20cceb653c45c40 ("qcacmn: Refine the
Link Layer Stats Unified API") is updating the Link Layer Stats
Unified API, so concurrently update the legacy driver to align with
these changes.

Change-Id: Ifd7c8de2358121dae4752525ff57021a32be85d3
CRs-Fixed: 2409294
2019-03-06 16:56:21 -08:00
Abhishek Singh
8f4aa18225 qcacld-3.0: Fix vdev ref leak in P2P-GO during SSR
If P2P-GO is active and SSR happens the vdev ref coount taken
by sap_ctx is not released and this lead to ref count leak.

To fix this release vdev ref count for sap_ctx in
hdd_reset_all_adapters().

Change-Id: Id35247a917f3e0c3e163ea00a7a850cdf28ddd80
CRs-Fixed: 2410121
2019-03-06 16:56:17 -08:00
nshrivas
060df6ed91 Release 5.2.0.123U
Release 5.2.0.123U

Change-Id: If40e25b9b97eada1c912d96cc7b98029e697be2a
CRs-Fixed: 774533
2019-03-06 10:59:51 -08:00
Abhinav Kumar
7a048f72e3 qcacld-3.0: Fix Integer overflow while sending beacon report
sme_ese_send_beacon_req_scan_results sends number of bss description
present in beacon report through bcn_report->numBss. For each
iteration driver could send max 4 BSS. In case if driver has to send
beacon report for more than 4 BSS, It sends 4 BSS per iteration. Once
first four results are sent and bcn_report->numBss is not set to 0,
in next iteration bcn_report->numBss++ start from 4 instead of 0.
This Result in sending value more than 4 instead of 4 for next rest
BSS and leads to Integer overflow for bcn_report->numBss.

Driver should memset beacon_rep buffer for each iteration in order to
prevent Integer overflow of bcn_report->numBss. By this driver
could send fresh beacon report (independent of previous beacon report)
in each iteration.

Fix is to memset beacon_rep buffer to zero after sending beacon
report in each iteration in sme_ese_send_beacon_req_scan_results.

Change-Id: I0d07e54ec7f05e8eef388f9958fad597dc49873e
CRs-Fixed: 2408834
2019-03-06 10:59:50 -08:00
Sandeep Puligilla
feba0b1d96 qcacld-3.0: Enable VDEV manager module
Modify configuration file to enable the VDEV
manager functionality.

Change-Id: I97787eb2a94db87b33fd0eb33146cca783e8a04d
CRs-Fixed: 2402489
2019-03-06 10:59:46 -08:00
Srinivas Girigowda
3a5c66f808 qcacld-3.0: Remove obsolete ARRAY_LENGTH macro
Remove obsolete ARRAY_LENGTH macro.

Change-Id: Ibe8400fa52770ed953a65076300a0d722e7fb175
CRs-Fixed: 2409265
2019-03-06 10:59:41 -08:00
Sandeep Puligilla
3746d5db95 qcacld-3.0: Enable vdev manager support for LFR3.0
Enable vdev manager support for LFR3.0

Change-Id: I5e8a420eadd98786fe43d7d6e60980209f7a42e1
CRs-Fixed: 2405842
2019-03-06 10:59:37 -08:00
Abhinav Kumar
cd737decf2 qcacld-3.0: Allow roam invoke while FASTREASSOC
While handling userspace-directed re-association, driver
checks for flag "supplicant_disabled_roaming" before sending
roam invoke command after connection. Currently, the value of
supplicant_disabled_roaming is getting updated by value comes
through vendor command QCA_WLAN_VENDOR_ATTR_ROAMING_POLICY.
In case if roaming does not get enabled using vendor command
in __wlan_hdd_cfg80211_set_fast_roaming, driver rejects
fast re-association cmd. This leads to roaming failure.

Fix is to allow roam invoke command irrespective of flag
"supplicant_disabled_roaming" and send csr_roam_offload_scan
with reason REASON_SUPPLICANT_DISABLED_ROAMING instead of
REASON_DISCONNECTED while processing FASTREASSOC command.

Change-Id: Iee55fff8dd9445a2fb2b96a244f59a763f207dd5
CRs-Fixed: 2408861
2019-03-06 10:59:32 -08:00
Pragaspathi Thilagaraj
1d8e2ab528 qcacld-3.0: Replace typedef bss_description
Host driver code has several instances of struct bss_description
that is type defined to tSirBssDescription, *tpSirBssDescription
This goes against the linux coding style. This change replaces
tpSirBssDescription with struct bss_description *.

Also Linux Coding Style doesn't welcome mixed-case names. So
cleanup some mixed-case variable names as well.

This change should be followed by changes to replace
typedef tSirBssDescription also ultimately.

Change-Id: Ic6fa2d5c7db0d0c1fe4be1096d416295dcb83779
CRs-Fixed: 2409129
2019-03-06 10:59:28 -08:00
nshrivas
2de111a81c Release 5.2.0.123T
Release 5.2.0.123T

Change-Id: Iff94ce7d3218cd952cf9408463079aff7b15294a
CRs-Fixed: 774533
2019-03-06 06:51:09 -08:00
Srinivas Girigowda
bcb988e398 qcacld-3.0: Remove #ifdef FIXME_GEN6 and obsolete enums
In the function lim_msg_str(), obsolete FIXME_GEN6 compilation macro
is still present and since this compile flag is not enabled,
this function always return "" which results in incorrect logs.

Fix is to remove this obsolete compile macro and also some of the
obsolete enums.

Change-Id: I1f147ff1e9f9c13683e38892007250f965b40407
CRs-Fixed: 2410145
2019-03-06 06:51:08 -08:00
Varun Reddy Yeturu
ff4c998846 qcacld-3.0: Fix WEP functionality in converged set key
Fix WEP security mode issues in converged set key

Change-Id: I8b60e19af1cc1ede9a34cb244de4c8859094ddec
CRs-Fixed: 2400861
2019-03-06 06:51:04 -08:00
Arun Kumar Khandavalli
f1f6592094 qcacld-3.0: Add support for specifying ethernet protocol type
Add support for vendor attribute which givies provision to
specify the ethernet protocol id from userspace to the packets
which are offloaded to the driver/firmware (e.g., IPv4, IPv6).

Change-Id: I543cbe63c6daa43427c7f207c42c667525dc6dcd
CRs-Fixed: 2398207
2019-03-06 06:50:59 -08:00
Jayachandran Sreekumaran
91f96ec753 qcacld-3.0: Send preferred channel list with weight
Send preferred channel list with weight value and a flag
to indicate how the channels should be used in P2P
negotiation process.

Change-Id: Ia48d4f935547c802e78dfdc418fe39031fa43ba5
CRs-Fixed: 2405331
2019-03-06 06:50:55 -08:00
nshrivas
345436a8d5 Release 5.2.0.123S
Release 5.2.0.123S

Change-Id: If36057865966dba0e84ba7bb15cf89bb1b1601f6
CRs-Fixed: 774533
2019-03-06 05:06:21 -08:00
Qun Zhang
368c4ad8ba qcacld-3.0: Fix the wrong memory copy address of IBSS ssid
In IBSS mode, it should copy ssid to member ssId of tSirMacSSid
instead of member length when set bcn/probe filter. Due to the
wrong copy, the peer IBSS bcn is filtered out, so the IBSS group
can not be established.

Change-Id: I9df11de06b0c5ef04a53ee6a25a4ef1547797980
CRs-Fixed: 2386777
2019-03-06 05:06:19 -08:00