Commit Graph

18011 Commits

Author SHA1 Message Date
nshrivas
f1141afdc6 Release 5.2.0.192F
Release 5.2.0.192F

Change-Id: Ia2635ccbbaa93e99e055dc13acf6ec66ac0f3936
CRs-Fixed: 774533
2020-07-01 00:26:07 -07:00
sheenam monga
f63c83abc1 qcacld-3.0: Consider phy mode sent by fw to get dot11 mode
Currently, after roaming only vht ie is used to get dot11 mode
which may casue issue whenever vendor vht ie is present but vht
ie is not present in beacon. Host updates dot11 mode to
11N based on missing vht ie and does not consider vendor vht but
fw considers vendor vht ie which causes different dot11 modes in
fw and host.

Consider phy mode sent by fw in roam sync event to get dot11
mode to maintain compatibility between host and fw.

Change-Id: Ie9e4cbadd84d239c6f386f296c77677b15ce0500
CRs-Fixed: 2714566
2020-07-01 00:26:07 -07:00
gaurank kathpalia
06ecb758cd qcacld-3.0: Remove unused scan filter
Remove unused scan filter params.

Change-Id: I2b34f78616a13e99483792c83ac3df63b1c94d03
CRs-Fixed: 2722138
2020-07-01 00:26:02 -07:00
Abhishek Singh
fb4325a69d qcacld-3.0: Replace different struct of ssid with struct wlan_ssid
There are different version of SSID structure used in driver, replace
them with struct wlan_ssid.

Change-Id: I8a5bfdafbdc4365afccc11980633272be9c75a81
CRs-Fixed: 2721873
2020-07-01 00:25:57 -07:00
nshrivas
704f1a056f Release 5.2.0.192E
Release 5.2.0.192E

Change-Id: I0684af125f7ea641dedfc597840d5598e553477d
CRs-Fixed: 774533
2020-06-30 14:58:17 -07:00
nshrivas
c4ec8d5b9f Release 5.2.0.192D
Release 5.2.0.192D

Change-Id: I549b3c5ba0e398fb0bba90c7fd769c497ae02d55
CRs-Fixed: 774533
2020-06-30 12:30:03 -07:00
Sourav Mohapatra
584440c8d1 qcacld-3.0: Assert early on to enable dump info collection
Presently, in the host initiated recovery the handler checks whether
the support for recovery is enabled via the ini or triggers the panic.
Whenever the panic is triggered the irq's will be disabled,
this results in some targets not able to collect the important
MHI, PCI information on what caused the issue to root cause the issue.

So, for different targets check the ini at different places. In this
case, move PCI based check to the start.

Change-Id: Ia184a265d0f76e43d1d5edc4bcc0849a05726dac
CRs-Fixed: 2720999
2020-06-30 12:30:03 -07:00
Bapiraju Alla
9a61eedc9b qcacld-3.0: Override powersave configuration for monitor mode
Currently, powersave configuration is being overwritten before INIs
are initialized by mlme component. As a result INI configuration is
not being overwritten in case of monitor mode.

To resolve this issue, overwrite PS configuration during start
modules and restore it in stop modules.

Change-Id: I2707b431b81881c943104b211d55c6f48f348ba9
CRs-Fixed: 2682164
2020-06-30 12:29:59 -07:00
nshrivas
9858a65c74 Release 5.2.0.192C
Release 5.2.0.192C

Change-Id: Icbd630805982c1253a16c78326e285ef6fbdc94f
CRs-Fixed: 774533
2020-06-29 23:46:47 -07:00
Sourav Mohapatra
e25710a25c qcacld-3.0: Relocate fetching of hdd_ctx to avoid stale pointer
In the function hdd_driver_unload, the hdd_ctx is fetched at the
beginning before the dsc_wait_for_trans. In the scenario where this
wait_for_trans is active and in the other thread (for example when
wlan_pld_remove and rmmod run in parallel) the hdd_ctx is invalidated,
the local copy of the pointer becomes stale. Accessing this stale
pointer leads to page fault.

Do not fetch the hdd_ctx before waiting for dsc trans. Rather fetch it
just before where it is actually used.

Change-Id: Ia5524c7a2af8ff2e976a6f1d3e87f2f374fdc371
CRs-Fixed: 2720714
2020-06-29 23:46:47 -07:00
nshrivas
dbcaef0ec1 Release 5.2.0.192B
Release 5.2.0.192B

Change-Id: I406ad3e3d97052b78f2d86ef46582d50cd046656
CRs-Fixed: 774533
2020-06-29 19:15:48 -07:00
Abhinav Kumar
7d3c309952 qcacld-3.0: Allow the driver to process multiple measurement req
As per requirement, the driver should able to process up to
MAX_MEASUREMENT_REQUEST (5) measurement request in a single
beacon report request.

Update driver logic to process up to 5 measurement request and
make sure the driver should not issue rrm scan for the duplicate
channel.

Change-Id: Iea3be8a0efef605852ac6b6b54dd06774ac0adac
CRs-Fixed: 2712112
2020-06-29 19:15:48 -07:00
Abhinav Kumar
8ece9b14c2 qcacld-3.0: Change the size of Measurement Request IE
To process up to 5 Measurement Request in a single beacon
report request, modify the size of Measurement Request IE
to 5.

Change-Id: I87025ce12886cc3129b01de6eb48b45e85babe9a
CRs-Fixed: 2712109
2020-06-29 19:15:44 -07:00
Abhishek Ambure
e5b5a03aeb qcacld-3.0: Add support for sae auth retry
Host retransmits WPA3 SAE authentication frames after 1 second
if there is no response for previous auth frames from AP.
Host keep retransmitting SAE auth frames for max WLAN_SAE_AUTH_RETRY
times.

Change-Id: I1be0bd5354586518781876646b063592e667b0bb
CRs-Fixed: 2716719
2020-06-29 19:15:40 -07:00
Vevek Venkatesan
e28544d9ee qcacld-3.0: initialize peer hang_data in recovery_notifier_cb
Initialize peer_hang_data in  ol_peer_recovery_notifier_cb.

Change-Id: I04d819ba9048b1877dadd4d0678424f2e6fa5b1a
CRs-Fixed: 2719727
2020-06-29 19:15:36 -07:00
nshrivas
259db3057e Release 5.2.0.192A
Release 5.2.0.192A

Change-Id: I81c565e07aba9e4a43943df37f87611b80f31f2f
CRs-Fixed: 774533
2020-06-29 07:38:07 -07:00
Mohammed Siddiq
335ba9e938 qcacld-3.0: Add code to support modularizing ICNSS ICNSS2 and CNSS2
Add code to support modularizing ICNSS, ICNSS2 and CNSS2.

Change-Id: I696715592f6000f2a64f8940f324b699acd5fcf1
CRs-fixed: 2685412
2020-06-29 07:38:04 -07:00
nshrivas
b3188a8c78 Release 5.2.0.192
Release 5.2.0.192

Change-Id: I7280bfdd8279458b073a295b3f6f0cdfabc6b528
CRs-Fixed: 774533
2020-06-29 02:38:34 -07:00
Arun Kumar Khandavalli
793ac05021 qcacld-3.0: Add cfgops implementation for bitrate mask
Add the cfg80211 ops for the bitrate mask.

Previously the bitrate mask is added via the iwpriv

iwpriv wlan0 set11NRates 0x8f --> for MCS7

will be configured via below through iw

iw dev wlan0 set bitrates ht-mcs-2.4  7

Change-Id: I3415fa3f89e2af3fb3bae4c9b56c57af7da2382f
CRs-Fixed: 2699468
2020-06-29 02:38:34 -07:00
Arun Kumar Khandavalli
3d15529d3e qcacld-3.0: Defer recovery cleanup to shutdown
As part of the firmware down notification if the indication comes
in the non-interrupt context the driver flushes the idle timeout
work and purges the shutdown down notifier.

If the the idletimeout is already running, as part of the idletimeout
work the platform,mhi irq's will also be freed, if the firmware crashes
and enters the RDDM mode during this time, platform driver will notify
the host through the uevent. Since free_irq waits for all the pending
interrupts to be serviced resulting in the deadlock.

Dont flush the work for the pci bus so the interrupt could
be completed and free irq could also be unblocked.

Change-Id: I4e106ff774fa90544ba97737a87682f42f9288df
CRs-Fixed: 2720348
2020-06-28 14:15:05 +05:30
nshrivas
164a1c630f Release 5.2.0.191Z
Release 5.2.0.191Z

Change-Id: I1610190511c44a203373cb0c6e1c60c6fb0b33c0
CRs-Fixed: 774533
2020-06-27 22:45:34 -07:00
Amar Singhal
ea151c9219 qcacld-3.0: Change 6 ghz channel frequencies
Add orphan channel with center frequency 5935 to 6ghz channels. Also shift
center frequency of other channels by 10 mhz. Also change the maximum
possible frequency of 5 ghz channels.

Change-Id: Ic86fb8ded10b32871a9edf532bbc4e0889efb543
CRs-Fixed: 2686624
2020-06-27 22:45:34 -07:00
nshrivas
bb32e201b2 Release 5.2.0.191Y
Release 5.2.0.191Y

Change-Id: I1a7373b6cc28ee8736c43f20c1749e334efeeae4
CRs-Fixed: 774533
2020-06-27 15:16:28 -07:00
Srinivas Girigowda
f4fbeca7d7 qcacld-3.0: Remove get_/set_ prefix from sysfs attribute name
sysfs attribute name should not have get_/set_ prefit, it should
just be attribute name.
read operation is a get and a write operation is a set.

Change-Id: I3b87424d1c5cadd836e24f39c20a8bd9ed9ef45e
CRs-Fixed: 2720000
2020-06-27 15:16:28 -07:00
nshrivas
2e78940aef Release 5.2.0.191X
Release 5.2.0.191X

Change-Id: Ibe955261923eede4c1f8d564b2c0712531633aa3
CRs-Fixed: 774533
2020-06-27 11:25:44 -07:00
Srinivas Girigowda
1175d34eaf qcacld-3.0: Return the number of bytes placed in to the buffer
When the sysfs file 'gtx_bw_mask' is read, DEVICE_ATTR 'show' callback
function is called and currently its returning 'ret' which is 0 and hence
the content of sysfs file "/sys/class/net/wlanxx/gtx_bw_mask" is empty.

Hence the fix is 'show' callback function should return the number of
bytes placed in to the buffer.

Change-Id: I44b7eda40cd2963b4be52f97b513badc48244120
CRs-Fixed: 2720141
2020-06-27 11:25:44 -07:00
nshrivas
15e711ae37 Release 5.2.0.191W
Release 5.2.0.191W

Change-Id: I3578761ed3cedd585116e068f34de3053a39b562
CRs-Fixed: 774533
2020-06-27 06:18:14 -07:00
gaurank kathpalia
6ebfc3c01b qcacld-3.0: Add AP to BLM reject list
Currently the driver calls the BLM API
to add the BSSID to the reject list if
STA kickout event comes from the FW.
Now since the event comes in interrupt
context and BLM takes a mutex lock, it
is not allowed.

Fix is to change the context
and call the BLM API from lim del sta
which would execute in scheduler
thread.

Change-Id: I3c2726ea152eeeee6ae30d80388aedac631f6c39
CRs-Fixed: 2716192
2020-06-27 06:18:10 -07:00
Lincoln Tran
2d357482b9 qcacld-3.0: Update to match scheduler_msg callback
This change corresponds to the callback updates in scheduler_msg.
Changes include:
	1. Update hdd_data_stall_process_event and its caller
	2. Update umac_stop logic to allocate buffer for callback
	   and update its caller
	3. Register beacon reporting callback as a direct function
	   call without message posting.

Change-Id: Ic07a6102ea75d8bccb57a800e9670750e98356ce
CRs-fixed: 2718977
2020-06-27 06:18:07 -07:00
Pragaspathi Thilagaraj
3bbb4610b6 qcacld-3.0: Introduce new ini for dual sta roaming
Add new ini enable_dual_sta_roam_offload to enable/disable dual
sta romaing feature. Enabling this ini will allow firmware to
roam on both the vdev if firmware supports dual sta roaming and
the hw is dbs capable.

