Commit Graph

24988 Commits

Author SHA1 Message Date
Vinod Kumar Pirla
aa5adf2bc8 qcacld-3.0: Fix link info offset in ML IE
The assumption of link info sub-element offset
starting after link_id in common info sub-element
is wrong. There are other non mandatory fields
in common info sub-element.

The actual offset of link info sub-element
starts after the length of common info length.

Change-Id: I23bb7b148a672d0a45b0e32932f4a15a7e584b72
CRs-Fixed: 3443099
2023-03-30 21:44:47 -07:00
Madan Koyyalamudi
d15ee876f7 Release 5.2.1.61M
Release 5.2.1.61M

Change-Id: I123892c7ba5e584e28323c90c4835b629007ab41
CRs-Fixed: 774533
2023-03-30 20:19:08 -07:00
Surya Prakash Sivaraj
8b23fa3311 qcacld-3.0: Enable shortGI for 160 MHz based on BW cap
Enable the short GI support for 160 and 80+80 MHz only
if 160/80+80 MHz self cap is enabled for the STA DUT.

Change-Id: I4b9de06fe5b0cc8aecb35207fa1d117bfc23ed30
CRs-Fixed: 3416932
2023-03-30 20:19:08 -07:00
Amit Mehta
881fb8bb91 qcacld-3.0: Add change to update peer map unmap version
Add change to update peer map unmap version.
Change to get peer map event v3 and peer unmap
event v2 for 11BE target.

Change-Id: I77fa354807ef66effaeb37a845ccebccd5f66ff4
CRs-Fixed: 3442448
2023-03-30 20:19:02 -07:00
Madan Koyyalamudi
7211ee2483 Release 5.2.1.61L
Release 5.2.1.61L

Change-Id: I644177cfb8c60a17175ea3c0307b7932d183492d
CRs-Fixed: 774533
2023-03-30 18:29:58 -07:00
Mohammed Ahmed
4c14dfa315 qcacld-3.0: add hang event data to ssr driver dump
Current code does not include hang event data to ssr driver dump.
Fix this by adding struct registration/unregistration.

Change-Id: I6c21cbf7b2d0a242e1469b32820373a61235ac7a
CRs-Fixed: 3443220
2023-03-30 18:29:53 -07:00
Madan Koyyalamudi
e9de40f2a2 Release 5.2.1.61K
Release 5.2.1.61K

Change-Id: I50b119485f84af319ee21ca6d213d5bd7df6778c
CRs-Fixed: 774533
2023-03-30 14:44:03 -07:00
Mohammed Ahmed
ed5993c5c7 qcacld-3.0: add hif_ce_desc_history to ssr driver dump
Current code doesn't have hif_ce_desc_history in ssr driver dump.
Fix this by adding the two data structs: hif_ce_desc_history_buff
and hif_ce_desc_history to the ssr driver dump regions.

Change-Id: I4b73dfe8909bd4f75cdf8c172c590c0aff3b1d1c
CRs-Fixed: 3443225
2023-03-30 14:44:03 -07:00
Surya Prakash Sivaraj
83c55429be qcacld-3.0: Stop SAP on invalid RSN IE
Hostapd sends RSNIE with around 18AKMs. However, the driver
data structures allow storage upto 6 AKMs only. Therefore,
the dot11f unpack modules returns BAD IE. The akm suite
however carries the parsed count of 18.

The HDD caller checks only DOT11F_FAILED, which doesn't cover
many of the DOT11F_xx failure status codes. Therefore, instead
of failing BSS, the IE is processed further and access of 18
contiguous AKMs takes place leading to OOB read crash.

To fix this, check for all the failure status code and stop
the BSS upon RSN/WPA/WAPI IE parse failure.

Change-Id: I16399c8a5bd61b09d29cd88e35c0ec441c6b9af4
CRs-Fixed: 3445762
2023-03-30 14:43:58 -07:00
Madan Koyyalamudi
56a3526282 Release 5.2.1.61J
Release 5.2.1.61J

