Commit graph

22,441 commits

Author SHA1 Message Date
Utkarsh Bhatnagar
cc1c447165 qcacld-3.0: Fill He_Op correctly for non-6ghz TDLS link
For the TDLS link, not established in 6ghz band, some
elements in HE OP IE such as basic mcs, bss color are
not filled properly. This might cause some IOT issue.
To fix it fill the params correctly.

It should be noted that VHT operation info should not
be included in HE OP IE if the frame carries the VHT OP
IE or sent in 2.4GHz.
For TDLS link connected in 5Ghz band, VHT OP IE is sent
in the setup confirm frame so no need to include that.

Change-Id: I9426ff3ca16461628b8ebe9710048dc68866dbf4
CRs-Fixed: 3003984
2021-08-17 09:55:38 -07:00
Madan Koyyalamudi
0ef5a8ffd9 Release 2.0.8.22U
Release 2.0.8.22U

Change-Id: I333f57e9afd8b0d59a834e5e9fd12448f4fb9e71
CRs-Fixed: 774533
2021-08-16 23:19:24 -07:00
Liangwei Dong
ef4bac4c13 qcacld-3.0: Fix 2.4G assoc request bandwidth info wrong
With the commit I630423de03636e6c4ca07638dce6966c3ca381f9,
driver will enable HT40 capability field in assoc request
frame to 2.4G AP. In some countries, the 40Mhz is disallowed
in 2.4G.
Fix by disable HT40 if regulatory disallow

Change-Id: I8a1e6b2c59c486373c49cba0e3c635b34f443e1c
CRs-Fixed: 3012747
2021-08-16 19:08:52 -07:00
Madan Koyyalamudi
abfe455c6f Release 2.0.8.22T
Release 2.0.8.22T

Change-Id: I92c559ba7af02bc666c82cf40ed2e1eca1413722
CRs-Fixed: 774533
2021-08-16 07:53:02 -07:00
Vevek Venkatesan
94821eb41e qcacld-3.0: call CDP API for pkt_log_exit from CDS layer
Once pkt_log_con_service success in cds_pre_enable,
in case of any further failure, pkt_log_exit cleanup is
not done, so calling CDP interface API for pkt_log_exit.

Change-Id: Ibddc99fb47109a73de095f068694b2548849f14d
CRs-Fixed: 2978390
2021-08-16 07:53:02 -07:00
Madan Koyyalamudi
2dec69384d Release 2.0.8.22S
Release 2.0.8.22S

Change-Id: I3900df7b832b5d97d8d90924b7f8a1f192bb8012
CRs-Fixed: 774533
2021-08-16 03:30:25 -07:00
Deeksha Gupta
e40d662a9b qcacld-3.0: Reset rand mac addr filter after tx frame cancel
Currently, If supplicant sends tx_mgmt request with random
mac_addr then driver adds the random mac_addr and sets this
random mac_addr to firmware via
WMI_VDEV_ADD_MAC_ADDR_TO_RX_FILTER_CMDID command. Driver waits
for tx_ack or tx cancel wait to complete and then remove the
cookies and start timer to delete the random mac_addr.
In case after receiving tx_ack, driver removes the cookie and
starts timer and before timeout supplicant sends the
tx_cancel_wait request. But driver can't update the timer
duration as the cookie was already deleted as part action frame
tx completion.

Fix is driver will remove the cookie with below condition:
1. If driver receives the tx_ack and the wait duration = 0 then
no need to start the timer, remove the cookie and also remove the
random mac_addr from firmware
2. If driver receives the tx_ack and the wait duration != 0 then
start the timer
3. If driver receives tx_cancel_wait then stop the timer and
remove the randon mac_addr from firmware
4. If timeout happens then remove all the cookies for the random
mac_addr and also remove the random mac_addr from firmware

Change-Id: I3e227213239e865582e5d8674260d049c437aa9b
CRs-Fixed: 3002851
2021-08-16 03:30:24 -07:00
Madan Koyyalamudi
6e93282918 Release 2.0.8.22R
Release 2.0.8.22R

Change-Id: I716cd9d1d6c691e66c7deac6d89dc732bccc945c
CRs-Fixed: 774533
2021-08-13 15:12:24 -07:00
Jianmin Zhu
00288620ea qcacld-3.0: Fix data stall when connect a special SAP
For SAP with special OUI, if DUT STA connect it with 11ax mode with ht
control enabled, SAP can't decode unicast pkt from DUT.