This ini will be checked in the dual sta roaming offload state
machine to enable roaming on both the STA or to fallback to the
current implementation where first connected sta will have rso
enabled.

Change-Id: I04f141ac31e0f168b6f19fe878bca219a36cfae7
CRs-Fixed: 2709036
2020-06-27 06:18:03 -07:00
nshrivas
1f299f5e53 Release 5.2.0.191V
Release 5.2.0.191V

Change-Id: I7c140911b0d4f9910cab45cd1136aa0f0bac6ec5
CRs-Fixed: 774533
2020-06-27 03:57:33 -07:00
Srinivas Girigowda
5e5cf5996f qcacld-3.0: Replace obsolete WMA_LOGA() with wma_alert()
Replace obsolete WMA_LOGA() macro with wma_alert().
In some error cases, usage of wma_alert() is incorrect and
hence use wma_err().

Change-Id: Ife02033c4f981c31f5e6b165d5e8961e2ce1f9d8
CRs-Fixed: 2716176
2020-06-27 03:57:33 -07:00
nshrivas
a97ff00ab9 Release 5.2.0.191U
Release 5.2.0.191U

Change-Id: I0b8e32d581fcaac51bce6136b3780134fa672c2e
CRs-Fixed: 774533
2020-06-26 22:48:26 -07:00
Srikanth Marepalli
89a9eb0370 qcacld-3.0: Fix Invalid EAPOL-Key MIC packet drop issue
After the roaming is offloaded to Firmware when the GTK rekey
happens in Host proper KCK should be used to verify MIC.
In WPA2 GTK rekey is offloaded to Firmware but not in WPA3 case.
In WPA3 SuiteB Firmware sends KCK in Key material extended TLV
instead of Key material TLV in Roam sync indication event, as the
Keys length is more in WPA3 SuiteB. And the Key material ext TLV
is parsed improperly in driver and the same is sent in roam+auth
event to wpa_supplicant. This wrong KCK was used to verify MIC
received in EAPOL.
This fix is to properly parse the KCK and KEK from Key buffer.

Change-Id: I57658b918bb41de2b5d2476d89b026d1f5982337
CRs-Fixed: 2713711
2020-06-26 22:48:26 -07:00
nshrivas
8cc18408f8 Release 5.2.0.191T
Release 5.2.0.191T

Change-Id: I09f817c4eedaab282fbd63e32f4906b165ae381e
CRs-Fixed: 774533
2020-06-26 20:18:32 -07:00
Alan Chen
dfcef91465 qcacld-3.0: Add handler for new optimized_power_management attribute
Add handler for the newly created optimized_power_management attribute.

Change-Id: I09d0a328f8685484e53e17329ffe40fbbcdd568a
CRs-Fixed: 2715055
2020-06-26 20:18:32 -07:00
nshrivas
9f0a752f83 Release 5.2.0.191S
Release 5.2.0.191S

Change-Id: Ia821b4f07f9b28b823d1b1d2d817db568a1a14c9
CRs-Fixed: 774533
2020-06-26 16:48:41 -07:00
nshrivas
e93eb35325 Release 5.2.0.191R
Release 5.2.0.191R

Change-Id: I849c0df14af0f8050536324cfb9d76b7f229cb17
CRs-Fixed: 774533
2020-06-26 11:08:47 -07:00
gaurank kathpalia
67b87cbde5 qcacld-3.0: Move BSS scoring logic to connection manager
Move bss scoring logic to connection manager.

Change-Id: Ie7639853dec303133705c3394bf0577670000c21
CRs-Fixed: 2707108
2020-06-26 11:08:47 -07:00
nshrivas
f2aed55e40 Release 5.2.0.191Q
Release 5.2.0.191Q

Change-Id: Iddb56403ffba636a6160a107d429cfa52a62f482
CRs-Fixed: 774533
2020-06-26 05:37:31 -07:00
Rachit Kankane
46554fb229 qcacld-3.0: Send only PCL to supplicant
For non-DBS and no Interband MCC supported targets, send only
PCL to supplicant when number of connections are more then 0.

Change-Id: I12b1d483de55cca2d70d17d7114bdbde72c59826
CRs-Fixed: 2711485
2020-06-26 05:37:30 -07:00
Rachit Kankane
24542c328e qcacld-3.0: Set default hw mode for ready ext
Update default HW mode after selecting default hw mode
while handling service ready ext event

Change-Id: I022644554df0824d760304fe99a86295b20660b1
CRs-Fixed: 2711482
2020-06-26 05:37:28 -07:00
Rachit Kankane
b8b4431052 qcacld-3.0: Check interband MCC for STA CSA
For single-MAC and no-interband MCC scenario, don't switch
channel for STA if the new channel is creating interband-MCC
concurrent combination.

Change-Id: I6886d58dfe8a8845bcded90ab3422b5f79abbe4a
CRs-Fixed: 2711469
2020-06-26 05:37:25 -07:00
nshrivas
a20d8c02af Release 5.2.0.191P
Release 5.2.0.191P

Change-Id: I299df2eba3686cf82dc26efca29f78ad998de2a7
CRs-Fixed: 774533
2020-06-25 21:27:07 -07:00
Srinivas Girigowda
589c525f8b qcacld-3.0: Send the function return status up the call stack
hdd_wlan_clear_stats() invokes the function cdp_clear_stats(),
hdd_wlan_clear_stats() always returns 0 instead of returning the
callee return status.

Fix is to return the callee function return status up the call stack.

Change-Id: I591fb743d000463ffebd4207450de82ab7463a9c
CRs-Fixed: 2719088
2020-06-25 21:27:03 -07:00
Srinivas Girigowda
68c954548f qcacld-3.0: Replace obsolete WMA_LOGW() with wma_warn()
Replace obsolete WMA_LOGW() macro with wma_warn().

Change-Id: I4257ccf22bfa45465ffbd44a7ef5b5712ebb754f
CRs-Fixed: 2718987
2020-06-25 21:26:58 -07:00
nshrivas
8141ec5e92 Release 5.2.0.191O
Release 5.2.0.191O

Change-Id: I21abdf176e19f6587b54cc2c2ccce062b1882eac
CRs-Fixed: 774533
2020-06-25 18:13:49 -07:00
nshrivas
14aa30650e Release 5.2.0.191N
Release 5.2.0.191N

Change-Id: Id25e9303b2513eb0c6bf06d07a7198b280d0e221
CRs-Fixed: 774533
2020-06-25 16:46:48 -07:00
Yeshwanth Sriram Guntuka
0c04652083 qcacld-3.0: Add sysfs entry to dynamically control GRO
Add dp_aggregation sysfs entry under the wifi sysfs
directory to dynamically control aggregation in the
rx direction.

Change-Id: Ic7b13806f5fbd19fe5c56cabdf71d032b730448c
CRs-Fixed: 2718131
2020-06-25 16:46:47 -07:00
Yeshwanth Sriram Guntuka
cec526afda qcacld-3.0: Add support to dynamically control fisa aggregation
Add support to dynamically control fisa aggregation in
the rx direction based on the dp_aggregation sysfs entry.

Change-Id: I677b8b5f05e6cd849671a058b5e6ef07fc14a969
CRs-Fixed: 2718132
2020-06-25 16:46:43 -07:00
nshrivas
fbd6d50ad2 Release 5.2.0.191M
Release 5.2.0.191M

Change-Id: If265eb2b6e9064a76caa59bbfa937de2257a7bb4
CRs-Fixed: 774533
2020-06-25 15:08:00 -07:00
Srikanth Marepalli
514a288ccd qcacld-3.0: Zero local struct memory
Zero local vairable memory before use.

Change-Id: I351239f56f81195268e892f8d3de2688d9ef01ec
CRs-Fixed: 2408599
2020-06-25 15:08:00 -07:00
nshrivas
8e270ded64 Release 5.2.0.191L
Release 5.2.0.191L

Change-Id: Ibc7b6ee1f274c317a0ebc5d50bc194b023d80fa7
CRs-Fixed: 774533
2020-06-25 13:17:47 -07:00
Nisha Menon
caaec341cb qcacld-3.0: Check for null wlan kobject and return if true
Fix for null object dereference. Check for null wlan
kobject and return if true.

Change-Id: I90477335c81d44b9cc2762dd4060d9447a0bdb66
CRs-Fixed: 2717466
2020-06-25 13:17:43 -07:00
nshrivas
b33f164356 Release 5.2.0.191K
Release 5.2.0.191K

Change-Id: I1e19d9c9d7e7a49c159ce6dc733aa680ccc7de74
CRs-Fixed: 774533
2020-06-25 03:49:49 -07:00
Sandeep Singh
bab49091ef qcacld-3.0: Add ipci apis to send data over QMI
Add PLD layer ipci bus apis to send driver data
to wlan fw over QMI.

Change-Id: I55d4cb337749492cc767da4d024918bcbdd98301
CRs-Fixed: 2714312
2020-06-25 03:49:48 -07:00
nshrivas
4946096a89 Release 5.2.0.191J
Release 5.2.0.191J

Change-Id: I4b3d9ce20c14abb81b8c79e4af7987b45f94b1ce
CRs-Fixed: 774533
2020-06-24 11:42:55 -07:00
bings
27f2d2ede8 qcacld-3.0: Set correct wep key for sap mode
When wep_default_key is not set as 0 in hostapd.conf, wep key with
key id 0 should not be sent to FW when new station is connected.
Wep key with key id specified in hostapd.conf should be sent to FW.

To fix this issue, wep default key id should be saved for sap mode.
When reference station is connected, set default key id related key
to FW with TX_USAGE flag.

Change-Id: Ic13e311593154911ee21db5172188c7037f429a3
CRs-Fixed: 2700441
2020-06-24 11:42:55 -07:00
Yu Tian
8b371301f4 qcacld-3.0: refine pktlog enable logic in KPI test
PKTLOG can be enabled from both 802.11 and WEXT, customer
integrates pktlog ctrl in script and is toggled frequently.
This leads host pktlog status variable and FW status out of
sync. Host bus vote logic need disable pktlog when TPUT is
high, based on host status. At last, it will not take effect,
KPI continues dropped by PKTLOG.

Change-Id: Ifad7b53060b6046361621bf927c99b6b66e0c278
CRs-Fixed: 2715362
2020-06-24 11:42:51 -07:00
nshrivas
ee0a4c12c9 Release 5.2.0.191I
Release 5.2.0.191I

Change-Id: I46107d89fad0dd23bd63ceb4476a87d71b990dea
CRs-Fixed: 774533
2020-06-24 03:34:34 -07:00
nshrivas
4245b5a639 Release 5.2.0.191H
Release 5.2.0.191H

Change-Id: Ide5f6b9b86f44fbb85b8b842e4d53f0fb0a132ce
CRs-Fixed: 774533
2020-06-24 00:15:22 -07:00
Jinwei Chen
678c4d4648 qcacld-3.0: degrade log level for FISA debug
Currently when enable FISA debug, the default log level is
QDF_TRACE_LEVEL_ERROR which will output excessive logging
to kernel console, back pressure for RX might happen.

Degrade log level to QDF_TRACE_LEVEL_INFO_HIGH.

Change-Id: I5e910a6fc12d29179d3737f0c1d6c61b1383110b
CRs-Fixed: 2716688
2020-06-24 00:15:22 -07:00
nshrivas
f85259d999 Release 5.2.0.191G
Release 5.2.0.191G

Change-Id: I370b4827b552d714da6d47824fc163b356bf5232
CRs-Fixed: 774533
2020-06-23 20:03:22 -07:00
gaurank kathpalia
ce6aed0852 qcacld-3.0: Add ini to enable/disable dynamic cfg
Currently the driver supports the dynamic
configuration of nss and chain to FW for
VDEV if the FW advertises the capability
of supporting the same. However there is
no support to overide this.

