Commit Graph

19491 Commits

Author SHA1 Message Date
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
Jianmin Zhu
c73c2828fb Revert "qcacld-3.0: Add WAR to confirm WBM IDLE ring LSB write"
This reverts
Change-Id: I8d6766e33a3912d197e543f0e7e252513e0253ab
Origin issue has fixed by
Change-Id: I350b810a6cef8eec46428e57f5b779f888552c1b

Change-Id: I4bb8eab90c9a0341f7bc99972f44f576d7e07dc2
CRs-Fixed: 2681665
2020-05-15 05:24:26 -07:00
nshrivas
d53ba82eaa Release 5.2.0.186
Release 5.2.0.186

Change-Id: I68dfd14d27ee226b2433979191495db1323c86d1
CRs-Fixed: 774533
2020-05-15 00:36:41 -07:00
Alan Chen
de1d2e193e qcacld-3.0: Add a sysfs replacement for get_range_ext
As part of WEXT replacement, replace get_range_ext with a sysfs file.

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

example: cat /sys/class/net/wlanxx/get_range_ext

Change-Id: Ic4b5076efce837d9c98167d6a807722adbbc74df
CRs-Fixed: 2683682
2020-05-15 00:36:40 -07:00
Alan Chen
d463ed704c qcacld-3.0: Add a sysfs replacement for set_dp_trace
As part of WEXT replacement, replace set_dp_trace with a sysfs file.

file path: /sys/kernel/wifi/set_dp_trace

example: echo 1 1 1 > set_dp_trace

Change-Id: I3358ad4f483f66f643c4aa5538fd2c9172d8f077
CRs-Fixed: 2683643
2020-05-15 00:36:35 -07:00
nshrivas
5e6af7256a Release 5.2.0.185Z
Release 5.2.0.185Z

Change-Id: I95bd6683445e34c3afea134c2236643729a3df1c
CRs-Fixed: 774533
2020-05-14 23:03:00 -07:00
Alan Chen
d9641d06ce qcacld-3.0: Add a sysfs replacement for txrx_stats
As part of WEXT replacement, replace txrx_stats with a sysfs file.

file path: /sys/class/net/wlanxx/txrx_stats
	wlanxx is adapter name

example: echo 1 1 > txrx_stats

Change-Id: I677111a48eb117044ac992616d468c1604b2bae0
CRs-Fixed: 2682369
2020-05-14 23:03:00 -07:00
Alan Chen
072b0b5daa qcacld-3.0: Add a sysfs replacement for txrx_fw_stats
As part of WEXT replacement, replace txrx_fw_stats with a sysfs file.

file path: /sys/class/net/wlanxx/txrx_fw_stats
	wlanxx is adapter name

example: echo 1 > txrx_fw_stats

Change-Id: Icad1f920ef01a4b86efca786da4873a361cd2dfc
CRs-Fixed: 2682352
2020-05-14 23:02:56 -07:00
Alan Chen
3264896675 qcacld-3.0: Add a sysfs replacement for setRadar
As part of WEXT replacement, replace setRadar with a sysfs file.

file path: /sys/class/net/wlanxx/set_radar
	wlanxx is adapter name

example: echo 1 > set_radar

Change-Id: I6451f506c1525dcfc48c988f965cc6dedf64b369
CRs-Fixed: 2680424
2020-05-14 23:02:51 -07:00
Alan Chen
e735aef7ac qcacld-3.0: Add a sysfs replacement for setMonChan
As part of WEXT replacement, replace setMonChan with a sysfs file.

file path: /sys/class/net/wlanxx/set_mon_chan
	wlanxx is adapter name

example: echo 1 1 > set_mon_chan

Change-Id: Id7d21b23129fdf6e37c99924ad91a19e3c03a0d2
CRs-Fixed: 2678501
2020-05-14 23:02:47 -07:00
nshrivas
8f37fe7135 Release 5.2.0.185Y
Release 5.2.0.185Y