Fix it by clearing ht control bit in he cap when send peer assoc cmd
to firmware when connect such IOT AP with 11ax mode.

Change-Id: Icf9d6d7ddc370c79e615a713c76606e7fd195fd3
CRs-Fixed: 3004761
2021-08-13 15:12:24 -07:00
Madan Koyyalamudi
646a4de169 Release 2.0.8.22Q
Release 2.0.8.22Q

Change-Id: I642a6249e8794e89636754526bbcf36601e786bb
CRs-Fixed: 774533
2021-08-13 01:09:16 -07:00
Pragaspathi Thilagaraj
924a257d28 qcacld-3.0: Add additional debugs in PMKSA caching path
Add additional debugs in pmksa caching path.

Change-Id: I5e412c60c3455c1a40d6f742fb6536b9ac621748
CRs-Fixed: 2978751
2021-08-13 01:09:16 -07:00
Madan Koyyalamudi
ee9393e91a Release 2.0.8.22P
Release 2.0.8.22P

Change-Id: Ib4332dccdb783e013693d9e5e0a2c0bcc6b2fca0
CRs-Fixed: 774533
2021-08-11 00:15:51 -07:00
Utkarsh Bhatnagar
ba83af2b77 qcacld-3.0: Fill Chan width for 6Ghz
Incase of non-6ghz, the peer width is
updated while extracting HT and VHT
capability. For 6Ghz, the HT and VHT
capabilities may not be present and
because of which the peer channel width
gets updated as zero (20 Mhz).
To fix this, fill the channel width for
peer if session is 6ghz and peer supports
HE Capabilities.

Change-Id: Ie4d8f3a3a364af2c47e6b3d7309ee1287652ae06
CRs-Fixed: 3010063
2021-08-11 00:15:51 -07:00
Madan Koyyalamudi
cfa2a77b91 Release 2.0.8.22O
Release 2.0.8.22O

Change-Id: I6113d967352088ce256adbf9e9d5126989b36f5e
CRs-Fixed: 774533
2021-08-10 13:55:22 -07:00
Arun Kumar Khandavalli
ca2b90a35f qcacld-3.0: Reset the wiphy suspended flag at the end of SSR
During the wakeup sequence if there is any firmware recovery
the resume would be rejected and the flag "is_wiphy_suspended"
would not be reset in the system resume.

So, at the end of the SSR reset the flag since the system has
already resumed completely.

Change-Id: I86b0adade1dfb5710df2f86a3922320308407fe9
CRs-Fixed: 3005606
2021-08-10 13:55:21 -07:00
Madan Koyyalamudi
0efd33bb4c Release 2.0.8.22N
Release 2.0.8.22N

Change-Id: Id2255a12648f396e3350590f147ca24f91f1156f
CRs-Fixed: 774533
2021-08-09 12:50:12 -07:00
Srinivas Dasari
61e712f45b qcacld-3.0: Revert "Move cp stats to scheduler thread from kwork"
This reverts change Id8134003e6f7a3e0368b20c496f650e0b7025b9e

Moving cp stats to scheduler thread is breaking the
synchronization in stats collection. Currently, when a get stats
command is issued from framework, host driver sends the same to
firmware and wait for both llstats and get_station related stats.
The expectation is to receive get_stats first and then llstats.
Host driver has a wait for the last llstats event to return the
stats to userspace. As the cp stats(get_station stats) are moved
to scheduler thread, the order of these events can't be ensured
as llstats are still running in kworker thread. llstats event gets
processed before cp stats mostly and stats are returned
immediately to framework. Framework may issue the get stats
command again and the same is sent to firmware, which may result
in synchronization issue in firmware as well.
Moving llstats also to scheduler thread may not be optimal as these
are aggressive and can be queried by framework multiple times with
a milliseconds gap.
So, move back the cp stats to kworker thread to maintain
synchronization.

Change-Id: I8dc518f0de37e7cc203cb1f6e67045d74b304d93
CRs-Fixed: 3002534
2021-08-09 12:50:12 -07:00
Madan Koyyalamudi
ab8e1d43bf Release 2.0.8.22M
Release 2.0.8.22M