Fix is to have an ini to enable/disable
this feature of configuring the dynamic
nss and chains to FW.

Change-Id: I0b84bb5aec53966a43a00c11d4aba3863414005c
CRs-Fixed: 2708303
2020-06-23 20:03:22 -07:00
nshrivas
b77fd72e3f Release 5.2.0.191F
Release 5.2.0.191F

Change-Id: Ibee5fb3afad8450a43f069348f2832229d4fba3b
CRs-Fixed: 774533
2020-06-23 15:44:10 -07:00
Srinivas Girigowda
9e0b3dbb70 qcacld-3.0: Replace obsolete WMA_LOGP() with wma_alert()
Replace obsolete WMA_LOGP() macro with wma_alert().

Change-Id: I7e9d8048789c8deee6c3bfab72d7f9b591fca9b9
CRs-Fixed: 2716176
2020-06-23 15:44:09 -07:00
Jianmin Zhu
e6c35ab600 qcacld-3.0: Replace channel with freq for 6G
Replace WLAN_REG_IS_24GHZ_CH with WLAN_REG_IS_24GHZ_CH_FREQ.
in TDLS.
Change-Id: I6c0ee6ec3a2d24cc0c826f93527d4655925cc6cd
CRs-Fixed: 2717000
2020-06-23 15:44:06 -07:00
nshrivas
511d6fac7e Release 5.2.0.191E
Release 5.2.0.191E

Change-Id: Iec94aecf6c781f67ea98a86345aa94d797a896dd
CRs-Fixed: 774533
2020-06-23 11:23:42 -07:00
Pragaspathi Thilagaraj
bbe3ab0934 qcacld-3.0: Set roam invoke in progress to false on HO failure
When roam invoke fails during handoff, firmware sends HO failure
indication to host. Here the roam_invoke_in_progress flag is not
cleared.

Clear the roam_invoke_in_progress flag when fastreassoc fails
due to handoff failure at firmware.

Change-Id: Ifc0ade939980138f64013299a9ea4e97468ce00f
CRs-Fixed: 2715281
2020-06-23 06:26:19 -07:00
nshrivas
fff75f60cc Release 5.2.0.191D
Release 5.2.0.191D

Change-Id: If48eae39185b2e4fb121b3ab7674d67fe436fac3
CRs-Fixed: 774533
2020-06-23 04:01:03 -07:00
Jianmin Zhu
faf92193d4 qcacld-3.0: Replace channel with frequency for 6G
Replace wlan_reg_is_24ghz_ch with wlan_reg_is_24ghz_ch_freq.
Replace channel with frequency in cds_get_vendor_reg_flags.

Change-Id: I72ffc5550e45be1edf460f9619fead8889cf2967
CRs-Fixed: 2714723
2020-06-23 04:01:03 -07:00
Ashish Kumar Dhanotiya
1130e58a67 qcacld-3.0: Remove validate context check in LL stats get NB ops
As a part of LL stats get NB operation, the driver sends the LL stats
req to the FW, waits for the response and sends back the stats in a
synchronous reply. All this happens as a part of one single NB
operation.

Within this operation, if an rmmod comes, there can be a possiblity
of a memory leak. In function hdd_link_layer_process_radio_stats, there
is a check to validate the hdd_context and return if the driver is
undergoing load/unload. As a part of the premature return, some stats
are not returned to user space..

To resolve this, remove the validity check from the NB operation. The
operation itself comes with DSC synchronization and ensures that the
hdd_context remains valid atleast until the operation is complete. Thus
there is no need for the redundant check of validity of hdd_context.

Change-Id: I20cc85b715330a28bc077ca47a1721343bba7214
CRs-Fixed: 2714136
2020-06-23 04:01:00 -07:00
nshrivas
f911f58d87 Release 5.2.0.191C
Release 5.2.0.191C

Change-Id: Ie73d9254c5ddb06881fa5f82d14477bc0bf2c120
CRs-Fixed: 774533
2020-06-23 00:27:55 -07:00
Yu Wang
7bb505608d qcacld-3.0: fix a potential assignment truncation issue
Truncation will happen when assining an association id over 256
to the u8 'aid' of struct wma_txrx_node.
To avoid such issue, change the type of 'aid' in struct wma_txrx_node,
from u8 to u16.

CRs-Fixed: 2713427
Change-Id: If360c017700aadaf9f2d3216601a011704f68180
2020-06-23 00:27:54 -07:00
nshrivas
77e6603717 Release 5.2.0.191B
Release 5.2.0.191B

Change-Id: Ic94216da8a04018f7eac86a7a104a28fad6b2fea
CRs-Fixed: 774533
2020-06-22 22:06:12 -07:00
Jianmin Zhu
477cb83408 qcacld-3.0: Fix LFR2 failed for roam scan mode 0
Regression of Change-Id:
I1de3f71ca96de9f464d5d33b0271f99c55cff535
make LFR2 roam scan mode config
WMI_ROAM_SCAN_MODE_RSSI_CHANGE depend on roam_force_rssi_trigger
which is uninitialzed when LFR3 disabled, so roam scan mode 0
is sent to F/W wrongly in WMI_ROAM_SCAN_MODE when LFR2 enabled.

Fix: Initialize roam_force_rssi_trigger in roam offload scan
request with ini config for LFR2 too.

Change-Id: Ifd65119a87a6a348a952a4eec70a336015192d43
CRs-Fixed: 2704513
2020-06-22 22:06:12 -07:00
nshrivas
24ff03400c Release 5.2.0.191A
Release 5.2.0.191A

Change-Id: Ib6e23bb510febcc07b4e1e0f0e976dc239218a93
CRs-Fixed: 774533
2020-06-22 15:55:17 -07:00
nshrivas
0c0f59b895 Release 5.2.0.191
Release 5.2.0.191

Change-Id: I66aac93cea64e05f337f4b0241988ebf190613f0
CRs-Fixed: 774533
2020-06-22 12:37:30 -07:00
Arun Kumar Khandavalli
b6404b1bbb qcacld-3-0: Have bus specific recovery ini checks to get imp info
Presently, in the host initiated recovery the handler checks whether
the support for recovery is enabled via the ini or triggers the panic.
Whenever the panic is triggered the irq's will be disabled,
this results in some targets not able to collect the important
MHI, PCI information on what caused the issue to root cause the issue.

So, for different targets check the ini at different places.

Change-Id: I0d0e322610abd9f8ceaba4fe9688cdd099c381e5
CRs-Fixed: 2715603
2020-06-22 12:37:30 -07:00
nshrivas
a2fcc4110b Release 5.2.0.190Z
Release 5.2.0.190Z

Change-Id: Ic984abb5c9f334c4130c688f114516f7f9968db5
CRs-Fixed: 774533
2020-06-22 06:14:42 -07:00
Surabhi Vishnoi
07fd1a8fe9 qcacld-3.0: Add support to handle CFR vendor command for adrastea
Adrastea target expects different attributes in vendor command
QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG. So add an api to parse
the vendor command  QCA_NL80211_VENDOR_SUBCMD_PEER_CFR_CAPTURE_CFG
which will be called based on CFR version type.

Change-Id: I965b3cd6b93a288f1074ea0c09306cfff9f6ced0
CRs-Fixed: 2687075
2020-06-22 06:14:42 -07:00
nshrivas
361476e01b Release 5.2.0.190Y
Release 5.2.0.190Y

Change-Id: Idaf53412cb1163a3587a6a92e2e3bb90101a58dd
CRs-Fixed: 774533
2020-06-22 01:37:05 -07:00
Ashish Kumar Dhanotiya
a747d4cdb8 qcacld-3.0: Handle multiple oem data events for single command
FW can send multiple events for a single oem data command
based on the size of the data to be send and the available
buffer size.
Currenlty sme callback in the oem data event handler
wma_oem_event_handler is set to null after it process the
event because of which next events for the same command
are not processed.

To address this issue do not make the sme callback as null
in the wma oem event handler.

CRs-Fixed: 2714680
Change-Id: Ia435a5bee7ed4d2e16313698052033f8b45a5873
2020-06-22 01:37:05 -07:00
nshrivas
7bce548cae Release 5.2.0.190X
Release 5.2.0.190X

Change-Id: I2ff5e2296b6f70081affb03526732e35eec4b26b
CRs-Fixed: 774533
2020-06-21 23:36:52 -07:00
bings
3a251813a2 qcacld-3.0: Set group key to FW when sap starts
If any group key is gotten before sap bss starts, it should be sent to FW
when sap bss starts. There should be no valid unicast key before sap bss
starts, so no need to set the key to FW as unicast key again.

All the saved group key should be set to FW when sap starts.

Change-Id: I8a36415b896881b2e7c0ab72b9679eb1daa86e80
CRs-Fixed: 2705593
2020-06-21 17:15:55 -07:00
nshrivas
a84c07924b Release 5.2.0.190W
Release 5.2.0.190W

Change-Id: Id62105d04372abf2bbc067ce607821a040b40741
CRs-Fixed: 774533
2020-06-20 17:53:15 -07:00
Utkarsh Bhatnagar
38744f2fa8 qcacld-3.0: Check LDPC based on peer capabilities
Set LDPC if AP sets it in either assoc response or beacon
along with one of the following conditions:

1) nss should be greater than 4
2) channel width should be more than 20 Mhz
3) MCS 10 and 11 bit must be set

Change-Id: If23b119b3bf2d07282e9fc9a3bfbb6baa0887737
CRs-Fixed: 2708333
2020-06-20 17:53:14 -07:00
nshrivas
d9acbe021a Release 5.2.0.190V
Release 5.2.0.190V

Change-Id: Ibc41d456112a212f179ac9d02120f62b7e46424f
CRs-Fixed: 774533
2020-06-19 19:45:11 -07:00
Bapiraju Alla
1e8daa1ec3 qcacld-3.0: Set 40MHz capability in HE 2G PHY
Set IEEE80211_HE_PHY_CAP0_CHANNEL_WIDTH_SET_40MHZ_IN_2G flag in wiphy
2.4GHz capabilities

Change-Id: Ia142c4c307ea2f7edb9fac018d5be62ca93a3a11
CRs-Fixed: 2693444
2020-06-19 19:45:11 -07:00
Alok Kumar
0cbee2ed1f qcacld-3.0: Register hdd_gro_rx_dp_thread cb for GRO on QCA6750
For Lithium target, hdd_gro_rx_dp_thread callback is registered
to handle GRO.
Currently this callback is not registered for target qca6750.

Register hdd_gro_rx_dp_thread callback for target QCA6750 to
handle GRO.

Change-Id: I2991a6b2f6a2a614f4bb7f36bac6ec4909c4d251
CRs-Fixed: 2712504
2020-06-19 19:45:07 -07:00
Srinivas Girigowda
7678422000 qcacld-3.0: Replace obsolete WMA_LOGD() with wma_debug()
Replace obsolete WMA_LOGD() macro with wma_debug().

Change-Id: I41534dd1cc0321d0e5a77a8ba1f4fbe07ad7e6f3
CRs-Fixed: 2712788
2020-06-19 19:45:04 -07:00
Srinivas Girigowda
ba519cafa2 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_utils.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_utils.c

Change-Id: I917b234c6fef83e93d4ef7f8a27b9b604c3045ad
CRs-Fixed: 2712788
2020-06-19 19:45:01 -07:00
Srinivas Girigowda
3fab023fe0 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_power.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_power.c

Change-Id: I49c449af9cfba429a9709834b5b83db8a84a93fa
CRs-Fixed: 2712788
2020-06-19 19:44:57 -07:00
Srinivas Girigowda
2e20c75e42 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_main.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_main.c

Change-Id: Ia144748a2b6fc9e82cf9896f81586cd9d7147e09
CRs-Fixed: 2712788
2020-06-19 19:44:53 -07:00
Srinivas Girigowda
13d07aa54b qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_he.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_he.c

Change-Id: Ia448ade9d191ee5fc3db9a9c9a2cedd8f4f39757
CRs-Fixed: 2712788
2020-06-19 19:44:50 -07:00
Srinivas Girigowda
3827655105 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_features.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_features.c

