Commit Graph

19522 Commits

Author SHA1 Message Date
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
Utkarsh Bhatnagar
eeaa86c203 qcacld-3.0: Removed bTkipCntrMeasActive from pe_session
bTkipCntrMeasActive was not getting filling anywhere, hence
was removed from pe_session struct along with releveant code
where it was checked.

Change-Id: I8926bedef61c6468f8de2f73b4991c4c4860810b
CRs-Fixed: 2687067
2020-05-15 16:37:52 -07:00
nshrivas
899a637d82 Release 5.2.0.186C
Release 5.2.0.186C

Change-Id: I222f20ae73a14aec17e273b8b898a296246fda9b
CRs-Fixed: 774533
2020-05-15 10:41:25 -07:00
Jia Ding
30531d5a10 qcacld-3.0: Properly populate struct csr_del_sta_params
eCsrForcedDeauthSta equals to 14 and as far as reason
codes are concerned, it is MIC_FAILURE. It is observed
that when wlan is configured as SAP-SAP DBS with same
SSID and same encryption WPA2/WPA3 mixed mode, it leads
to an IOT issue where clients with iOS 13 in particular
are not able to auto reconnect back after wlan is restarted.

Thus populate subtype to IEEE80211_STYPE_DEAUTH >> 4 and
reason_code to WLAN_REASON_DEAUTH_LEAVING as defined in
kernel since station_del_parameters is a kernel defined
structure.

Also correct internal use of subtype since right shift
4 for SIR_MAC_MGMT_DEAUTH and SIR_MAC_MGMT_DISASSOC
will always end up with value 0.

Change-Id: I60aa5ed4e7b672b7a92f05ad322fcb48ab0526d4
CRs-Fixed: 2678637
2020-05-15 10:41:25 -07:00
Abhishek Singh
2281c2d6bb qcacld-3.0: remove dependency of public files from wlan_objmgr_psoc_obj.h
Remove dependency of wlan_lmac_if_def headerfiles from
wlan_objmgr_psoc_obj.h

Change-Id: I5f6120a97be3ae6835023ceaef455088820809de
CRs-Fixed: 2657771
2020-05-15 10:41:20 -07:00
Abhinav Kumar
f2d954d22e qcacld-3.0: Fix emergency roaming failure
DUT perform FT-IM association instead of FT roaming to
process emergency deauth from connected AP.

In the case of FT-IM association, FW sends assoc requests
instead of re-assoc requests in roam sync indication to
host. Host truncate fixed parameters from assoc req and
forward frame tagged parameters to supplicants.

In re-assoc request fixed params length is 10bytes and
in assoc request, fixed param length is 4 bytes.
Currently host always truncating 10 bytes of assoc/re-assoc
frame present in roam sync ind and forward it to supplicant.

This results in extra first 6 bytes of assoc frame get stripped
by host. Due to this supplicant is not able to parse frame
content properly. This leads to 11r roaming failure.

As in case of FT-IM association roaming, FW forward assoc req
in roam sync ind, Host should truncate 4 bytes of fixed
parameters.

Fix is to ensure that host truncate only 4 bytes if assoc
request present in roam sync ind data.

Change-Id: Ie1352e41f9caffc4a28ed046330a73f303af36da
CRs-Fixed: 2664097
2020-05-15 10:41:14 -07:00
nshrivas
4addebbd4b Release 5.2.0.186B
Release 5.2.0.186B

Change-Id: Idb14da030a1e6e737328d4fe1801fcf61a5683d7
CRs-Fixed: 774533
2020-05-15 06:56:02 -07:00
Abhinav Kumar
e3e903bf37 qcacld-3.0: Introduce new INI to enable/disable FT-IM
With specific AP(s), FW needs to perform FT initial mobility
association instead of FT roaming for deauth roam trigger.

This ini is used to configure "FT roaming for deauth roam trigger"
behavior from the HOST.

Change-Id: Id754a21f7ac2c330019055646f79c79db3e0c52c
CRs-Fixed: 2665882
2020-05-15 06:56:02 -07:00
Nirav Shah
cf164af18d qcacld-3.0: Add update_seq_num flag to htt_rx_mpdu_desc_seq_num
In case of partial reorder, seq number is sent by FW
when first_msdu bit is set in msdu. For all other msdus host
maintain copy of cur_seq_num_hl in pdev.
cur_seq_num_hl gets updated when htt_rx_mpdu_desc_seq_num API
is called. Currently htt_rx_mpdu_desc_seq_num API is called
from multiple functions. Add update_seq_num flag to make sure that
cur_seq_num_hl updates only during store function.

Change-Id: Ie3178ee6d1642dbeaf0cea032dc80e0ecccc1dc2
CRs-Fixed: 2683869
2020-05-15 06:55:57 -07:00
nshrivas
2721fcec48 Release 5.2.0.186A
Release 5.2.0.186A

Change-Id: Iec06bbaa8c0684edd4ef798150f172994a72c2ea
CRs-Fixed: 774533
2020-05-15 05:24:34 -07:00
Nirav Shah
a218ef21d3 qcacld-3.0: Handle last msdu bit not set in partial reorder
In case of partial reorder, handle scenario if last msdu bit
is not set.

Change-Id: I7d0a671886fe2c0f352769bf3e68e2d22408a978
CRs-Fixed: 2669907
2020-05-15 05:24:33 -07:00
Jinwei Chen
6409e4a8c5 qcacld-3.0: add FISA flush when vdev detach
In some case, FISA flush for one FISA entry is missed which
lead to some RX frames stay at FISA entry forever, this will
cause skb leak.
  Do FISA flush per vdev when vdev detach to avoid skb leak.

Change-Id: Ie6bdf885c740a99b089290257ea6936d5804d142
CRs-Fixed: 2679221
2020-05-15 05:24:30 -07:00