Change-Id: I16ed40b275ab47c529eebe18c9cd2d3516cf2ccd
CRs-Fixed: 774533
2021-08-09 10:52:33 -07:00
Utkarsh Bhatnagar
6ce2ad98c2 qcacld-3.0: Fill TDLS peer cap for add sta correctly
Fill TDLS 6Ghz peer capability correctly in Add STA
so that carrect Peer capability should be sent in
Peer Assoc.

Change-Id: I3eb6c387286b86e07c33be4751501b356b24ff68
CRs-Fixed: 3008407
2021-08-09 10:52:33 -07:00
Madan Koyyalamudi
71e9a4e0c9 Release 2.0.8.22L
Release 2.0.8.22L

Change-Id: Ifacb2af0071820c9739b66d8f21d901ae6220808
CRs-Fixed: 774533
2021-08-09 01:50:03 -07:00
Jyoti Kumari
2af6b3c1b2 qcacld-3.0: Reset twt active command if ack fail
Reset twt active command if ack fails due to firmware internal
error.

Change-Id: Ic980314261ab4f6deb437b36e525ea59c286eee2
CRs-Fixed: 2997509
2021-08-09 01:50:03 -07:00
Madan Koyyalamudi
249d163e43 Release 2.0.8.22K
Release 2.0.8.22K

Change-Id: I9854d76b25592ad6aa883224b13a6bc5508ad93a
CRs-Fixed: 774533
2021-08-08 06:40:46 -07:00
Pragaspathi Thilagaraj
ee2255dcd2 qcacld-3.0: Update pmk cache only for connected BSSID
In OKC enabled cases, when multiple pmk entries exist, the user
space sends set_pmksa command for BSSID other than the connected
bssid. In that case driver updates the global pmksa cache with
the new PMK received for the non-connected BSSID. This results
in invalid pmk sent to firmware.

To avoid this, update the pmk cache only for connected BSSID.

Change-Id: I006595ea5b913d439007a8fb9d767454a71eeac1
CRs-Fixed: 2937182
2021-08-08 06:40:46 -07:00
Madan Koyyalamudi
8518397c6c Release 2.0.8.22J
Release 2.0.8.22J

Change-Id: Iccc1bf646c4f5a2e51507b2d02ad0f591a53e1e2
CRs-Fixed: 774533
2021-08-05 08:10:02 -07:00
Yeshwanth Sriram Guntuka
af916d99da qcacld-3.0: Disable FISA history for debug builds
Memory allocation for FISA history could possibly
happen from the cnss prealloc pool.

Fix is to disable FISA history until the allocation
is moved to DP prealloc.

Change-Id: I6c2e42d129d6642601ae59e08294c214907f5faf
CRs-Fixed: 3006138
2021-08-05 05:17:46 -07:00
Madan Koyyalamudi
2762365929 Release 2.0.8.22I
Release 2.0.8.22I

Change-Id: I8749b7087faf05eec4adc693893bcdaae15746ca
CRs-Fixed: 774533
2021-08-04 18:19:38 -07:00
Kiran Kumar Lokere
922096016b qcacld-3.0: Support for broadcast TWT configuration
Add configuration support for broadcast TWT parameters.

Change-Id: I066f4509e094c81f51eda4cc08a432beab4e0e57
CRs-Fixed: 2924717
2021-08-04 18:19:38 -07:00
Madan Koyyalamudi
a0a414ea00 Release 2.0.8.22H
Release 2.0.8.22H

Change-Id: I86930b6c6909566874e6171dcb46fde17477de5b
CRs-Fixed: 774533
2021-08-04 08:43:38 -07:00
sheenam monga
969f23e230 qcacld-3.0: Don't process csa request immediately for P2P GO
If STA is connected to one channel and p2p is up on same channel,
and sta moves to another channel then p2p go also tries to switch
to sta channel immediately in case g_enable_go_force_scc is enabled.
But Go can't send channel switch announcement as go sends 1.5 sec
of NOA during sta connection with new channel due to which p2p may
get disconnect.

Fix is to not try to move to sta channel immediately. P2P Go will
try to switch channel only after NOA completion which is 1.5 seconds.
Add delay work queue of 3 seconds to handle worst case scenario when
BT is on and P2P tries to switch channel.

Change-Id: I557940dfc79da4922694ed24a573e41aae75c09a
CRs-Fixed: 2989207
2021-08-04 08:43:38 -07:00
Madan Koyyalamudi
5a32224a78 Release 2.0.8.22G
Release 2.0.8.22G