Change-Id: I915a647dd2c365b96fb8e272c6489ae5e52bc962
CRs-Fixed: 774533
2023-03-30 09:00:55 -07:00
Rahul Gusain
64f4ef5843 qcacld-3.0: Use MLD address for auth frames in SAE ML roaming
SAE authentication happens with MLD address rather than link
addresses as it's common authentication for all links in an ML
connection. But OTA exchange of authentication frames happens
with a chosen link address from available links.
As userspace takes care of the SAE authentication, host driver
has to replace the rx SAE auth frame SA with peer MLD and DA with
self MLD address. Similarly for tx SAE auth frames, replace self
SA with link address and DA with peer link address.

Current change is to support the same for roaming case. Fetch the
MLD from scan cache corresponds to link address provided in roam
auth event and replace as mentioned above.

Change-Id: Ide15caa122f78301391b5ea891e2e6eaf4af8974
CRs-Fixed: 3441483
2023-03-30 09:00:55 -07:00
Madan Koyyalamudi
b6f2edbfd1 Release 5.2.1.61I
Release 5.2.1.61I

Change-Id: I5b7ce1f9402b02fe6a4fd38b2bfad48a2c62c56d
CRs-Fixed: 774533
2023-03-30 05:26:30 -07:00
Madan Koyyalamudi
c86f98f6f0 Release 5.2.1.61H
Release 5.2.1.61H

Change-Id: I2a1e50469f675d86aedd84cde1292523d5b8ecca
CRs-Fixed: 774533
2023-03-30 02:31:55 -07:00
jinbao liu
0d10445f64 qcacld-3.0: Fix the issue of mcs=255 in relatively high rate mode
Currently the RX link speed reported is taken from driver instead
of FW. In light of performance, driver will stop reporting rates
info when throughput exceeds certain threshold. In that case, the
rates info to be reported is from parsing the rateflags from FW.
However, driver sometimes fails to get an appropriate MCS index
and has to assign 0 to it, which has unfriendly user experience
when too much MCS=0 occurs. To address this issue, first, update
the logic to ignore the throughput judgement to make sure that
the rates info to be reported is always from driver. Second, add
the function wlan_hdd_get_peer_rx_rate_stats() where wma_get_mcs
_idx() has been called, to prevent the already updated rates info
from corrupting by FW due to multi-thread. This change has little
impact on throughput because the function is not called frequently.

Change-Id: I73e874caa8e77325c9e81d0e5929e1ba539946a5
CRs-Fixed: 3434764
2023-03-30 02:31:54 -07:00
Madan Koyyalamudi
bfc5e77729 Release 5.2.1.61G
Release 5.2.1.61G

Change-Id: I1391fb5fbab5e30f9f0d8cb0bf25e52d188ddd83
CRs-Fixed: 774533
2023-03-29 22:52:19 -07:00
David Oladunjoye
05670f4691 qcacld-3.0: Replace obsolete TWT function
Obsolete TWT functions are still called in driver. As part of
removal, Remove these functions and use component function.

Change-Id: I43c804c3b9b8ecd116aefe58f230755c041ae1e9
CRs-Fixed: 3261499
2023-03-29 22:52:19 -07:00
Madan Koyyalamudi
7fd57b54dd Release 5.2.1.61F
Release 5.2.1.61F

Change-Id: If07a2ff2b8821e07abbc0309f589a0d5356e200a
CRs-Fixed: 774533
2023-03-29 19:55:06 -07:00
Madan Koyyalamudi
9d30ae6c8f Release 5.2.1.61E
Release 5.2.1.61E

Change-Id: I9b745e812cbc29fae39c12d7e286f6fbd5bcd34f
CRs-Fixed: 774533
2023-03-29 18:32:42 -07:00
Aditya Kodukula
3336cc1673 qcacld-3.0: Cache and tx power as part of cp station stats
In the driver, if CLUB_LL_STATS_AND_GET_STATION feature is
enabled, host requests Link Layer stats and station stats
from firmware periodically using a single WMI command.