Change-Id: I51161449b842f0d49d29b08f909082f38416958f
CRs-Fixed: 774533
2020-05-14 21:34:58 -07:00
Alan Chen
96d62585ee qcacld-3.0: Add a sysfs replacement for set_scan_cfg
As part of WEXT replacement, replace set_scan_cfg with a sysfs file.

file path: /sys/kernel/wifi/set_scan_cfg

example: echo 1 1 1 > set_scan_cfg

Change-Id: I0807a0fc7ab4e3963386f5f5979b039c291896d9
CRs-Fixed: 2678470
2020-05-14 21:34:58 -07:00
nshrivas
28edf2eb89 Release 5.2.0.185X
Release 5.2.0.185X

Change-Id: Ie17820384a8b08f061f65eb11351c0350e540ba8
CRs-Fixed: 774533
2020-05-14 17:49:11 -07:00
Utkarsh Bhatnagar
b0bf5ddb1b qcacld-3.0: Removed FEATURE_WLAN_RMC feature
Removed all the API realted to  FEATURE_WLAN_RMC
as well as related SME/WMA code.

Change-Id: Id471ccabcfd183fbcc7ff4e4953991f9e1551526
CRs-Fixed: 2686364
2020-05-14 17:49:11 -07:00
nshrivas
d00d63fedd Release 5.2.0.185W
Release 5.2.0.185W

Change-Id: Id99313de3553c94563655997602ca0cc93a37630
CRs-Fixed: 774533
2020-05-14 13:04:13 -07:00
Jinwei Chen
bf047d7143 qcacld-3.0: Bypass FISA for non-regular RX delivering frame
Bypass FISA for non-regular RX delivering frame

Change-Id: I835229379779057f1b8cddcfffc3b3863137e5bc
CRs-Fixed: 2683727
2020-05-14 13:04:13 -07:00
nshrivas
ebb777bda8 Release 5.2.0.185V
Release 5.2.0.185V

Change-Id: I5781e9f56e1e684231e3ced6b2a81cb2f98fee5e
CRs-Fixed: 774533
2020-05-14 11:20:42 -07:00
Bapiraju Alla
ba6b3520d3 qcacld-3.0: Add a sysfs replacement for get_sta_info
As part of WEXT replacement, replace get_sta_info with a sysfs file.

This feature can be controlled using configuration flag
CONFIG_WLAN_SYSFS_GET_STA_INFO

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

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

Change-Id: Iac23cdc92a860279480ec9703697f22b2f0b5223
CRs-Fixed: 2682163
2020-05-14 11:20:42 -07:00
nshrivas
6cca230131 Release 5.2.0.185U
Release 5.2.0.185U

Change-Id: Id66f0c4b9ff303178ef83a137e73fea79d5ebeb6
CRs-Fixed: 774533
2020-05-14 08:49:43 -07:00
Aditya Kodukula
6e244ca777 qcacld-3.0: Add a sysfs replacement for wowlAddPtrn
As part of WEXT replacement, replace wowlAddPtrn with a sysfs file.

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

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

Change-Id: I46d00fd8a15851cf2838f3b07a0ec2d1050d1087
CRs-Fixed: 2680490
2020-05-14 08:49:43 -07:00
nshrivas
e10a627c6c Release 5.2.0.185T
Release 5.2.0.185T

Change-Id: I049727025e846dc7bf863d6caf99e18c0d806719
CRs-Fixed: 774533
2020-05-14 07:04:53 -07:00
gaurank kathpalia
0907e9f8b3 qcacld-3.0: Cleanup IBSS in CSR layer
Cleanup IBSS related code from CSR/SME layer.

Change-Id: I4a15b0c59b55382ffb6a5c67049a6b24e3e00cbe
CRs-Fixed: 2685889
2020-05-14 07:04:53 -07:00
nshrivas
d280fe0dd0 Release 5.2.0.185S
Release 5.2.0.185S

