Commit Graph

19533 Commits

Author SHA1 Message Date
nshrivas
2879bf9bf9 Release 5.2.0.186V
Release 5.2.0.186V

Change-Id: I62adf83a09b3c65304e3f8c01b7e6f96b3657070
CRs-Fixed: 774533
2020-05-19 18:00:55 -07:00
gaurank kathpalia
6000545045 qcacld-3.0: Fix RSN parsing issues in lim_check_rsn_ie
In lim_check_rsn_ie, driver first upack the RSN IE and then do pack,
During unpack RSN_Cap_present is set to 0, in case pmkid and grp
mgmt cipher is not present. Also if pmkid is not present during pack
mgmt grp cipher is not added.

This lead to RSN caps not filled and thus PMF capability
is not determined leading to PMF cert failures.

So do not reset rsn caps and consider grp mgmt ciper.
Also in lim_check_rsn_ie use the preexisting RSN IE instead
of creating the IEs again.

Change-Id: Icc360b2eed0197fcf1ae27a0ff6ae9879b45cf2b
CRs-Fixed: 2690029
2020-05-19 18:00:54 -07:00
nshrivas
7074930c61 Release 5.2.0.186U
Release 5.2.0.186U

Change-Id: I65090462389a80a01f74d48499e8db8c356524c8
CRs-Fixed: 774533
2020-05-19 16:08:21 -07:00
Srinivas Dasari
ad5a78ee9e qcacld-3.0: Send disconnect reason code as 0 for beacon miss
Currently, host driver sends disconnect reason code as
WLAN_REASON_UNSPECIFIED(1) when the station disconnects due to
continuous beacon miss and corresponding vendor specific reason
code is also sent to userspace. This change is introduced with
the commit I99bf4573b59dc810e0a1529fcd48061d10acae4e to
provide vendor specific reason codes for all internal
disconnections.
Driver used to send reason code as 0 for beacon miss before
this change. Few applications might still expect the same
reason code(0) and current behavior causes backward compatibility
issues. So, retain the same reason code 0 for beacon miss failure.

Change-Id: I82f215ba15ff6e215cb14ac08933e1491371dfde
CRs-Fixed: 2689257
2020-05-19 16:08:20 -07:00
nshrivas
060bbe47dd Release 5.2.0.186T
Release 5.2.0.186T

Change-Id: I6712755d83e98c0a67ed3f7e534512ef976acf40
CRs-Fixed: 774533
2020-05-19 14:47:09 -07:00
Rakesh Pillai
523a702050 qcacld-3.0: Remove bus bw vote when bus bw timer is stopped
Currently the driver votes for IDLE case when no
interface is associated. If the bus bandwidth timer
is stopped when there is no interface, we are not reducing
our votes, thereby causing higher power usage.

Remove our voting for bus bandwidth when the bus
bandwidth timer is stopped.
Also in the wlan resume case, vote for MEDIUM bus
bandwidth only if any interface is associated, else
vote for NONE.

Change-Id: I6cbe7f32036219b3b8914fb096562f44559931ce
CRs-Fixed: 2688853
2020-05-19 14:47:09 -07:00
Utkarsh Bhatnagar
17b2fc57d7 qcacld-3.0: Remove unused CFG CFG_RMC_ACTION_PERIOD_FREQUENCY
RMC is IBSS specific and CFG_RMC_ACTION_PERIOD_FREQUENCY is not used
now so remove the same

Change-Id: Icafff4bd7eb508d92c383861300146e3a0f2def7
CRs-Fixed: 2689882
2020-05-19 14:47:05 -07:00
nshrivas
2b7fc77cb9 Release 5.2.0.186S
Release 5.2.0.186S

Change-Id: I6b7c04c817340e02befb46fdb6db90373683cf47
CRs-Fixed: 774533
2020-05-19 08:40:58 -07:00
Srikanth Marepalli
ec2675cd04 qcacld-3.0: Add support for WPA3 SuiteB roaming
This commit enables support for SuiteB roaming for SHA384.
Based on the WPA3 SuiteB roam service capability advertisement
received from Firmware, we enable the support in Host.