Host then sends LL_STATS to userspace and caches station stats
in the adapter. Whenever userspace queries station stats, based
on the sta_stats_cached_timestamp, host returns cached stats
from adapter instead of sending a new WMI request.

The current issue, as part of station stats firmware also sends
connection_tx_power stats, which aren't cached into the adapter.
So, whenever userspace queries get_tx_power via nl commands,
host sends a WMI request to firmware for tx_power leading to
platform wakeups and power impacts.

To resolve this issue, cache the tx_power sent by firmware into
the adapter during station stats and return the cached value to
the user space.

Change-Id: Iaefc5629872431cbc6c24090b1edb6cebdad995a
CRs-Fixed: 3439323
2023-03-29 18:32:42 -07:00
Madan Koyyalamudi
db14660200 Release 5.2.1.61D
Release 5.2.1.61D

Change-Id: I440763ecdb6f70e184e4fe3d6b22baf6a0945d32
CRs-Fixed: 774533
2023-03-29 11:29:19 -07:00
Jianmin Zhu
79c8fc615d qcacld-3.0: Fix wrong self mac in pe session after roam to legacy
When roam from mlo to legacy, self mac need change from link addr to
interface addr.
When roam from legacy to mlo, self mac need change from interface addr
to link addr.
Self mac in vdev is updated by mlo_roam_update_vdev_macaddr already,
self mac in pe session need update too.

Remove useless self_mac in roam_offload_synch_ind.

Change-Id: I7bdfe35d5a219cb2c0eba30a4995babc8ac6199a
CRs-Fixed: 3442785
2023-03-29 11:29:18 -07:00
Madan Koyyalamudi
263cbf85ff Release 5.2.1.61C
Release 5.2.1.61C

Change-Id: Ie28e108c843ed11dca86a75d85dc324dced4ae1e
CRs-Fixed: 774533
2023-03-29 09:45:08 -07:00
Madan Koyyalamudi
d4294aa25c Release 5.2.1.61B
Release 5.2.1.61B

Change-Id: Ic9040b7388d2c6162830df8b1bed1894883fd602
CRs-Fixed: 774533
2023-03-29 02:59:21 -07:00
Madan Koyyalamudi
772ec1dc2b Release 5.2.1.61A
Release 5.2.1.61A

Change-Id: Idb75192579dba046394972928e8ab2c044aaafde
CRs-Fixed: 774533
2023-03-29 01:12:55 -07:00
Madan Koyyalamudi
af9e488c76 Release 5.2.1.61
Release 5.2.1.61

Change-Id: I63df85ead9ca14eb594ab7867f6fe34052a5c50d
CRs-Fixed: 774533
2023-03-28 04:34:46 -07:00
Madan Koyyalamudi
f5de86a061 Release 5.2.1.60Z
Release 5.2.1.60Z

Change-Id: If27c4edfad3a904d844443c27c7a64e2dd65b01b
CRs-Fixed: 774533
2023-03-28 01:26:51 -07:00
Madan Koyyalamudi
9173d56615 Release 5.2.1.60Y
Release 5.2.1.60Y

Change-Id: I039b4a665a57ddc2c3505a272489f1c340da63e0
CRs-Fixed: 774533
2023-03-27 23:37:08 -07:00
Vijay Raj
72dfd6a38f qcacld-3.0: Add events to modify Beacon miss disconnection logging
Disconnection is logged even if keepalive indication is
sent to host after firmware sending final beacon miss
event.

Add two new roam failure reason code to indicate roam
failure and send final beacon miss.

ROAM_FAIL_REASON_NO_AP_FOUND_AND_FINAL_BMISS_SENT: Indicate
roam failure when no ap is found and final beacon miss
is sent.

ROAM_FAIL_REASON_NO_CAND_AP_FOUND_AND_FINAL_BMISS_SENT:
Indicate roam failure when no candidate ap is found and
final beacon miss is sent.

Change-Id: I6d7a6034f8be5388dd35dd3c05fecfd40a8d888d
CRs-Fixed: 3437060
2023-03-27 23:37:08 -07:00
Madan Koyyalamudi
6156b97c2b Release 5.2.1.60X
Release 5.2.1.60X