Change-Id: I89de678544f14dec25a1bada646e63f1416e9584
CRs-Fixed: 774533
2020-05-14 02:17:00 -07:00
Aditya Kodukula
326f4481d9 qcacld-3.0: Add a sysfs replacemnet for wow_ito
As part of WEXT replacement, replace wow_ito with a sysfs file.

file path: /sys/kernel/wifi/wow_ito

example: echo 1 > wow_ito

Change-Id: I11cf9acfc4282b910145efa527682ab1738eaaa0
CRs-Fixed: 2680332
2020-05-14 02:17:00 -07:00
Aditya Kodukula
5d77b1b715 qcacld-3.0: Add a sysfs replacement for scan_disable
As part of WEXT replacement, replace scan_disable with a sysfs file.

file path: /sys/kernel/wifi/scan_disable

example: echo 1 > scan_disable

Change-Id: Icaa7083d0f7b2cefd0f77cb7da7fe0d3d52d36c5
CRs-Fixed: 2676764
2020-05-14 02:16:55 -07:00
Abhishek Ambure
a7b4ee1df8 qcacld-3.0: Don't force RSSI trigger in controlled roaming mode
Host configures rssi trigger, connected ap rssi delta and rssi
threshold in firmware. As rssi threshold is hit, firmware start
roam scan. Firmware decreases further RSSI threshold by connected
ap rssi delta if matching profile ap not found and so on.
Example: STA connects to an AP and host sets rssi trigger,
connected ap rssi delta=5 and rssi threshold as -25dbm. Firmware
starts roam scan as the rssi threshold is hit. In the roam scan
if desired profile ap is not found, decreases rssi threshold
by 5dbm i.e connected ap rssi delta. Now rssi threshold becomes
-30dbm and then firmware triggers roam scan and so on.

Thus the rssi threshold changes dynamically when controlled
roaming mode is set from userspace, to fix this do not force
RSSI triggers when controlled roaming from userspace is enable.

Change-Id: I1de3f71ca96de9f464d5d33b0271f99c55cff535
CRs-Fixed: 2681882
2020-05-14 02:16:51 -07:00
nshrivas
fa053e4857 Release 5.2.0.185R
Release 5.2.0.185R

Change-Id: Ibce6b05f57c8ddefa5729d7c25e3a8501550a82c
CRs-Fixed: 774533
2020-05-13 21:07:14 -07:00
Nirav Shah
5537b67b89 qcacld-3.0: Update rx ldpc capability based on ini configuration
Update rx ldpc capability based on ini
configuration(gEnableRXLDPC).

Change-Id: Ic160850f4fbba19a8faebc7f0c0545f21834de93
CRs-Fixed: 2677946
2020-05-13 21:07:14 -07:00
nshrivas
deb6257efe Release 5.2.0.185Q
Release 5.2.0.185Q

Change-Id: Ic249f7508d114ae4fbb7ae84a8a573176b8b7fa0
CRs-Fixed: 774533
2020-05-13 19:17:37 -07:00
Utkarsh Bhatnagar
f3e4542667 qcacld-3.0: Removed IBSS from wlan_policy_mgr
Removed IBSS feature from wlan policy Manager

Change-Id: If31514e8b67042a798419e29ddda0538e2ebb265
CRs-Fixed: 2681063
2020-05-13 19:17:36 -07:00
nshrivas
f3a05294f4 Release 5.2.0.185P
Release 5.2.0.185P

Change-Id: I12eb48264e9c4113afad3ed045babba1f9735737
CRs-Fixed: 774533
2020-05-13 12:39:42 -07:00
Bapiraju Alla
9171aece4a qcacld-3.0: Add a sysfs replacement for connect info
Add sysfs entry to get connection info instead of debugfs.

This feature can be controlled using configuration flag
CONFIG_WLAN_SYSFS_CONNECT_INFO

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

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

Change-Id: Ibe183e4665cdbea66b83abd4732e7ef33843612d
CRs-Fixed: 2682856
2020-05-13 12:39:41 -07:00