Change-Id: Iab4e6bfc9c8ba7d604c2720c8cb848fce40dd6b4
CRs-Fixed: 2685975
2020-05-19 08:40:58 -07:00
Ben Wang
308c352957 qcacld-3.0: Add idle shutdown for virtual interface stop
Because FW don't support idle pdev suspend, and when all interface down
host will not send wow enable command because wakeup is not expected.
The idle shutdown precedure already exist for station mode, apply it to
virtual interface as well.Otherwise, it will cause wlan suspend failed

Change-Id: I5bde36298b1484b09b1bb52cf79841f99d5324be
CRs-Fixed: 2668600
2020-05-19 08:40:53 -07:00
nshrivas
c110038b83 Release 5.2.0.186R
Release 5.2.0.186R

Change-Id: I54d555824bd0b597e0d1494dcf0da34ec16d549b
CRs-Fixed: 774533
2020-05-19 07:22:08 -07:00
gaurank kathpalia
7ff0f92346 qcacld-3.0: Remove IBSS related INI and CFG
Remove IBSS related INI and CFG.

Change-Id: Iedebb858448d900bf4909fe5cafc2092baa60285
CRs-Fixed: 2687119
2020-05-19 07:22:08 -07:00
nshrivas
6bdd0a6989 Release 5.2.0.186Q
Release 5.2.0.186Q

Change-Id: Iaba2d949bb5a4eab4910d90f6e1cb1b32d24266b
CRs-Fixed: 774533
2020-05-18 08:45:10 -07:00
Will Huang
090fd3afad qcacld-3.0: Enable maximum 4 vdevs for Genoa auto
There is requirement to support maximum 4 devs on Genoa,
like sta + p2p + dual band sap, change CONFIG_WLAN_MAX_VDEVS from
3 to 4 for Genoa auto.

Change-Id: I17604b0ff191bf8ee13ebb48004c893f1fb353c2
CRs-Fixed: 2674091
2020-05-18 08:45:09 -07:00
nshrivas
53a07a0333 Release 5.2.0.186P
Release 5.2.0.186P

Change-Id: Ied4761b4198b8ed9c7ef420f3be8b8009d034a42
CRs-Fixed: 774533
2020-05-18 05:51:27 -07:00
Abhinav Kumar
19369442ae qcacld-3.0: Use status for Peer Assoc Conf event
After receiving PEER_ASSOC_CMD from host, FW sends Peer Assoc
Conf event as ACK of PEER_ASSOC_CMD. After that, host sends Mx
(STA:M2/M4) messages.

Currently, FW sends Peer Assoc Conf event to HOST only in
success case and HOT fills event status as success always.

As per requirement, FW now sends Peer Assoc Conf event to HOST
in failure case. So now host should update event status whatever
coming from FW.

Fix is to update proper Peer Assoc Conf event status

Change-Id: I7e1aa808e1beece23a5dfc0c120765e389e3f0f9
CRs-Fixed: 2640242
2020-05-18 05:51:27 -07:00
nshrivas
1b9c3d7417 Release 5.2.0.186O
Release 5.2.0.186O

Change-Id: If2142b39de64838a0bfd68792a915f63bdbbc487
CRs-Fixed: 774533
2020-05-18 04:28:39 -07:00
Mohit Khanna
c8fb78d82d qcacld-3.0: Move BW voting to bus suspend/resume
Current during system suspend/resume, we remove/add votes for DDR/SNOC
during cfg80211 suspend/resume functions. However, check for pending TX
completions and RX softirq processing happens in the bus suspend
functions which get called after cfg80211 suspend/resume functions.

Hence, there is a small time window where there may be DDR transactions
from WLAN SOC with no vote for DDR/SNOC. This can lead to high bus
latency as seen by WLAN SOC. To avoid this, move the bus voting for
system suspend/resume operation in the bus suspend/resume functions.

Change-Id: I9242d438c1fa07cd7a2dec6994f437d07dd9bb68
CRs-Fixed: 2673101
2020-05-18 04:28:39 -07:00
nshrivas
184dd00b74 Release 5.2.0.186N
Release 5.2.0.186N

Change-Id: I83679958202d84794f058ea1a75189f37d5fb028
CRs-Fixed: 774533
2020-05-18 01:16:57 -07:00
Abhishek Singh
65fa031684 qcacld-3.0: Free lmac tx/rx ops in start module failure
The lmac tx/rx ops are not freed in failure case of start module
which lead to mem leak.