Change-Id: I7e5f0081cf5f6629ea788273e110548175c2ec48
CRs-Fixed: 774533
2023-03-27 21:08:12 -07:00
Vinod Kumar Pirla
33b09f6d9b qcacld-3.0: Refactor vdev deinit of various components
Refactor the hdd_vdev_destroy() code to move deinit of various
components to new API.

Change-Id: I705c328e4296fa4bc939d5d8a6174a709ee751b1
CRs-Fixed: 3306914
2023-03-27 21:08:11 -07:00
Arun Kumar Khandavalli
c0abdd6342 qcacld-3.0: Move serialization call to inside the umac
umac serialization details should not be exposed to OSIF, currently
during the vdev deletion OSIF is directly calling serialization
resulting in layer violation.

Move the serialization call from OSIF to inside the umac.

Change-Id: Idd972f31b074d4281c5914c8e34deafd0d0da0d7
CRs-Fixed: 3397919
2023-03-27 21:07:59 -07:00
Vinod Kumar Pirla
812d01784f qcacld-3.0: Remove INIT_TX_RX_SUCCESS adapter flag
Remove the INIT_TX_RX_SUCCESS adapter flag as its
functionality is insignificant after DP componentization.

Change-Id: Ief86ab81c42b767113bde46252246fa8677588ce
CRs-Fixed: 3399329
2023-03-27 21:07:49 -07:00
Vinod Kumar Pirla
528031916a qcacld-3.0: Refactor VDEV opmode config during create
Refactor the hdd_vdev_create() API to move device mode
based VDEV config to a new API.
The new API calls required configuration functions
based on the device mode.

Change-Id: I54c5412577b70d92652cb16fcfb10e4d69e6f6fd
CRs-Fixed: 3445149
2023-03-27 21:07:40 -07:00
Madan Koyyalamudi
7ff7bac480 Release 5.2.1.60W
Release 5.2.1.60W

Change-Id: I36ad4a236f01d83670fd9523572034e4562294ec
CRs-Fixed: 774533
2023-03-27 19:33:15 -07:00
Karthik Kantamneni
e0cfa501a1 qcacld-3.0: Init-Deinit changes for WCN6450
Add changes to init-deinit WCN6450 from HDD layer

Change-Id: I0572fa109738326b469bd2b77b9e7c600ac672f8
CRs-Fixed: 3381728
2023-03-27 19:33:15 -07:00
Madan Koyyalamudi
51230dd9b8 Release 5.2.1.60V
Release 5.2.1.60V

Change-Id: Ia17e15dc5be8b4ee1287ef264ad21447b51d6a69
CRs-Fixed: 774533
2023-03-27 11:20:53 -07:00
Surya Prakash Sivaraj
83299d06fc qcacld-3.0: Add support for AKM25
Add support for FT-SAE-EXT-KEY AKM.

Change-Id: Ia013a81f67d204fed486ab130b3480654703f59c
CRs-Fixed: 3406625
2023-03-27 11:20:51 -07:00
Madan Koyyalamudi
9fee6143d7 Release 5.2.1.60U
Release 5.2.1.60U

Change-Id: I4ea22eb44f8f8b7c3cd3ccd3f94c0807c3afbcef
CRs-Fixed: 774533
2023-03-27 01:47:16 -07:00
Madan Koyyalamudi
c92b309cfa Release 5.2.1.60T
Release 5.2.1.60T

Change-Id: I2319ebbdfac46c74aa311703e31b95b98afab4e9
CRs-Fixed: 774533
2023-03-26 06:26:11 -07:00
Arun Kumar Khandavalli
ac1135e8ee qcacld-3.0: Configure SIFS burst post vdev create
Currently SIFS burst configuration is done from
osif layer though there isn't any dependency on
the osif layer.

Move the configuration of SIFS burst to post
vdev create.

Change-Id: Id1e6064164c0ea9d6ab5c5b1217c7c275fb45832
CRs-Fixed: 3297656
2023-03-26 06:26:11 -07:00
Madan Koyyalamudi
3b7e41c483 Release 5.2.1.60S
Release 5.2.1.60S