Change-Id: Ib302b65e4316c0cd6936758dd490c302d2590d17
CRs-Fixed: 774533
2021-08-04 06:00:40 -07:00
Yeshwanth Sriram Guntuka
9e965087b1 qcacld-3.0: Handle error cases in ipa_uc_loaded_handler
In the scenario where ipa connect pipes fails in the
wlan_ipa_uc_loaded_handler API, uc_loaded flag is not
reset. As a result of this, in wlan_ipa_uc_ol_deinit,
ipa_tx_buf_smmu_unmap and ipa_wdi_disconn_pipes APIs are
invoked incorrectly.

Fix is to set the uc_loaded flag to true only if connect
pipes and tx_smmu mappings are successful in
wlan_ipa_uc_loaded_handler. Also, initialize the uc_op_work
in wlan_ipa_uc_ol_init prior to the uc_loaded check to
avoid a possible race condition which could also result
in the similar issue as above.

Change-Id: I119170413cb9b5e03ec476c9a69d9effaa460c01
CRs-Fixed: 2940833
2021-08-04 00:44:38 -07:00
Madan Koyyalamudi
4469ebfb19 Release 2.0.8.22F
Release 2.0.8.22F

Change-Id: Ie95ecfeecfd5e59982ab4c0893cdb4df927b295e
CRs-Fixed: 774533
2021-08-03 15:11:49 -07:00
Kiran Kumar Lokere
5df68c50ae Revert "qcacld-3.0: Fix the TWT suspend command parse failure"
This reverts Change-Id: I6078c2e199ed13433c3dea532e3bbe396dd6ad8a

Change-Id: Id215025fc81346259932063f3203f67763690cac
CRs-Fixed: 3001632
2021-08-03 15:11:49 -07:00
Madan Koyyalamudi
4b9e7b8bbb Release 2.0.8.22E
Release 2.0.8.22E

Change-Id: I12991d7a71d2d3055885935d0d22457cc14fe30c
CRs-Fixed: 774533
2021-08-03 04:10:59 -07:00
Deeksha Gupta
245f632196 Revert "qcacld-3.0: Remove radar event if dfs_channel_switch is disable"
This reverts commit I977d93e47ee35026662d55a8e292c8790ddc7d31.

Change-Id: Iaadad6b737243228974ed75b126bf4a245313727
CRs-Fixed: 3002003
2021-08-02 21:53:43 -07:00
Madan Koyyalamudi
f083549ee6 Release 2.0.8.22D
Release 2.0.8.22D

Change-Id: I5e2a16e76166015656b7b1126891552930997572
CRs-Fixed: 774533
2021-08-02 12:26:47 -07:00
Srinivas Dasari
2801c66765 qcacld-3.0: Increase the NDP_END wait timeout to 4 seconds
Currently, host driver expects NDP_END indication from firmware
within 2 seconds after sending request to firmware. Driver shall
timeout and cleanup the corresponding NDP entry if no response is
received within 2 seconds. But firmware may take upto 2.5 seconds
to exhaust the NDP_END frame retries.
So, increase the timeout to 4 seconds to accommodate these retries
and to be inline with current NAN_DISABLE timeout.

Change-Id: Ida1abc25b4ff64aea810c88dbf36f9577b23ffd8
CRs-Fixed: 3002176
2021-08-02 12:26:47 -07:00
Yeshwanth Sriram Guntuka
946783ce54 qcacld-3.0: Don't reset tcp_adv_win_scale if any adapter is conn
In connected STA scenario, tcp_adv_win_scale is reset to 1
on runtime suspend. If any TCP connection gets initiated, the
SYN packet will cause a runtime resume. The bus bandwidth
work gets scheduled ~100msecs after resume is done. This
can result in a smaller TCP window value to get used for
the TCP connection initially and the window size does not
increase even with tcp_adv_win_scale updated to 2 as part
of bus bandwidth work.

Fix is to not reset the tcp_adv_win_scale config if any
adapter is connected on runtime suspend.

Change-Id: If10a1e1fd0efc8217f8136a60cfb01b03485a21d
CRs-Fixed: 2969041
2021-08-02 12:26:43 -07:00
Madan Koyyalamudi
db7bc757cd Release 2.0.8.22C
Release 2.0.8.22C