So Free lmac tx/rx ops in start module failure.

Change-Id: Ib222e7e31164488cca7b7cc3d241f895f49daa6d
CRs-Fixed: 2688176
2020-05-18 01:16:56 -07:00
nshrivas
a27406006b Release 5.2.0.186M
Release 5.2.0.186M

Change-Id: Ib3b4a3378c5f17f8e51484f5d519737887b3b1de
CRs-Fixed: 774533
2020-05-17 13:49:40 -07:00
Utkarsh Bhatnagar
26b28f5e20 qcacld-3.0: Consider both peer and Self Capabilities for PMF
Set PMF enabled bit for Association Frame only when both peer
and self supports it.

Change-Id: I11994da4db87e6a83b7ebe308720c45a9e2f0173
CRs-Fixed: 2686114
2020-05-17 13:49:40 -07:00
nshrivas
a8483f869d Release 5.2.0.186L
Release 5.2.0.186L

Change-Id: I6736152e2842eec2fa4f26e4cea9e5a511f61068
CRs-Fixed: 774533
2020-05-17 12:29:24 -07:00
Yeshwanth Sriram Guntuka
732f074be1 Revert "qcacld-3.0: Add feature flag to not process rxdma decrypt err"
In PMF cert test case, peer device sends disassoc req to APUT.
After the STA cleanup is done on DUT, ping data packets are still
sent by the peer STA causing rxdma decrypt errors. Rxdma decrypt
errors are not processed and the control path callback to send
deauth frame to peer STA is not invoked resulting in test case
failure.

Fix is to revert commit bf58054b02
("qcacld-3.0: Add feature flag to not process rxdma decrypt err").

Change-Id: I39686a4b16d256bd4d4b62a782457e941cfda8d6
CRs-Fixed: 2686159
2020-05-17 12:29:24 -07:00
nshrivas
71811889bd Release 5.2.0.186K
Release 5.2.0.186K

Change-Id: If443f388045ffa589cc4c48340a16047f1f14cb5
CRs-Fixed: 774533
2020-05-16 12:27:14 -07:00
Bapiraju Alla
8a14dd91ed qcacld-3.0: Reject SAP concurrency with monitor mode
Currently, SAP interface is being created when there is an existing
monitor mode interface. This concurrency is not allowed.

To avoid this, Add check for existing monitor mode interface before
creating SAP interface using add virtual interface.

Change-Id: Ia2318b880adaff39b7deb9e223140906e80a91ae
CRs-Fixed: 2680143
2020-05-16 12:27:13 -07:00
nshrivas
a6dcea22a2 Release 5.2.0.186J
Release 5.2.0.186J

Change-Id: Ic65c701b5bd76e4aa4ba403f09ffc65da89efae8
CRs-Fixed: 774533
2020-05-16 08:19:41 -07:00
Jinwei Chen
d4be970088 qcacld-3.0: do fisa flush per vdev only if fisa enabled in INI
If FISA related macro WLAN_SUPPORT_RX_FISA is configured but INI
dp_rx_fisa_enable is not set, fisa related context is not initialed
in dp_soc structure. if do fisa flush when vdev detach, invalid
access to fisa context will happen.

Do fisa flush per vdev only if fisa is enabled in INI.

Change-Id: Id3cecfa24f8ce26465a7809d4d9b2e92ae199c7d
CRs-Fixed: 2687949
2020-05-16 08:19:41 -07:00
nshrivas
0d36c7fb2b Release 5.2.0.186I
Release 5.2.0.186I

Change-Id: I3435b38b6e0953576a7083c8ec086e02f918790e
CRs-Fixed: 774533
2020-05-16 07:00:06 -07:00
gaurank kathpalia
714a6707f2 qcacld-3.0: Fix missing changes for latest frame parser
Few changes on tip got reverted as part of
I2b91a271d30b1230ef7bb14ee08d0b9da2706db4 so bring them back.

Change-Id: I12dc7304dba220f0d85763b01d4b04dd1540a3bb
CRs-Fixed: 2687980
2020-05-16 07:00:05 -07:00
gaurank kathpalia
d3420e7eac qcacld-3.0: Remove IBSS related code from frame handling
Remove IBSS related code from frame handling.