Change-Id: I4482617c1bd564357d90df60cc858b3c2d270ef4
CRs-Fixed: 2712788
2020-06-19 19:44:46 -07:00
Srinivas Girigowda
17baebfba4 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_dev_if.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_dev_if.c

Change-Id: I3c7ac380e85e697d53f2196bb8a5d4da612fdae7
CRs-Fixed: 2712788
2020-06-19 19:44:43 -07:00
Srinivas Girigowda
45bb1adecf qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_data.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_data.c

Change-Id: Ia54e16b313dddae76d313b6abe0d579f9912bd11
CRs-Fixed: 2712788
2020-06-19 19:44:39 -07:00
Srinivas Girigowda
490a4e8704 qcacld-3.0: Replace WMA_LOGD() with wma_debug() in wma_scan_roam.c
Replace obsolete WMA_LOGD() macro with wma_debug() in wma_scan_roam.c

Change-Id: I243ebfa3941738ebc251858123e90687b9a77c86
CRs-Fixed: 2712788
2020-06-19 19:44:34 -07:00
nshrivas
e409dc39ed Release 5.2.0.190U
Release 5.2.0.190U

Change-Id: I4974544d44874c95daaba6fd6156374b6a6aa00b
CRs-Fixed: 774533
2020-06-18 23:21:56 -07:00
gaurank kathpalia
015b76d0c7 qcacld-3.0: Reset crypto params on open mode connect request
In case of open mode the crypto params are not updated and thus
older params values are maintained. This can lead to failure
in open mode connect.

Thus Reset crypto params on open mode connect request

Change-Id: Ia986f1b0d7b29410d32090be3e9bfb9db96c6c11
CRs-Fixed: 2713346
2020-06-18 23:21:56 -07:00
Jianmin Zhu
61409803d7 qcacld-3.0: Avoid Rome mgmt nbuf double unmap during SSR
Rome supports mgmt Tx via HTT interface, not via WMI.

When mgmt frame is sent, 2 tx desc is allocated:
mgmt_txrx_desc is allocated in wlan_mgmt_txrx_mgmt_frame_tx,
ol_tx_desc is allocated in ol_txrx_mgmt_send_ext.
They point to same net buffer.
net buffer is mapped in htt_tx_desc_init.

When SSR during Rome STA connected, deauth frame is sent,
but no tx complete since firmware hung already.
Pending mgmt frames are unmapped and freed when destroy vdev.

hdd_reset_all_adapters->hdd_stop_adapter->hdd_vdev_destroy
->wma_handle_vdev_detach->wlan_mgmt_txrx_vdev_drain
->wma_mgmt_frame_fill_peer_cb
->mgmt_txrx_tx_completion_handler.

Don't need unmap and free net buffer of mgmt frames again during
data path clean up, just free ol_tx_desc.
hdd_wlan_stop_modules->cds_post_disable->cdp_pdev_pre_detach
->ol_txrx_pdev_pre_detach->ol_tx_free_descs_inuse.

Change-Id: I2fc658e833cf013bf7048c6bec90d9b247566444
CRs-Fixed: 2694854
2020-06-18 23:21:52 -07:00
nshrivas
883685660d Release 5.2.0.190T
Release 5.2.0.190T

Change-Id: I1470cf5b1c7be1e58e240235caf5c8ee0d1341af
CRs-Fixed: 774533
2020-06-18 21:19:14 -07:00
nshrivas
9dfbc354db Release 5.2.0.190S
Release 5.2.0.190S

Change-Id: I0683a51c8345afc9096110291bec2f2ef4bcba70
CRs-Fixed: 774533
2020-06-18 17:21:50 -07:00
Aditya Kodukula
007291fb8d qcacld-3.0: Add Kernel Version check for cfg80211_update_owe_info_event
As part of GKI kernel whitelisting effort, add kernel version check
for cfg80211_update_owe_info_event.

Change-Id: I06e4f42bbe6d032a816c61eea2e4cc415ebbdff4
CRs-Fixed: 2700291
2020-06-18 17:21:35 -07:00
nshrivas
c1444197eb Release 5.2.0.190R
Release 5.2.0.190R

Change-Id: Ic8e0f2d9fa8a422b9c20fe5ded3d85e175343c86
CRs-Fixed: 774533
2020-06-18 11:54:48 -07:00
Bapiraju Alla
d97145c971 qcacld-3.0: Add support for cfg80211 op get_channel
Add support for get_channel callback in cfg80211_ops

Change-Id: I4d7f91bb1f6edf4a9f6d42e4efa470a012231186
CRs-Fixed: 2702329
2020-06-18 11:54:48 -07:00
Nirav Shah
10c77d2379 qcacld-3.0: Check for max allowed STA vdevs in change interface API
In FW CFG_TGT_DEFAULT_MAX_STA_VDEVS considers total no of
STA and P2P-CLI vdevs. Check CFG_TGT_DEFAULT_MAX_STA_VDEVS
in change interface APIs for P2P CLI case.

Change-Id: I195d1cdda2d66f3187698254accf4bc3646d78c2
CRs-Fixed: 2701798
2020-06-18 11:54:44 -07:00
Zhaoyang Liu
7d713f4ae4 qcacld-3.0: Fix CSA process WBW IE bandwidth issue
During channel switch, firmware reports CSA offload event,
driver will process wbw IE and set phy mode into firmware.
Now driver only processes case that frequency segment0 above
current primary channel. So device will use bandwidth which
is mismatched with AP after channel switch. It will cause data
transaction failure. Change to support frequency segment0 below
primary channel.

Change-Id: Ie879ceb8eadbe92f6519886dc30fb2c065ddbc40
CRs-Fixed: 2684883
2020-06-18 11:54:40 -07:00
nshrivas
48ed8adac5 Release 5.2.0.190Q
Release 5.2.0.190Q

Change-Id: Ib359b257a71b9be3ca6624c56a86d6fe1591c4cc
CRs-Fixed: 774533
2020-06-18 03:43:53 -07:00
nshrivas
6562ea587c Release 5.2.0.190P
Release 5.2.0.190P

Change-Id: I35e563cca6d3804c3005857bceb1e9246b50ee5a
CRs-Fixed: 774533
2020-06-17 19:37:59 -07:00
Utkarsh Bhatnagar
3402879c05 qcacld-3.0: Correct condition to skip DFS channels
Currently the driver skips the DFS channels if
g_sta_sap_scc_on_dfs_chan = 2 which should not
happen as master mode is supported if this ini
is 2. Driver should only skip the DFS channels
if the ini value is 1.
Fix is to correct the condition for the same.

Change-Id: I9d6c2f2c42f9d9f4f1b5bd080b9cdc5c13e031f2
CRs-Fixed: 2700201
2020-06-17 19:37:59 -07:00
Bapiraju Alla
746366c3ee qcacld-3.0: Validate APF memory offset in APF offload vendor command
Currently, APF memory offset is sent to the firmware without validation.
This may cause out of bound memory access in the firmware.

To avoid this, validate apf memory offset with MAX_APF_MEMORY_LEN in
the driver.

Change-Id: I5657f570a820b73b9e07a6fb1ce54807156def24
CRs-Fixed: 2711515
2020-06-17 19:37:56 -07:00
nshrivas
7570e758de Release 5.2.0.190O
Release 5.2.0.190O

Change-Id: I6a1d9cf30986475c69468f5e8d1222ac4bb66a12
CRs-Fixed: 774533
2020-06-17 16:20:05 -07:00
Yu Ouyang
fe30ea50e7 qcacld-3.0: Fix error handling of the vdev destroy timeout
When vdev destroy event timeout, function wait_for_completion_timeout()
will return zero. Zero means completion event timeout. But our code uses
last status to check timeout or not timeout. SME will not be clean at
this case.

So, correct code to ensure sme can be clean.

Change-Id: I4c0366a9d0f89d374f0e6aa50e0aa32f67fac03e
CRs-Fixed: 2705855
2020-06-17 16:20:05 -07:00
Utkarsh Bhatnagar
1d5015befb qcacld-3.0: Initialize roam result and status
Initialize roam result and status in
csr_roam_process_results and
csr_roam_process_start_bss_success to
prevent use of uninitiazed variables.

Change-Id: I06b3026db4bc70b3631c9348101cc8ca691a8b26
CRs-Fixed: 2702076
2020-06-17 16:20:02 -07:00
nshrivas
713edccefb Release 5.2.0.190N
Release 5.2.0.190N

Change-Id: Ia12f78a1deeba1d4eda73d6193b8b9131598ed3e
CRs-Fixed: 774533
2020-06-17 12:14:51 -07:00
Mohit Khanna
8c40bf010d qcacld-3.0: Null-check context in hdd_set_netdev_flags
Add null check for 'hdd_ctx' and 'soc' before accessing them in
hdd_set_netdev_flags function.

Change-Id: I0fc115170943c402b522989d76b278ea1fbd4862
CRs-Fixed: 2706429
2020-06-17 12:14:51 -07:00
Ben Wang
55bcf005c8 qcacld-3.0: Validate adapter before using it
Validate adapter before using it.

Change-Id: I424c87813b26749748ded1e06176950a954ed935
CRs-Fixed: 2708885
2020-06-17 12:14:47 -07:00
nshrivas
b0ee46f93c Release 5.2.0.190M
Release 5.2.0.190M

Change-Id: I765aa5b6e19019b34060926ffb32069c5305d635
CRs-Fixed: 774533
2020-06-17 06:15:02 -07:00
Jinwei Chen
5b86a68395 qcacld-3.0: Do not skip GRO flush when T-put is low
For kernel 5.4, skip GRO flush when T-put is low  will cause
11g TCP RX not stable.

Do not skip GRO flush if T-put is low for kernel >= 5.4.

Change-Id: I89c29b64b9801d2a3c917d88cc31cb18296fd4d7
CRs-Fixed: 2697893
2020-06-17 06:14:57 -07:00
nshrivas
dad15b90e3 Release 5.2.0.190L
Release 5.2.0.190L

Change-Id: I84f2f4764946140cde584ca92eadf9184b40c7c7
CRs-Fixed: 774533
2020-06-16 12:20:10 -07:00
Mohit Khanna
0bb3f018bf qcacld-3.0: Add NAN TX checksum offload INI entry
Currently there is a single INI item tcp_udp_checksumoffload to enable
or disable this feature for all the adapters. In some cases, we want to
be able to enable this feature selectively for NAN mode.

Add nan_tcp_udp_checksumoffload ini item to enable or disable checksum
offload feature specifically for NAN mode. If
nan_tcp_udp_checksumoffload is 'true' and tcp_udp_checksumoffload is
false, hardware checksum offload will be enabled only for the NAN
adapter and not for other adapters.

CRs-Fixed: 2698342
Change-Id: I56319095e6229d77ddb5c790d0af9c6ba0267611
2020-06-16 12:20:10 -07:00
nshrivas
cdd88ebae9 Release 5.2.0.190K
Release 5.2.0.190K

Change-Id: Ieb1c73d29968cc480635f95351cb980c1154e514
CRs-Fixed: 774533
2020-06-16 10:23:42 -07:00
Min Liu
0bf96737c8 qcacld-3.0: Set Wi-Fi configurations - NSS
Add attributes in SET_WIFI_CONFIGURATION to dynamically
configure capabilities - NSS.

Change-Id: Ib8174443d6737bc1f6c2737397bd915064715461
CRs-Fixed: 2709121
2020-06-16 10:23:42 -07:00
nshrivas
f710f5ef89 Release 5.2.0.190J
Release 5.2.0.190J

Change-Id: Iaf925d24d3b161d9edba51f950563453b5c3b339
CRs-Fixed: 774533
2020-06-16 06:15:45 -07:00
Subrat Dash
706377360e qcacld-3.0: Parse device info nl attribute in the oem vendor cmd
Userspace uses enum qca_vendor_oem_device_type to indicate
device type as vdev or pdev in the oem data vendor nl command.