Change-Id: If650db653046ce3284e867c23868c0294ff2951c
CRs-Fixed: 774533
2021-07-29 07:21:23 -07:00
sheenam monga
9351a6847c qcacld-3.0: Convert nl80211 band to reg band
Currently host is sending nl80211 band to get curr
chan list but enum values are different for 6G, so
reg_get_band_from_cur_chan_list may not consider 6G
band even userspace sends 6G band in vendor command.

Fix is to convert nl80211 band to reg band to get correct
usable channel list in case of 6G.

Change-Id: I51b86c5f4f83b764847756a20a911d9b8af75b56
CRs-Fixed: 2973283
2021-07-29 07:21:22 -07:00
Madan Koyyalamudi
3fdb277690 Release 2.0.8.22B
Release 2.0.8.22B

Change-Id: I479139af3182d539615a351987a5f51a8454dee2
CRs-Fixed: 774533
2021-07-29 05:41:52 -07:00
sheenam monga
454fbbf7ac qcacld-3.0: send nl80211_chan_width instead of bw value
Currently, host sends bw value to upper layer in response
of GET_USABLE_CHAN command. but upper layer requires bw
value in form of nl80211_chan_width enum and considering
bw value as invalid and resulting into 0 bw.

Fix is to convert bw value to nl80211_chan_width enum
and send to upper layer.

Change-Id: I6ae523c35561120c28b08f3aa9782bb749337c8c
CRs-Fixed: 2957062
2021-07-29 05:41:52 -07:00
sheenam monga
4429584c52 qcacld-3.0: Use dynamic memory allocation instead of static
In function __wlan_hdd_cfg80211_get_usable_channel use
dynamic memory allocation for get_usable_chan_res_params
structure to avoid increase of stack frame.

Change-Id: Ib3b5686a7af068fd1d0435bc24eda5d9e57bf1d7
CRs-Fixed: 2950726
2021-07-29 05:41:45 -07:00
sheenam monga
e68ec2e798 qcacld-3.0: Add fature flag to get usable channels
Add feature flag for the feature to get usable channels.

Change-Id: I6dd2360284c395747b55f806caab2a5a44089866
CRs-Fixed: 2947180
2021-07-29 05:41:38 -07:00
sheenam monga
b0e4624557 qcacld-3.0: Send response of SUBCMD_USABLE_CHANNELS
Send response of SUBCMD_USABLE_CHANNELS to upper layer.

Change-Id: I3f7d0a9f28fcf60141fec86561524882ce4e3095
CRs-Fixed: 2946928
2021-07-29 05:41:32 -07:00
sheenam monga
65f0b4a87a qcacld-3.0: Handle command to get usable channels
Handle command to get usable channels for
provided mode, band and con filter.

Change-Id: I20133ea1a93c9153ec7252dcd34a0a160715d8a6
CRs-Fixed: 2946908
2021-07-29 05:41:24 -07:00
Madan Koyyalamudi
4d0d5fe197 Release 2.0.8.22A
Release 2.0.8.22A

Change-Id: I35b09833a1eba11c313015f72ed5bb6b21dbd1c1
CRs-Fixed: 774533
2021-07-28 21:37:22 -07:00
Liangwei Dong
f4e6dd2f71 qcacld-3.0: Fix channel width mismatch in ROAM SYNC
Some AP has different HT ch width setting in beacon/assoc resp.
FW uses assoc response to decide the BW of HT AP in Roaming sync.
Fix by overwrite beacon HT BW setting from assoc resp frame to
keep sync with FW.

Change-Id: I784e4b1735f4f217713f65c30092bac2ad6cb698
CRs-Fixed: 2995520
2021-07-28 21:37:22 -07:00
Madan Koyyalamudi
ca234dc708 Release 2.0.8.22
Release 2.0.8.22

Change-Id: Ibdb50e663a5181c6722f4e53410822f253a8cf85
CRs-Fixed: 774533
2021-07-28 17:00:29 -07:00
Balaji Pothunoori
9f440d1d00 qcacld-3.0: initialize color bss values during channel change
Currently color bss is disabled if color bss is set before
channel change.

This change is to reinitialize color bss values to trigger
color bss detection in firmware.

Change-Id: If5688519e147b2b8a88b622090861ba4cac9067f
CRs-Fixed: 2992617
2021-07-28 17:00:28 -07:00