Change-Id: I1efc71392112a53247c5b88e5c2d09e4dee0b802
CRs-Fixed: 2687979
2020-05-16 07:00:00 -07:00
Utkarsh Bhatnagar
0d0fadb0dd qcacld-3.0: Consider Only dot11mode profiles if configured
If device is configured to Only dot11mode profile. Don't
connect to lesser profile the configured.

Change-Id: I7bf5157c0d7324c5ee7c4cdaac7806c0991d5dae
CRs-Fixed: 2683763
2020-05-16 06:59:56 -07:00
nshrivas
2eee1707ab Release 5.2.0.186H
Release 5.2.0.186H

Change-Id: I258a38789a3d3d33ce67bfd639ca323ac0952688
CRs-Fixed: 774533
2020-05-16 02:45:07 -07:00
Aditya Kodukula
3a81007f01 qcacld-3.0: Add a sysfs replacemnet for wowlDelPtrn
As part of WEXT replacement, replace wowlDelPtrn with a sysfs file.

file path: /sys/class/net/wlanxx/wowl_del_ptrn
	where wlanxx is adapter name

example: echo 08:01:FFFFFFFFFFFF0000:FC > wowl_del_ptrn

Change-Id: I446456df5bd003b7328ba7afc0a4fb5e60059e11
CRs-Fixed: 2682245
2020-05-16 02:45:07 -07:00
Alan Chen
b049a675ca qcacld-3.0: Remove P2P device mode when create adapter store/show files
There should only be STA and/or SAP modes for the new sysfs commands.
Remove P2P device mode when creating the store/show files.

Change-Id: Id090dff650466c907468eb530e9e24d96ce4d99d
CRs-Fixed: 2686781
2020-05-16 02:45:03 -07:00
nshrivas
d0cb939928 Release 5.2.0.186G
Release 5.2.0.186G

Change-Id: Ia8eec2a650bfd60b0fd8662a83021632081721a4
CRs-Fixed: 774533
2020-05-15 21:45:29 -07:00
Srinivas Dasari
4670f330c1 qcacld-3.0: Replace WLAN_FEATURE_NAN_DATAPATH with WLAN_FEATURE_NAN
WLAN_FEATURE_NAN_DATAPATH is deprecated and the define is also
removed. But there is still some code(NDP wakelock event
configuration) which is guarded in this flag and it never gets
compiled. So replace WLAN_FEATURE_NAN_DATAPATH with overall
NAN feature define WLAN_FEATURE_NAN and move it to a separate
API.
Also, enhance log to print the complete 16-byte bitmap in hex
format.

Change-Id: I1ad51efc2b6a088022601686744802995fb7b4b7
CRs-Fixed: 2679286
2020-05-15 21:45:29 -07:00
Kiran Kumar Lokere
17c983d512 qcacld-3.0: Dont connect in HE mode if Rx MCS map is invalid
Check AP's HE Rx MCS map to connect in HE mode. If AP has invalid
MCS map connect in HT/VHT mode.

Change-Id: Ia95f08999f0536ac3463e02212f39d4fd09390d4
CRs-Fixed: 2684887
2020-05-15 21:45:25 -07:00
ngong
6b4423946f qcacld-3.0: add IPA_DISABLE_OVERRIDE for QCN7605
If IPA is not enabled, don't set ipa cfg to fw, else
firmware crash when loading driver.

Change-Id: I9c5d55775a5390c4f35a91100cf4b1bdebc7f4f0
CRs-Fixed: 2635439
2020-05-15 21:45:21 -07:00
nshrivas
d46663217a Release 5.2.0.186F
Release 5.2.0.186F

Change-Id: Ibda9de99601ce49caf0fca98526c934271940207
CRs-Fixed: 774533
2020-05-15 20:14:43 -07:00
Bapiraju Alla
367572ad55 qcacld-3.0: Add a sysfs replacement for getChannel
As part of WEXT replacement, replace getChannel with a sysfs file.
This feature can be controlled using configuration flag
CONFIG_WLAN_SYSFS_GET_CHANNEL

file path: /sys/class/net/wlanxx/get_channel
	where wlanxx is adapter name

example command: cat /sys/class/net/wlan1/get_channel
	output: Channel number: 1