This attribute is set to 1 to indicate that the oem data command
is meant for pdev and it is 0 for vdev. The default is vdev when
this nl attribute is not present.

The host driver should update the pdev_id of the vdev and fill
the pdev_vdev_flag to 1 for pdev commands.

Change-Id: I8bdf436759e0935c52bb09c2865fcb4a7a5ee4fc
CRs-Fixed: 2693892
2020-06-16 06:15:45 -07:00
nshrivas
caa2bd2e72 Release 5.2.0.190I
Release 5.2.0.190I

Change-Id: If300a5c4b5c80f64b4fb82f1fae1c5ac029c898d
CRs-Fixed: 774533
2020-06-16 01:52:52 -07:00
Srinivas Dasari
dc72fffd2b qcacld-3.0: Deprecate command support for QCA_NL80211_VENDOR_SUBCMD_NAN
QCA_NL80211_VENDOR_SUBCMD_NAN_EXT is introduced to carry NAN
command data along with channel info. This channel info is needed
to enable DBS on DBS supported platforms. The command data is sent
to firmware as it on non-DBS platforms.
Userspace is expected to send NAN commands through
QCA_NL80211_VENDOR_SUBCMD_NAN_EXT if it's supported. It can send
QCA_NL80211_VENDOR_SUBCMD_NAN if QCA_NL80211_VENDOR_SUBCMD_NAN_EXT
is not supported, which is expected to happen on older
platforms(non-DBS).
So legacy NAN command QCA_NL80211_VENDOR_SUBCMD_NAN is not allowed
on DBS platforms, as the command is sent to firmware without
enabling DBS.
Event part of QCA_NL80211_VENDOR_SUBCMD_NAN is still intact as it
carries NAN events from firmware to userspace.

Change-Id: Ie1aaf9f7ea051009125c972de4f0de13942448fb
CRs-Fixed: 2699605
2020-06-16 01:52:52 -07:00
nshrivas
515ea41025 Release 5.2.0.190H
Release 5.2.0.190H

Change-Id: Ic8103a08963900c99982422f58bef2e5aef44808
CRs-Fixed: 774533
2020-06-15 21:52:20 -07:00
hqu
e2e9ea6d37 qcacld-3.0: Add support for 64-clients
Add support for 64-clients.

Change-Id: Ic97ebb83190b5061734832f6dc6dcdb6d0bdac2b
CRs-Fixed: 2625495
2020-06-15 21:52:20 -07:00
hqu
03c1b12671 qcacld-3.0: Add maximum sta number limitation for each pe_session
Currently use maxStation to create dph_hash_table for each
pe_session, actually maxStation is total allowed maximum
sta for all pe_session that gets from ini gSoftApMaxPeers
and firmware capability.

SIR_SAP_MAX_NUM_PEERS is maximum sta number for each pe_session
and can be configured from config file, add max_sta_of_pe_session
to limit maximum sta number for each pe_session, set
max_sta_of_pe_session as minimum value between maxStation and
SIR_SAP_MAX_NUM_PEERS.

Change-Id: Iaa01c91cd164c470b3f76bffc826ca5abdd4d0d3
CRs-Fixed: 2676484
2020-06-15 21:52:12 -07:00
nshrivas
653f2d1dbb Release 5.2.0.190G
Release 5.2.0.190G

Change-Id: I2849fc97819d06de8e9a4516674f312cf816657c
CRs-Fixed: 774533
2020-06-14 22:14:05 -07:00
Jinwei Chen
3f4590be9a qcacld-3.0: flush batched GRO_NORMAL packets
Kernel 5.4 has applied batched GRO_NORMAL packets processing
for all napi_gro_receive() users. this requires NAPI users to
call napi_complete_done() or napi_complete() at the end of every
polling to flush batched GRO_NORMAL packets.
However, by current wlan driver design, napi_gro_recevie()
is not happened in same NAPI polling context and done in another
thread context, it likely packets which have not been flushed from
napi->rx_list will get stall until next RX cycle.

Fix this by adding a manual flushing of the list right after
napi_gro_flush() call to mimic napi_complete() logics.

Change-Id: Id8c1b9360c380c9631c85f5e048ae2cd2798f65b
CRs-Fixed: 2673959
2020-06-14 22:14:05 -07:00
nshrivas
fb6b07815b Release 5.2.0.190F
Release 5.2.0.190F

Change-Id: If4fa8ac1af4c5269aa91e19cd11f9173b1830f46
CRs-Fixed: 774533
2020-06-13 03:23:38 -07:00
Rakesh Pillai
f316ead4db qcacld-3.0: Vote for high DDR bandwidth in FTM mode
In FTM mode, we are not voting for any DDR frequency,
which leads to uneven TX/RX duty cycle, since the DDR
frequency will entirely depends on any other subsytem's
vote.

Vote for VERY HIGH BW in FTM mode.

Change-Id: I7f85fb9889d9119c7224c9bcd9688327e78f15ff
CRs-Fixed: 2706143
2020-06-13 03:23:38 -07:00
nshrivas
6fe1bde368 Release 5.2.0.190E
Release 5.2.0.190E

Change-Id: I9795b1dd4ce1543e903c2ab43ab21294b2c729f6
CRs-Fixed: 774533
2020-06-12 23:33:21 -07:00
nshrivas
1c029227d1 Release 5.2.0.190D
Release 5.2.0.190D

Change-Id: I458db3c7bc57dcdf2005d07a6d25f8665b95c94d
CRs-Fixed: 774533
2020-06-12 21:28:16 -07:00
Jianmin Zhu
d8097322f0 qcacld-3.0: Add reference when access vdev
adapter->vdev should never be referenced directly, and instead
must be accessed only via hdd_objmgr_get_vdev() and
hdd_objmgr_put_vdev() so that proper reference counting is
enforced.

Change-Id: Ib3efc05426105494f13ada7efed6175f88c5d141
CRs-Fixed: 2708758
2020-06-12 21:28:15 -07:00
nshrivas
dfad1b6031 Release 5.2.0.190C
Release 5.2.0.190C

Change-Id: Ie5bb0272bb698391fa46e413378b251d5b0e5a8c
CRs-Fixed: 774533
2020-06-12 09:04:13 -07:00
Surabhi Vishnoi
040f58df32 qcacld-3.0: Compilation fixes when CONFIG_WLAN_CFR_ENABLE is set
For adrastea targets, enhanced CFR is not supported. When only
CONFIG_WLAN_CFR_ENABLE is set, some compilation errors are
observed as CONFIG_WLAN_ENH_CFR_ENABLE is not set true.

Fix these compilation errors when only CONFIG_WLAN_CFR_ENABLE
is set for targets which do not support enhanced CFR.

Change-Id: Ifafa3880757c5595e1cb2da45aae1c87d50a7aae
CRs-Fixed: 2706901
2020-06-12 09:04:11 -07:00
nshrivas
fd1cc0302e Release 5.2.0.190B
Release 5.2.0.190B

Change-Id: I9aaefb61ffdebe1ae1183385573ea18d67813932
CRs-Fixed: 774533
2020-06-12 01:04:08 -07:00
Sourav Mohapatra
8f28b9e42b qcacld-3.0: Check for invalid put_ref scenario for sta_info
Currently in the ref_count mechanism used for sta_info, the driver has
no checks to determine if there are any faulty ref counting instances.
In case multiple ref_put are done for a single take_ref, it can lead to
a memory corruption.

Add a sanity check in hdd_sta_info_put_ref that causes a device assert
in case the put_ref is called on a sta_info with already zero ref_count.

Change-Id: I0b502e1df4c37601b46cc727acc94a72a401e051
CRs-Fixed: 2707614
2020-06-12 01:04:08 -07:00
nshrivas
7066cf0560 Release 5.2.0.190A
Release 5.2.0.190A

Change-Id: I7903414ba20b1000f96c1455e2907efdc4eb85aa
CRs-Fixed: 774533
2020-06-11 05:30:53 -07:00
Min Liu
fde76d4e9c qcacld-3.0: Set Wi-Fi configurations - bandwidth configurations
Add attributes in SET(GET)_WIFI_CONFIGURATION to dynamically
configure capabilities - CHANNEL_WIDTH and DYNAMIC_BW.

Change-Id: I4d577f057e5d1b385ab7a6fadcb344dc30b85c4c
CRs-Fixed: 2694656
2020-06-11 05:30:53 -07:00
nshrivas
58347393f4 Release 5.2.0.190
Release 5.2.0.190

Change-Id: Ifa245908f2eee044dcea98323dac62d672a1c141
CRs-Fixed: 774533
2020-06-11 02:04:35 -07:00
Nisha Menon
46b0fb5f0c qcacld-3.0: Add node to sysfs to print wlan mem usage
The wlan_mem_stats node will print the DMA, SKB and heap
memory allocated in the wlan host driver. This is applicable
to perf and defconfig builds.
File path to new node is:
/sys/kernel/wifi/wlan/wlan_mem_stats

Change-Id: Ic05423d362de1ef07a3ecbdd6408a7226e2a3c2f
CRs-Fixed: 2680360
2020-06-11 02:04:35 -07:00
nshrivas
6d3dbec5df Release 5.2.0.189Z
Release 5.2.0.189Z

Change-Id: Ib875cdde7cdd1677d9d09900342a231d6ab5fa93
CRs-Fixed: 774533
2020-06-10 20:23:08 -07:00
Alan Chen
6ead5beaab qcacld-3.0: Add a wakelock and prevent suspend during idle shutdown
System suspend is occurring a few seconds before idle shutdown while
it was set to deinit state. Add a wakelock and prevent suspend during
idle shutdown.

Change-Id: I976bdece04857045e272c5c3e26db51fb63c51cf
CRs-Fixed: 2706275
2020-06-10 20:23:07 -07:00
Wu Gao
5e262a7c8b qcacld-3.0: Use min/max macro to update start/end range of 6ghz
Use MIN_6GHZ_CHANNEL to replace CHAN_ENUM_5945, MAX_6GHZ_CHANNEL to
replace CHAN_ENUM_7105, since min/max channel of 6ghz may be changed.

Change-Id: Ibb0aa4182162d956d632b271cbbfef5af07f918c
CRs-Fixed: 2706639
2020-06-10 20:23:04 -07:00
nshrivas
5d55b3cb4c Release 5.2.0.189Y
Release 5.2.0.189Y

Change-Id: I2e777b8ed05b708254285807b145408eb278089f
CRs-Fixed: 774533
2020-06-10 18:13:36 -07:00
Srinivas Dasari
662a62841c qcacld-3.0: Don't create wifi-aware0 interface if NAN is not supported
Currently, NAN discovery interface(wifi-aware0) is created if both
host and firmware support NAN separate vdev feature. But NAN
feature capability(gEnableNanSupport) is the master of these
capabilities. Don't create wifi-aware0 if gEnableNanSupport is
disabled.
Also, don't allow NAN iface creation for the kernels less
than 4.14 as NAN interface is allowed by kernel only from 4.14.

Change-Id: Iaf10974c373b2a77d2c24a78540910f78a3dc768
CRs-Fixed: 2706997
2020-06-10 18:13:36 -07:00
Saket Jha
160fab39e1 qcacld-3.0: Correct arguments for fisa rx flow setup
Due to recent changes, hal_rx_flow_setup_fse() should receive hal_soc as
argument during rx_flow setup.

Change-Id: Ic39f476b211417469e004d85cd03c6b868d97405
CRs-Fixed: 2706239
2020-06-10 18:13:33 -07:00
nshrivas
9f20215b52 Release 5.2.0.189X
Release 5.2.0.189X

Change-Id: I9a74974d324e17c1587eccdbaba9134fd3c842f5
CRs-Fixed: 774533
2020-06-10 11:53:25 -07:00
Abhinav Kumar
555d20fd3d qcacld-3.0: Fix invalid opclass error while processing BCN RPT
In case if AP's country code present as "US 0x4" in beacon report
request, it means AP wants us to use global opclass.

Fix is to allow driver to use global opclass AP's country code
present as "US 0x4" in beacon report.