Change-Id: I6b7f0a3ab17b6855ae6ea5e204ed2f1840ea48ef
CRs-Fixed: 774533
2023-03-26 05:07:50 -07:00
Vinod Kumar Pirla
d49dbe42dc qcacld-3.0: Refactor ftm and rtt params init on vdev create
Introduce a new API to configure the rtt and ftm
parameters for the VDEV.

The API can later be used to configure the
rtt and ftm parameters on per VDEV of the adapter.

Change-Id: I9d7411fa76520b0a1876f38c27122a14a91826b7
CRs-Fixed: 3297665
2023-03-26 05:07:50 -07:00
Vinod Kumar Pirla
eb199818a9 qcacld-3.0: Refactor station context initialization
Introduce a new API and use it to configure
the station context of the adapter.

Change-Id: Iee2af060ec3c74782127bd0f202719b4bfe3dab2
CRs-Fixed: 3297636
2023-03-26 05:07:42 -07:00
Deeksha Gupta
ce1b422f26 qcacld-3.0: Move rssi and snr fields to per link
Currently, rssi, rssi_send, rssi_on_disconnect and snr members
are part of hdd_adapter.

Move following fields to link info
1) rssi
2) snr
3) rssi_on_disconnect
4) rssi_send

Change-Id: Iec76cdf51ed72adefacc4b77a6a2d1d8a28e96b6
CRs-Fixed: 3294941
2023-03-26 05:07:35 -07:00
Madan Koyyalamudi
e22d0da202 Release 5.2.1.60R
Release 5.2.1.60R

Change-Id: I7f9f68d06c5f4d378660e0b8bb43f5c12ab4c2f2
CRs-Fixed: 774533
2023-03-25 19:09:06 -07:00
Surya Prakash Sivaraj
d24935c6f4 qcacld-3.0: Set proper SSID in the external auth req
In SAE roam offload case, the SSID of the candidate is
retrieved from the roam candidate frame, and this SSID
is sent to the userspace for initiating SAE authentication.

However, if roam candidate frame is an MBSS beacon and the
candidate BSSID is present in non-tx profile, still the
SSID from tx profile is sent to the userspace, which leads
to authentication failure.

To fix this:
a) Save the BSSID in addition to the SSID during the roam
candidate frame extraction.
b) During roam auth offload event, get the SSID from the
scan cache only if the existing BSSID cache(filled in #a)
doesn't match with the BSSID received in roam offload event.

This would prevent the time expensive scan table lookup
operation for non-MBSSID cases.

Change-Id: Ib8cc0408cba7ccfc8c2b3e2d657f7b40f8a4d421
CRs-Fixed: 3437698
2023-03-25 19:09:05 -07:00
Madan Koyyalamudi
80f840d639 Release 5.2.1.60Q
Release 5.2.1.60Q

Change-Id: I742a315a2e53bd34a55132c965bd653f207f36cf
CRs-Fixed: 774533
2023-03-25 16:07:13 -07:00
Madan Koyyalamudi
0e81b157fb Release 5.2.1.60P
Release 5.2.1.60P

Change-Id: I024b3fd44097cdb55a4d2b649df168fe1b02e3b0
CRs-Fixed: 774533
2023-03-25 13:35:48 -07:00
Madan Koyyalamudi
d4b20c62ee Release 5.2.1.60O
Release 5.2.1.60O

Change-Id: Id7b63479dfef54e17faeee13eeb3a070d2f436d0
CRs-Fixed: 774533
2023-03-25 11:16:25 -07:00
Vinod Kumar Myadam
32de2c9044 qcacld-3.0: Fix to power save for non associated vdev in ml connection
In multi link connection, for partner link vdev power save
is not set if not associated.

So, check if the adapter is multi link instead of the vdev and
set power save for partner link vdev's as well.

Change-Id: I483a75ed0ab631e535d06d9bd4d08b8de986cd07
CRs-Fixed: 3417368
2023-03-25 11:16:25 -07:00