Change-Id: I3040af3d19eb83a819ca83cdbb74a70acd041698
CRs-Fixed: 2681803
2020-05-15 20:14:43 -07:00
nshrivas
320475edba Release 5.2.0.186E
Release 5.2.0.186E

Change-Id: I11e65a7f82213b97ca55873ad59bcfa3cb6429b8
CRs-Fixed: 774533
2020-05-15 18:47:23 -07:00
Utkarsh Bhatnagar
3c5918e041 qcacld-3.0: Removed WEP_DEFAULT_KEY
Removed WEP default key with the corresponding functions

Change-Id: I721b60969e6aea7f0abf58edcd4028dad5b03a25
CRs-Fixed: 2687348
2020-05-15 18:47:23 -07:00
gaurank kathpalia
322d8eb806 qcacld-3.0: Cleanup IBSS code from LIM
Cleanup IBSS related code from LIM.

Change-Id: Idebb0f55aa27751f1fdd7b4c1fb8124ae29eb382
CRs-Fixed: 2687017
2020-05-15 18:47:18 -07:00
Sourav Mohapatra
a196271737 qcacld-3.0: Synchronize hdd_driver_unload against other vdev trans
Unloading the driver is a driver transition. As a part of this driver
unload, the PLD calls the pld_remove which is a psoc transition. This is
the reason why the driver unload is currently not being protected as
there is a call to psoc transition within it.

This absence of locking can lead to potential deadlock scenario. Assume the
example of add_virtual_interface and rmmod coming in parallel.

	T1: add_virtual_interface (starts a vdev_trans)

	T2: rmmod comes in parallel
		-> unregister_driver goes to PLD
		-> PLD calls pld_remove (psoc_trans waits due to T1)

	T1: add_virtual_interface continues
		-> Calls idle_restart that goes to PLD
		-> PLD waits from pld_remove (T2) to complete first

	T1 and T2 are waiting for each other to exit resulting in
	deadlock.

To resolve this, add a driver_trans_start_wait to hdd_driver_unload.
This will ensure that either the unload waits for all other trans to be
completed before proceeding or set the driver_load_unload flag which
will result in upcoming trans to get rejected.

Change-Id: I64b03843065e5eef7c2be209c1f8cb936bdd0742
CRs-Fixed: 2683032
2020-05-15 18:47:11 -07:00
Rachit Kankane
fdcdb2bdc7 qcacld-3.0: Handle tx_power_level under radio stat
Host driver do receives radio tx power level stats as part of
radio stats even though we have different event ID for that.
Handling the tx_power_level as part of radio stats only if
num_tx_power_level is set.

Change-Id: I46aff51c70c444c94c9b10f32b7776ba4a1ca4e8
CRs-Fixed: 2686882
2020-05-15 18:47:06 -07:00
nshrivas
6eea791b3f Release 5.2.0.186D
Release 5.2.0.186D

Change-Id: I9f83a9d889d3ab9222e243ba8b60a8cda2b34bdb
CRs-Fixed: 774533
2020-05-15 16:38:05 -07:00
gaurank kathpalia
86a93dbbde qcacld-3.0: Remove IBSS specific code from WMA
Remove IBSS specific code from WMA.

Change-Id: Iacdace8435fd8e6c167df24167db23a14efe4f15
CRs-Fixed: 2687016
2020-05-15 16:38:05 -07:00
Jinwei Chen
b55574eb99 qcacld-3.0: Skip RX TLV header for RX fragment data
In dp_fisa_rx() function, L2 head pointer for fragment data is not
set correctly, actually it points to RX TLV header.
Skip RX TLV for RX fragment data.

Change-Id: Ie326734c657f45024a83792b103f931723148c92
CRs-Fixed: 2686851
2020-05-15 16:38:00 -07:00
Bapiraju Alla
6b2b3ea7c8 qcacld-3.0: Add a sysfs replacement for getTdlsPeers
As part of WEXT replacement, replace getTdlsPeers with a sysfs file.

This feature can be controlled using configuration flag
CONFIG_WLAN_GET_TDLS_PEERS

file path: /sys/class/net/wlanxx/get_tdls_peers
	where wlanxx is adapter name

example command: cat /sys/class/net/wlanxx/get_tdls_peers

Change-Id: I66123266d6a3bf4c5c82f70186e35aa9942533b1
CRs-Fixed: 2681810
2020-05-15 16:37:56 -07:00