Change-Id: I3f6c132803dc4c5a85aea95c5fc39ac7be670aee
CRs-fixed: 2706733
2020-06-10 11:53:25 -07:00
nshrivas
610272d619 Release 5.2.0.189W
Release 5.2.0.189W

Change-Id: I9d29b5a5a454b3d8c782ec51acfa858f505cce4b
CRs-Fixed: 774533
2020-06-10 07:26:02 -07:00
Mohammed Siddiq
c09b4e4631 qcacld-3.0: Add ipci apis for SOC wake and athdiag
Add PLD layer ipci bus apis for soc wake request,
wake release, athdiag read and athdiag write.

Change-Id: I966b4d47b6967615c11420d0b991ac175bf7c276
CRs-fixed: 2702459
2020-06-10 07:26:02 -07:00
Abhishek Ambure
9e3400ac77 qcacld-3.0: Add support to configure max ndi host supports
Introduce INI "ndi_max_support" to configure max number of ndi
interfaces host supports. Host configures max number of ndi
interfaces support in firmware using WMI_INIT_CMD.

Change-Id: I287b9f96b98103e67cf35d0c02488a28af731044
CRs-Fixed: 2701557
2020-06-10 07:25:54 -07:00
nshrivas
9b85558666 Release 5.2.0.189V
Release 5.2.0.189V

Change-Id: I1f5c8c21e4ea993f41bc77b56a4986974ad8f881
CRs-Fixed: 774533
2020-06-10 01:56:06 -07:00
Utkarsh Bhatnagar
3b117bb647 qcacld-3.0: Add pointer sanity check for mac context
Add pointer sanity check for mac context in wma_send_peer_assoc_req
as cds_get_context may return Null for mac context

Change-Id: I75a54d728f2c276a9aeeb1ee7d8ea46180540ac8
CRs-Fixed: 2706149
2020-06-10 01:56:06 -07:00
nshrivas
bce7da8dfa Release 5.2.0.189U
Release 5.2.0.189U

Change-Id: I49aaac7b1119fc2c1951c37cadb54a01ab5f3537
CRs-Fixed: 774533
2020-06-09 23:59:29 -07:00
Kiran Kumar Lokere
2c3a4ea4e9 qcacld-3.0: Fix the 6G band capability config to FW
Convert the 6GHz capability local struct value to raw 32-bit
value to before configure it to FW.

Change-Id: Ia9f7d7d35b0f481ad9ae7d15eec5ee198158da88
CRs-Fixed: 2696392
2020-06-09 23:59:29 -07:00
nshrivas
01762e9be8 Release 5.2.0.189T
Release 5.2.0.189T

Change-Id: Ieb730ee9fd17892c9fa163737351203f85dcf500
CRs-Fixed: 774533
2020-06-09 21:53:26 -07:00
Ashish Kumar Dhanotiya
0e86934fd2 qcacld-3.0: Add driver command to dump function call mapping
Add driver command support to dump all the function call
mapping which is cached in global buffer.

Change-Id: I03b2162ccda171005e6fa8a7bb09cbf9c4819421
CRs-Fixed: 2677976
2020-06-09 21:53:25 -07:00
nshrivas
3c8f4c40b5 Release 5.2.0.189S
Release 5.2.0.189S

Change-Id: If589975cade227843bec0cab53130c592ca53851
CRs-Fixed: 774533
2020-06-09 19:16:01 -07:00
Utkarsh Bhatnagar
4d345a3488 qcacld-3.0: Add pointer sanity check in wma_post_chan_switch_setup
Add pointer sanity check in wma_post_chan_switch_setup

Change-Id: I2972d033605895b0fe626593854798b112621eab
CRs-Fixed: 2706172
2020-06-09 19:16:01 -07:00
nshrivas
ca6015c303 Release 5.2.0.189R
Release 5.2.0.189R

Change-Id: I1b452943179b57f3430a93530213e99b5ae11b86
CRs-Fixed: 774533
2020-06-09 16:29:48 -07:00
Utkarsh Bhatnagar
e78f2a6224 qcacld-3.0: Add pointer sanity check in wma_pre_chan_switch_setup
Add pointer sanity check in wma_pre_chan_switch_setup

Change-Id: If7753f0e99993c3744b5c0d801284b4648a0fde8
CRs-Fixed: 2705037
2020-06-09 16:29:48 -07:00
Utkarsh Bhatnagar
7306d6ec05 qcacld-3.0: Add pointer sanity check for mac_phy_cap
Add pointer sanity check for mac_phy_cap in wma_update_hw_mode_list
as target_psoc_get_mac_phy_cap may return Null for mac_phy_cap

Change-Id: Id45b77fa4daf3df0680ee247355dbc87e0402dd9
CRs-Fixed: 2706156
2020-06-09 16:29:45 -07:00
nshrivas
7cd1daa826 Release 5.2.0.189Q
Release 5.2.0.189Q

Change-Id: I0e49dfacca301be0b21cc63683e4cec1f15bd1e2
CRs-Fixed: 774533
2020-06-09 14:30:39 -07:00
Ashish Kumar Dhanotiya
9f588185d9 qcacld-3.0: Add connect id for the connection manager
Add connect id in the policy manager for the newly designed
connection manager infrastructure.

Change-Id: Ib7bd08e5326ead04da88175636777bf5dd4e255b
CRs-FIxed: 2705700
2020-06-09 14:30:38 -07:00
Vulupala Shashank Reddy
0570165f4e qcacld-3.0: Update pktcapture support
Update pktcapture support for packet capture mode.

Change-Id: Id7281d57b7eb547027a999e9662e6ca3c612673d
CRs-Fixed: 2700679
2020-06-09 14:30:33 -07:00
nshrivas
940be6b36c Release 5.2.0.189P
Release 5.2.0.189P

Change-Id: I9275f25dbfb942a2b8500ef7973ac072967db229
CRs-Fixed: 774533
2020-06-09 06:28:56 -07:00
Rakesh Pillai
efb077864e qcacld-3.0: Add Null check for soc before accessing
Check if the soc pointer is not NULL, before we
try to derefernce this pointer.

Change-Id: Ife499e7617365278c4ac8fd41e2ce32d4e19fae9
CRs-Fixed: 2702127
2020-06-09 06:28:56 -07:00
nshrivas
fb96116daa Release 5.2.0.189O
Release 5.2.0.189O

Change-Id: Ia6cd58a1d816e41f8a323877dd45957188dfac3e
CRs-Fixed: 774533
2020-06-09 04:22:51 -07:00
Ashish Kumar Dhanotiya
2291ae2e2c qcacld-3.0: Add dealloc api to free memory allocated for ll_stats
Currently there is no dealloc api for ll_stats request to free
the memory allocated for the ll_stats request's priv structure
because of which memory is not freed from the request manager
infrastructure, instead host frees the memory in request api. with
this mechanism there is a race condition where if timeout occurs then
in the caller api memory is freed for the response list and after
processing the response list if the response callback comes then
memory is allocated and inserted in the response list which will
never be freed as the response list is already processed in the
caller api after the timeout.

Add a dealloc function for ll_stats request to free the memory with
The help of request manager infrastructure.

Change-Id: If91d777901d0c4c598a138b1439de7de024249a4
CRs-Fixed: 2703825
2020-06-09 04:22:50 -07:00
nshrivas
9710663965 Release 5.2.0.189N
Release 5.2.0.189N

Change-Id: I3a91e81605f828f24a6e4671fb28d47d67acb4f9
CRs-Fixed: 774533
2020-06-08 21:09:34 -07:00
Jinwei Chen
d6165e65cb qcacld-3.0: update FISA entry vdev if flow search failed
If FISA flow search is failing by HW, but same FISA flow is
already present in host FISA SW table, vdev will not be updated
accordingly, so RX frame might be dropped due to vdev mismatch
when do FISA flush.

update vdev in FISA SW entry correctly.

Change-Id: I0907c6d2d1e25424fbebd6277f326346deba6569
CRs-Fixed: 2704610
2020-06-08 21:09:34 -07:00
nshrivas
ae529e4bbd Release 5.2.0.189M
Release 5.2.0.189M

Change-Id: Ifb926b1fd92a3f928cd5644ff35d56f8c9f45196
CRs-Fixed: 774533
2020-06-08 18:36:45 -07:00
Yeshwanth Sriram Guntuka
db69ffd8ce qcacld-3.0: Ignore tx timeout on SAP when wlan is suspended
SAP tx timeout indication is received when wlan is suspended
causing excessive logging to console and eventually WD
timeout.

Ignore SAP tx timeout indication when wlan is suspended.

Change-Id: Ie09ac187e6d38c12c6c33a8b4ada19c9aabc45f9
CRs-Fixed: 2705201
2020-06-08 18:36:44 -07:00
Pragaspathi Thilagaraj
7f725e3312 qcacld-3.0: Print next RSSI threshold for periodic scan roam trigger
The driver prints the current RSSI threshold and next RSSI
threshold for LOW RSSI roam trigger. Print these info for
Periodic scan roam trigger also.

Change-Id: I4140cae3631356949c925b8d21c032e6c02d4539
CRs-Fixed: 2694906
2020-06-08 18:36:40 -07:00
nshrivas
5e587a7cd6 Release 5.2.0.189L
Release 5.2.0.189L

Change-Id: I0ce8206d8c4091ff06d7d9dfc4d08dc85c19bf08
CRs-Fixed: 774533
2020-06-08 16:00:55 -07:00
Utkarsh Bhatnagar
0f2b6666fe qcacld-3.0: Remove check for IBSS in lim_process_assoc_rsp_frame
IBSS capability information bit is valid only for beacon
and probe response. So, ignore it in association response.

Change-Id: I3495d697ac726f494234900178abb1531e1912cb
CRs-Fixed: 2703576
2020-06-08 16:00:55 -07:00
Abhishek Ambure
a6afc073d0 qcacld-3.0: Add ini support to configure max ndp sessions in fw
Introduce INI "ndp_max_sessions" to configure max number of ndp
sessions host supports. Firmware advertises max number of ndp
sessions supported in wmi_service_ready_ext2 event. If the firmware
advertises non-zero value of max ndp sessions then host configures
max ndp sessions support in firmware using WMI_INIT_CMD.

Host uses a minimum of "ndp_max_sessions" value and firmware
advertised max ndp session value to configure max number of ndp
sessions in firmware.

Change-Id: I613815f384f9b0a61711324c85ecfa095d133360
CRs-Fixed: 2673120
2020-06-08 16:00:50 -07:00
nshrivas
17f0046990 Release 5.2.0.189K
Release 5.2.0.189K

Change-Id: I3546a1b7ff1d444f57d65c60133e33d79cf48207
CRs-Fixed: 774533
2020-06-08 13:50:10 -07:00
Min Liu
22bc5b94d3 qcacld-3.0: Set Wi-Fi configurations - PHY_MODE
Add attributes in SET_WIFI_CONFIGURATION to dynamically
configure capabilities - PHY_MODE.

Change-Id: I3085cfed5b188d2ccba87a4b47ac597ebbbec76e
CRs-Fixed: 2694250
2020-06-08 13:50:10 -07:00
nshrivas
aed685234b Release 5.2.0.189J
Release 5.2.0.189J

Change-Id: I780feed7735f9503c326c93b11a20c525435c694
CRs-Fixed: 774533
2020-06-08 10:30:23 -07:00
Jinwei Chen
a6758b25d2 qcacld-3.0: Bypass FISA for RX DHCP frame
DHCP frame usually can not be aggregated, but if they go to FISA
path which will require FISA resource support for them, this looks
is not necessary.

Bypass FISA path for RX DHCP frame.

Change-Id: Ic1eac06abb5790813ee4d17ec1df6b215a1bcdb5
CRs-Fixed: 2691447
2020-06-08 10:30:23 -07:00
bings
22cb0a7581 qcacld-3.0: fix hdd_convert_timeout_reason build error
hdd_convert_timeout_reason is also used in hdd_connect_done.
Define hdd_convert_timeout_reason when it is used.

Change-Id: Ifa03959969474d9cafb1315d53b83cae21745280
CRs-Fixed: 2703672
2020-06-08 10:30:17 -07:00
nshrivas
c4162a3ac0 Release 5.2.0.189I
Release 5.2.0.189I

Change-Id: I271f45c6846cbf63bf0521b90c6838cbee76512e
CRs-Fixed: 774533
2020-06-07 17:42:29 -07:00
Bapiraju Alla
2f20b939d1 qcacld-3.0: Specify exact size of the version string while coping
While coping version strings in cds_hang_event_notifier_call, specify
exact size of QWLAN_VERSIONSTR/QDF_HANG_EVENT_VERSION to avoid buffer
overflow.

Change-Id: Ie2203600a2c92bb78ba076b609375ca219773b19
CRs-Fixed: 2702069
2020-06-07 17:42:29 -07:00
nshrivas
7d47f4b9c9 Release 5.2.0.189H
Release 5.2.0.189H

Change-Id: I37f33c7c705f260d6989da442e4409691822968d
CRs-Fixed: 774533
2020-06-07 12:29:09 -07:00
Alok Kumar
6a42b53a9d qcacld-3.0: Reset tcp adv window scale value to default
When gTcpAdvWinScaleEnable is enabled, tcp_adv_win_scale value
changes according to tput threshold. When wifi is disconnected,
tcp_adv_win_scale value is not reset to default value.

Reset the TCP advance window scale value to default when
bus bw timer stops.

Change-Id: I9b0ae2e8db11a626b3bdc4afc6e051af8943baab
CRs-Fixed: 2696481
2020-06-07 12:29:05 -07:00
Lincoln Tran
e4f18a9065 qcacld-3.0: Add logic to handle country code change
Update the HDD callback to check for phymode change or
channel change when country code updates and stop/restart
the adapter accordingly. Include cases for STA mode,
SAP mode, P2P-CLI mode, and P2P-GO mode.

Add conditional compilation flag for MCC specific API in
qcacmn.

Change-Id: I88edb401146e3cef48d757393f89fa48cb6ac895
CRs-fixed: 2658294
2020-06-07 12:29:02 -07:00
Lincoln Tran
745f9e7d1f qcacld-3.0: Update phymode before starting SAP and STA
Check phymode to verify it is allowed for the current country
before starting SAP or connecting STA.

Change-Id: Ica5e70bbd421c4dc18a34545f63e436bc482fc46
CRs-fixed: 2658294
2020-06-07 12:28:57 -07:00
Lincoln Tran
ffd5db1bb9 qcacld-3.0: Add API to convert phymode types
Convert CSR phymode to regulatory phymode and back. Regulatory
phymode enum contains fewer fields than eCsrPhyMode enum so a
conversion API is needed.

Change-Id: I4b962c07a917d19fa4ae51c78befae507dabf80f
CRs-fixed: 2658294
2020-06-07 12:28:54 -07:00
nshrivas
b669e9b7ea Release 5.2.0.189G
Release 5.2.0.189G

Change-Id: I621d0673211a2587c58916affe1b464b0eadef0a
CRs-Fixed: 774533
2020-06-07 10:13:22 -07:00
Manikanta Pubbisetty
e70a618e3f qcacld-3.0: unregister peer hang notifier
Currently, we register the peer hang notifier when the peer unmap
timer elapses, but do not unregister it. We also pass the peer reference
for which the unmap timeout happened as part of the notifier registry.

Since we do not unregister the notfier, there are chances that we
call the notifier with a stale peer reference during the subsequent
hang event which results in a crash; avoid this by unregistering the
peer hang notifier as part of device recovery.

Change-Id: I36bd8d9c1b4e38e1ba9d8c16b79df7f0cd1c9f82
CRs-Fixed: 2688676
2020-06-07 10:13:22 -07:00
Jingxiang Ge
3c19aa6dbb qcacld-3.0: Add vendor cmd for ldpc/tx_stbc/rx_stbc
Add vendor cmd for ldpc/tx_stbc/rx_stbc.

Change-Id: Id932bc68f9282adc1f542ecc6212288b4ae59d38
CRs-Fixed: 2689414
2020-06-07 10:13:18 -07:00
Sourav Mohapatra
f1e669fdc6 qcacld-3.0: Wait for driver recovery while WiFi ON/OFF
Currently the driver is not synchronized properly between SSR and wifi
ON/OFF. This causes a potential deadlock resulting in a DSC timeout.

To synchronize, add a wait in wlan_hdd_state_ctrl_param_write
which is called during WiFi ON/OFF. This wait will ensure that the
driver recovery is complete before proceeding with ON/OFF.

Change-Id: Ia1c4f8d7076d77c591276ee380b55a747cf606bd
CRs-Fixed: 2701513
2020-06-07 10:13:14 -07:00
nshrivas
95c7b813db Release 5.2.0.189F
Release 5.2.0.189F

Change-Id: Id2475f4d55796f844b3e5729e9efcdc5ec72c5df
CRs-Fixed: 774533
2020-06-07 08:07:44 -07:00
Chaoli Zhou
1178ae7db8 qcacld-3.0: Fix htt_status & A_STATUS map dp status wrong issue
Convert the tx complete status or A_STATUS to the correct dp status
before pass to qdf_dp_trace_ptr

Change-Id: I1ad94c8c293c29c9789e6dc761244911a7520707
2020-06-07 08:07:44 -07:00
Yu Wang
41d24a7273 qcacld-3.0: modify BTC mode according to BTC chain mode
BTC mode should be set according to BTC chain mode, which can be
updated dynamically during runtime.

Change-Id: Ifc95d3340ab19e217bd55a0ca5ce69988650f9e0
CRs-Fixed: 2666550
2020-06-07 08:07:35 -07:00
nshrivas
6bbfbb7bd2 Release 5.2.0.189E
Release 5.2.0.189E

Change-Id: If38cb8f1d41f84442aaa9db65a1c512313e4a597
CRs-Fixed: 774533
2020-06-07 03:13:48 -07:00
Srinivas Dasari
cefd07f8e1 qcacld-3.0: Don't set hw_filter for NDI mode
Hardware filters are supported for STA and P2P client modes.
But it's configured for NDI mode also currently. Don't configure
hw filters for NDI mode as it's not supported.

Change-Id: Ifc8f213a6279c8eb0ddde60c4f9b3538bc841ffc
CRs-Fixed: 2688396
2020-06-07 03:13:47 -07:00
Alan Chen
184c8ab3b6 qcacld-3.0: Change NLA policy table for policy OFFLOADED_PACKETS
The current policy table for OFFLOADED_PACKETS is incorrect and does
not match the uptream versions. Hence, rearrange the table contents
with the proper parameters to fix this.

Change-Id: I1e6b0ebc3ef4f622833778e0545d50783d524551
CRs-Fixed: 2701205
2020-06-07 03:13:44 -07:00
nshrivas
b7f224cfec Release 5.2.0.189D
Release 5.2.0.189D

Change-Id: I2ec4ef75ac51ef5cf7c423c6d085a2f7129f99a8
CRs-Fixed: 774533
2020-06-07 00:17:54 -07:00
Rajesh Chauhan
bc611919e0 Revert "qcacld-3.0: Use IS_ENABLED for the definition of kernel module"
This reverts Change-Id: Iaf86c9da2a9946aac09867b5c46dcc79f1b5c37e.
That change fails build for GKI variant.

Change-Id: I6cd7322870023d245fe9d20250ceb0b5d738d214
CRs-Fixed: 2701642
2020-06-06 19:06:09 -07:00
nshrivas
91daf1a6ab Release 5.2.0.189C
Release 5.2.0.189C

Change-Id: I7d0dc0f4a8856023ac328a8edcdaadd66a4838c5
CRs-Fixed: 774533
2020-06-05 06:25:38 -07:00
Vevek Venkatesan
dd91edd508 qcacld-3.0: Use IS_ENABLED for the definition of kernel module
Add support and use IS_ENABLED in code, if CONFIG_IPA3 config as
loadable kernel module.

Change-Id: Iaf86c9da2a9946aac09867b5c46dcc79f1b5c37e
CRs-Fixed: 2701642
2020-06-05 06:25:38 -07:00
nshrivas
928bce4387 Release 5.2.0.189B
Release 5.2.0.189B

Change-Id: I6e59c8746bb6f9a6438a4ddd6bf168755666ec02
CRs-Fixed: 774533
2020-06-05 00:48:29 -07:00
Rakesh Pillai
7da05db9f2 qcacld-3.0: Add different PLD vote for latency sensitive case
Any connection in 11g/a is very latency sensitive and
we need to vote for a higher DDR frequency than in
the other phy modes.

Identify the number of latency sensitive connections
in STA mode and vote for higher DDR frequency for the
latency sensitive cases.

Change-Id: I2ce20b2b40213bde52211eae659c9673c6e0d305
CRs-fixed: 2695045
2020-06-05 00:48:28 -07:00
Subrat Dash
f9d6d9d65e qcacld-3.0: Handle EDCA tx queue confguration from hostapd
The hostapd sends the EDCA configuration for tx queue set in the
hostapd.conf config file using nl80211 interface.

Add support to extract the configuratin in the cfg80211 callback
function wlan_hdd_set_txq_params and invoke SME api to send the
parameters to MAC layer.

CRs-Fixed: 2693865
Change-Id: I8acfc03d9a6ad17a1df0c03955cf3b4150a4fbef
2020-06-05 00:48:24 -07:00
nshrivas
5e0867d027 Release 5.2.0.189A
Release 5.2.0.189A

Change-Id: I4be946b012e54173a8608f1e6bb3bdeeb6ca4ce7
CRs-Fixed: 774533
2020-06-04 23:22:48 -07:00
Srinivas Dasari
6f6a3e666d qcacld-3.0: Use NLA_EXACT_LEN instead of NLA_UNSPEC in new kernels
The change If6d559a3aa7b8719a515e00e271e313c02f8135f has modified
few attribute types from NLA_UNSPEC to NLA_BINARY. But NLA_BINARY
validates only for max length and doesn't validate min length.
This could cause buffer overread if userspace sends less data as
the driver reads fixed length(e.g. 6 bytes for mac_addr) always.
Use VENDOR_NLA_POLICY_MAC_ADDR(NLA_POLICY_ETH_ADDR) or
NLA_EXACT_LEN instead of NLA_UNSPEC which validates for
exact length.

Change-Id: I92cc29716dff29037d14ffd2e269761149c7f74b
CRs-Fixed: 2700695
2020-06-04 23:22:48 -07:00
nshrivas
61547b7304 Release 5.2.0.189
Release 5.2.0.189

Change-Id: I13f367eca0587fdc5f5c8b3a34dd7ebb60f853d7
CRs-Fixed: 774533
2020-06-04 21:56:56 -07:00
Sourav Mohapatra
6c984e5800 qcacld-3.0: Flush psoc idle work during WIFI on/off
Currently in the driver there is a possible race condition between
hdd_open and idle_psoc_timeout wherein stop modules is being done. Both
these operations can potentially occur in parallel.

To synchronize, flush the idle_psoc_work in wlan_hdd_state_ctrl_param_write
which is called during WiFi ON/OFF.

Change-Id: I1d53fa9d53ca31c2c1466f0ee809a07a86a06ee0
CRs-Fixed: 2701512
2020-06-04 21:56:55 -07:00
nshrivas
6451b2dc39 Release 5.2.0.188Z
Release 5.2.0.188Z

Change-Id: I26a3f51cea3a8acfbacafc173fa7cc3ce3836e8b
CRs-Fixed: 774533
2020-06-04 05:30:58 -07:00
sheenam monga
0ec49a71f7 qcacld-3.0: Handle attribute OEM_DATA_RESPONSE_EXPECTED
Add support for OEM_DATA_RESPONSE_EXPECTED. Driver waits for the
response from FW when this attribute is set and forward the blob of
data to supplicant.

Change-Id: I3e51809e4f5736b521c26e37afb02396f9c5ed23
CRs-Fixed: 2694556
2020-06-04 05:30:58 -07:00
nshrivas
7f4a948144 Release 5.2.0.188Y
Release 5.2.0.188Y

Change-Id: I0bdbbcc3814e682b736bfb509f81b6c854022b19
CRs-Fixed: 774533
2020-06-04 02:46:34 -07:00
Bapiraju Alla
bfacaa2d0d qcacld-3.0: Update regulatory band capability with FW capability
Update band capability of regulatory component with firmware band
capability

Change-Id: I9916b17dfa279ebecc0f459d4c0b13580578b4b6
CRs-Fixed: 2689885
2020-06-04 02:46:34 -07:00
nshrivas
e77a0364f7 Release 5.2.0.188X
Release 5.2.0.188X

Change-Id: I97cc0ebf92c4c54891e826dd00df11fc07bfd9f4
CRs-Fixed: 774533
2020-06-03 13:33:25 -07:00
Rakesh Pillai
79098d2cc9 qcacld-3.0: Add INI support to handle latency critical clients
Add a new ini to enable/disable the handling of the
latency critical clients (eg: 11g/a) in the bus
bandwidth timer.

Change-Id: I4b8966aa29ffc2ca236098cb83b8db0e160b776b
CRs-Fixed: 2695042
2020-06-03 13:33:25 -07:00
nshrivas
2a48eadd2d Release 5.2.0.188W
Release 5.2.0.188W

Change-Id: I7272c9ed00e833964558190aad9b75ab0f3a9801
CRs-Fixed: 774533
2020-06-03 09:27:40 -07:00
Min Liu
50ac9a47d4 qcacld-3.0: QCA vendor command for add / delete TSPEC
Add QCA vendor subcommands QCA_NL80211_VENDOR_SUBCMD_CONFIG_TSPEC
to add / delete TSPEC in STA mode.
The attributes defined in enum qca_wlan_vendor_attr_config_tspec
are used to encapsulate required information.

Change-Id: I9553fba1189d562f6f0205e86b281172213344ba
CRs-Fixed: 2686250
2020-06-03 09:27:39 -07:00
Min Liu
faed961a98 qcacld-3.0: Set Wi-Fi configurations - TX AMSDU, RX AMSDU
Add attributes in SET(GET)_WIFI_CONFIGURATION to dynamically
configure capabilities - TX AMSDU, RX AMSDU.

Change-Id: I17d3c5d32987e638805cdaf5fe48ba3036b3ff22
CRs-Fixed: 2687303
2020-06-03 09:27:36 -07:00
nshrivas
3fa762de92 Release 5.2.0.188V
Release 5.2.0.188V

Change-Id: I0a09bac7a064e12a796e73e407d5b51f15c239bb
CRs-Fixed: 774533
2020-06-03 08:08:03 -07:00
Gururaj Pandurangi
7fe6ad582f qcacld-3.0: Validate mac_ctx before using it
Validate mac_ctx before dereferencing it.

Change-Id: Iba786647c5a54e0a67ff7b9cbb0dbaea3bd52d76
CRs-Fixed: 2699734
2020-06-03 08:08:03 -07:00
nshrivas
f63fa412aa Release 5.2.0.188U
Release 5.2.0.188U

Change-Id: Ifff9fa4c2f699bab1f98093eabefe4e2a4ea8738
CRs-Fixed: 774533
2020-06-03 00:45:36 -07:00
Rajesh Chauhan
b4a3dddcc6 Revert "qcacld-3.0: flush batched GRO_NORMAL packets"
This reverts Change-Id: Ib3e851c0822a85c4712a1b817cc19dfecf6d0e7a.
First we need to get ABI snapshot/Whitelist updated for the new
kernel API being used in this change and then only we can promote
this change. To unblock promotion, revert this change for now.

Change-Id: I8aae0fe64623034486c9db6275a16654119c06bd
CRs-Fixed: 2673959
2020-06-03 00:45:36 -07:00
Lincoln Tran
e8fee5584c Revert "qcacld-3.0: Update hdd_data_stall_process_event"
This reverts Change-Id: Id4d2eaaa2262d7fe2dd6241ae4581a3d0cb09805.

This change is incorrect because the caller passes in the
bodyptr directly to parameter. The change incorrectly dereferences
the parameter.

Change-Id: Iaaedae1a3498fc1c10024083ee98ce97c3401f82
CRs-fixed: 2701124
2020-06-03 00:45:32 -07:00
nshrivas
265fe56111 Release 5.2.0.188T
Release 5.2.0.188T

Change-Id: I17e49cff361a42cd32b6db83fd18a39ffd243f92
CRs-Fixed: 774533
2020-06-02 15:19:13 -07:00
ngong
9d23242e68 qcacld-3.0: Check gIPAConfig before setting ipa flag to fw
Currently if kernel enable CONFIG_IPA3, wlan driver will directly
send IPA enabling flag to firmware, not checking gIPAConfig.
It lead to IPA disabled in driver but enabled in fw, causing fw crash
for some target like Genoa. 

Correct logic is to check gIPAConfig before configure firmware.

Change-Id: I6e85c6bf3831029826bf279237eac2cc3a1ff07f
CRs-Fixed: 2698953
2020-06-02 15:19:13 -07:00
nshrivas
e9d4b3c893 Release 5.2.0.188S
Release 5.2.0.188S

Change-Id: Ib87aa2b4bb32a182bd8381c23222c11713c173de
CRs-Fixed: 774533
2020-06-02 13:33:01 -07:00
Jinwei Chen
d3f4ccf4d6 qcacld-3.0: add vdev->osif_rx failure handling for fisa path
Currently there is no vdev->osif_rx result check in fisa path,
so if vdev->osif_rx returns failure, the RX skb may not have been
handled and it may be leaked.

Add vdev->osif_rx failure handling to avoid skb leak.

Change-Id: I6c194c31bbe71cba5c56c2b93f505225de439b72
CRs-Fixed: 2695084
2020-06-02 13:33:01 -07:00
Dundi Raviteja
8cd3c79d59 qcacld-3.0: Add calls to disable pkt capture events
Add calls to disable packet capture events and
delete monitor interface while sta interface is
going down if packet capture mode is enabled.

Change-Id: I4094e072ac723348d4d0d8a4ccefb5bf2b77e6d5
CRs-Fixed: 2647503
2020-06-02 13:32:56 -07:00
nshrivas
9b1c3c0ea9 Release 5.2.0.188R
Release 5.2.0.188R

Change-Id: I06b7e17a863e06e75ed7a51db4d854bce75ffdba
CRs-Fixed: 774533
2020-06-02 08:37:36 -07:00
nshrivas
9458987fb8 Release 5.2.0.188Q
Release 5.2.0.188Q

Change-Id: Iccbc6cd16057203f3b3034102f8d00aae141fc2f
CRs-Fixed: 774533
2020-06-02 07:01:45 -07:00
Nirav Shah
f8dec49049 qcacld-3.0: Check CFG_TGT_DEFAULT_MAX_STA_VDEVS for P2P-CLI mode
In FW CFG_TGT_DEFAULT_MAX_STA_VDEVS considers total no of
STA and P2P-CLI vdevs. Enable CFG_TGT_DEFAULT_MAX_STA_VDEVS
check for P2P-CLI mode.

Change-Id: Ic21cf39628e7ad19102b040ffdf493a14205043a
CRs-Fixed: 2680645
2020-06-02 07:01:45 -07:00
nshrivas
44fa70c1a8 Release 5.2.0.188P
Release 5.2.0.188P

Change-Id: I2f84b8adc4ee5e75d2d44ca08c4e7d576894e2ee
CRs-Fixed: 774533
2020-06-01 23:13:28 -07:00
Bapiraju Alla
7740bf96b9 qcacld-3.0: Log Tx power setting in the driver
Log tx power value in the driver before sending to firmware

Change-Id: I602612433407e89bfa5288fa89a181a0db329f71
CRs-Fixed: 2699480
2020-06-01 23:13:27 -07:00
Bapiraju Alla
498953e600 qcacld-3.0: Update rx retry count in peer stats
Currently, Rx retry count statistic is not supported by firmware.
So host driver also not updating the corresponding statistic in
peer stats. Datapth is updating this counter using retry bit in the
rx MPDU. Update peer Rx retry count value from data path.

Change-Id: I4fd422faa7a766090991c461cd6fd2cc70d2fcc3
CRs-Fixed: 2691704
2020-06-01 23:13:20 -07:00
nshrivas
7229b508f4 Release 5.2.0.188O
Release 5.2.0.188O

Change-Id: Ie8f3bed03886137ff2b9fa82bd2343d446fc1f71
CRs-Fixed: 774533
2020-06-01 21:47:46 -07:00
Srinivas Dasari
698272c0b7 qcacld-3.0: Replace NLA_UNSPEC with NLA_BINARY
NLA_UNSPEC usage is restricted from kernel version 5.4 by adding
a strict check while validating the nla_policy. The advantage
of this is that types not specified in the policy will be
rejected.
Driver can give exception to NLA_UNSPEC by setting
strict_start_type in the policy of a vendor command to NLA_U8
or some greater value. But it's better to set the type to a
valid type so that kernel can validate.
So, use NLA_BINARY with valid length instead of NLA_UNSPEC.

Change-Id: If6d559a3aa7b8719a515e00e271e313c02f8135f
CRs-Fixed: 2692293
2020-06-01 21:47:46 -07:00
nshrivas
30a9a85c61 Release 5.2.0.188N
Release 5.2.0.188N

Change-Id: Ia52189c4f800801164bf53f6f82b612eadcda9c2
CRs-Fixed: 774533
2020-06-01 20:30:00 -07:00
Abhinav Kumar
7f67effb98 qcacld-3.0: Fix connection failure with SAP in WPA3 mode
In case if the EXTERNAL_AUTH_SUPPORT is present natively
in kernel, then the backport flag CFG80211_EXTERNAL_AUTH_SUPPORT
will not be present.

Currently host checks for defined(CFG80211_EXTERNAL_AUTH_SUPPORT)
flag to register ops for external_auth. This results in external
auth fail in the above case.

In the driver all instances of
“defined(CFG80211_EXTERNAL_AUTH_SUPPORT)” should be paired with
|| (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 17, 0))

where 4.17.0 is the kernel version where the external auth support
gets added to the upstream kernel.

Change-Id: I67b687b37ab60b581e97ea81243c0d30bbb17acd
CRs-Fixed: 2692697
2020-06-01 20:30:00 -07:00
nshrivas
2841cd9e2c Release 5.2.0.188M
Release 5.2.0.188M

Change-Id: I7472acbb35cd5f77b8aedc07c886fec98f71a536
CRs-Fixed: 774533
2020-06-01 16:28:02 -07:00
Min Liu
bc1a807ec5 qcacld-3.0: Add a sysfs replacement for set_he_bss_clr
Add the sysfs entry for set_he_bss_clr.
Previously these commands would be queried via iwpriv
--> iwpriv wlan0 set_he_bss_clr [value]
it is now changed to support via sysfs:
--> echo [value] > /sys/class/net/wlanxx/he_bss_color

Change-Id: I4700414469be018de9758277c4e095e64cabb376
CRs-Fixed: 2692916
2020-06-01 16:28:02 -07:00
nshrivas
7b3c654516 Release 5.2.0.188L
Release 5.2.0.188L

Change-Id: I9a3f8b9010a7778ed15140b9c9a9d8cb1e758874
CRs-Fixed: 774533
2020-06-01 13:26:54 -07:00
Pragaspathi Thilagaraj
c7a796fd53 qcacld-3.0: Cleanup rrm measurement data based on the index
Currently when rrm measurement is completed for a particular
index, the rrm_cleanup() is called which clears the measurement
data for all the index. This can cause failure with multiple
measurement request where on completion of the first request,
second request data structure will also be made null.

Pass the measurement index to rrm_cleanup() and clear only
that index data.

Change-Id: Ib712c2da3ddfea374d60b250dd474b08093b24c7
CRs-Fixed: 2695836
2020-06-01 13:26:54 -07:00