Commit graph

21,177 commits

Author SHA1 Message Date
Wu Gao
6cbd4faef6 qcacld-3.0: Update nla policy about cfr configurations
It uses policy of wlan host to check settings from user space in
msm-5.4, which causes user application failed to trigger cfr vendor
command. This change updates nla policy of cfr and let it compatible
with msm-5.4.

Change-Id: Ia7e9bb1e12b4e4f586abb650fe52a62292b0f11d
CRs-Fixed: 2819321
2020-11-18 17:43:18 -08:00
snandini
f48275fc58 Release 2.0.8.4A
Release 2.0.8.4A

Change-Id: I9cb767c07a329d2905d26b61ee90ab2c66f3d43c
CRs-Fixed: 774533
2020-11-18 14:41:00 -08:00
Jinwei Chen
7866287981 qcacld-3.0: Bypass FISA if IPA RX packet rerouted to host
If IPA RX hit back pressure, FW will reroute RX frames to host
by REO2SW1 ring(reo_destination_indication 2), this might introduce
FISA RX ring mismatch issue.

Bypass FISA if IPA RX packet rerouted to host by
reo_destination_indication 2.

CRs-Fixed: 2820235
Change-Id: Ife8f2168e1942204cfc66a2a135cb93c9a1e9910
2020-11-18 14:41:00 -08:00
Kiran Kumar Lokere
7e4220459b qcacld-3.0: Fix LDPC setting for HE connection
Fix the issue with LDPC setting in HE caps sent to FW.

Change-Id: Idc7965d81f32cac5f848b9ade8fc367d27a70e83
CRs-Fixed: 2818299
2020-11-18 14:40:56 -08:00
snandini
9fd6775a55 Release 2.0.8.4
Release 2.0.8.4

Change-Id: I132100905a83b4c9eaba309bb716dfd2168daeec
CRs-Fixed: 774533
2020-11-18 13:51:47 -08:00
Jyoti Kumari
e22c1947b4 qcacld-3.0: Update nw type for tdls peer after channel switch rsp
When firmware sends wma_csa_offload_handler() event, peer should
switch to new channel and update network type. But only frequency
is getting updated, network type is old.

Add check to update network type based on channel frequency

Change-Id: Icd70823f98cfd528863cfb9ec1c2bf5e78e9912b
CRs-Fixed: 2813847
2020-11-18 13:51:47 -08:00
snandini
1fc261e982 Release 2.0.8.3Z
Release 2.0.8.3Z

Change-Id: I996f73b564a6356ced2fdbc78f47f299eb3aa599
CRs-Fixed: 774533
2020-11-18 10:02:25 -08:00
Deeksha Gupta
62515940d1 qcacld-3.0: Add cfg80211_stop_iface API to stop P2P Go after SSR
Currently, In P2P Connection, After SSR P2P CLI is
disconnected but P2P GO is still showing connected
with the P2P CLI in kernel 5.4. Beacause cfg80211_ap_stopped
API does not work for kernel 5.4.

Add the cfg80211_stop_iface API to stop P2P GO after
SSR in kernel 5.4.

Change-Id: I94adadb0b3314a571f6a16a78285d444c007d9d5
CRs-Fixed: 2802830
2020-11-18 10:02:25 -08:00
snandini
20ecf638e8 Release 2.0.8.3Y
Release 2.0.8.3Y

Change-Id: If26ee4cd4dee7f3df018f73838a904b4999c1a44
CRs-Fixed: 774533
2020-11-18 02:10:24 -08:00
Abhishek Ambure
938a95686b qcacld-3.0: Send disassoc cnf if host failed to send disassoc to FW
Problem scenario:
1) Host gets Firmware down indication and stops all timers.
2) While processing association completion, host sends disassoc if
   user changed reg domain during association and new channel falls
   out of current reg domain.
3) Host fails to send disassoc to fw as WMI is in stop state due to SSR
4) Host doesn't check wmi status for disassoc tx and on failure depends
   on disassoc ack timer to complete disassoc cnf.
5) As host stops timers on firmware down indication, disassoc ack timer
   doesn't trigger and host fails to complete disassoc cnf action. Which
   lead to stuck the vdev state machine at suspend down and peer refs
   remains undeleted.

To fix this issue check the status of sending the disassoc, and if the
disassoc failed to send then perform the follow-up actions that are
normally performed upon receipt of the disassoc confirmation.

Change-Id: Ic2b88cfcbcb755a869ee281be4e1e8a9cec8299b
CRs-Fixed: 2816503
2020-11-17 23:38:15 -08:00
snandini
58ff27b0e7 Release 2.0.8.3X
Release 2.0.8.3X

Change-Id: I2c04efd35d86fd0e4aa6ef676ac53559a4d5c404
CRs-Fixed: 774533
2020-11-17 06:00:13 -08:00
Bapiraju Alla
b60deaf55f qcacld-3.0: Rate limit the logs in SAP data Tx path
Currently, the logs in SAP data Tx path are not rate limited.
If there are any error scenarios in throughput tests, this may endup in
continuous logging of the error messages.

To avoid this rate limit the error logs in SAP data Tx path.

Change-Id: I062b52c90e1e7ed85e74cc774f7817159f98eee6
CRs-Fixed: 2811093
2020-11-17 06:00:13 -08:00
snandini
2472b9f4a9 Release 2.0.8.3W
Release 2.0.8.3W

Change-Id: I652b117b9019a7abbf208e0ebebb1c1cf71794ea
CRs-Fixed: 774533
2020-11-16 02:26:25 -08:00
Jianmin Zhu
839b2a580d qcacld-3.0: Fix LFR3 roaming and NUD race condition issue
If data stall happens, both LFR3 roaming and NUD may happen,
if LFR3 happens first, updated connected bssid, NUD handler will
add new bssid to blacklist and trigger roaming again by mistake.

Fix: Once roaming succeed, reset NUD status to NUD_NONE to finish
current NUD cycle, but don't zero gw mac addr since roaming does't
update gateway.

Change-Id: I03685ca21348444d929e042f12dc3a837ca51940
CRs-Fixed: 2818785
2020-11-15 23:30:59 -08:00
snandini
d47cf48368 Release 2.0.8.3V
Release 2.0.8.3V

Change-Id: I8979ab03d1c44d18cc6328d003d02a15823279a5
CRs-Fixed: 774533
2020-11-15 12:56:52 -08:00
Jyoti Kumari
3ef62b9741 qcacld-3.0: Fix vdev null pointer access in disconnect handler
Vdev is NULL before completion of hdd disconnect process

Use hdd_objmgr_get_vdev() to get vdev reference and then pass it
to ucfg_if_mgr_deliver_event(). After using, release the
reference.

Change-Id: I683851a2b7b4376440637edc70b7fdaf71acfbd0
CRs-Fixed: 2812480
2020-11-13 04:55:44 -08:00
snandini
a0b773f23d Release 2.0.8.3U
Release 2.0.8.3U

Change-Id: I0bbcc31c0255974fb4f730ffce60e86d557eb87b
CRs-Fixed: 774533
2020-11-13 01:22:04 -08:00
Paul Zhang
02e0637710 qcacld-3.0: remove dup invoking sap_init_dfs_channel_nol_list
When enable SAP, it invokes function sap_init_dfs_channel_nol_list
twice.
1\  __wlan_hdd_cfg80211_do_acs
    -> wlan_hdd_cfg80211_start_acs
    -> wlansap_acs_chselect
    -> sap_init_dfs_channel_nol_list
2\  wlansap_start_bss
    -> sap_fsm
    -> sap_fsm_state_init
    -> sap_init_dfs_channel_nol_list

Remove the function in 1\ path.

Change-Id: I8c0bda1fafadc463f6594e0f4c127e9cf98bf4de
CRs-Fixed: 2808989
2020-11-13 01:22:04 -08:00
snandini
2cd645966d Release 2.0.8.3T
Release 2.0.8.3T

Change-Id: Id5a4ed00bd82f370c40200ef9205674b6b6f6cef
CRs-Fixed: 774533
2020-11-12 19:07:23 -08:00
Rajeev Kumar
21ae228f0f qcacld-3.0: Add debug log when cached get station stats is returned
As part of power optimization to club LL and get stats request add
a debug log to indicate when cached get station stats is getting
returned to user space.

Change-Id: Id1f80e1589c1913d0129b435cd2bdbd807800230
CRs-Fixed: 2814701
2020-11-12 19:07:23 -08:00
snandini
6f5d914255 Release 2.0.8.3S
Release 2.0.8.3S

Change-Id: Ib0bec3dbe9130b86bcfdffb7a781e9ea60936089
CRs-Fixed: 774533
2020-11-12 13:11:59 -08:00
Rakesh Pillai
ddbd5137c5 qcacld-3.0: Fix the UDP qos upgrade logic
The UDP qos upgrade is skipped currently if the setting
from userspace is set to best effort. Also with the current
logic the priority of packets at "best effort" gets
downgraded to "background".

Fix the UDP qos upgrade logic to take care of using
the "background" priority value as a trigger to skip
UDP qos upgrade.

Change-Id: I5111a930995ddd71b082db95440ed778f09a3cba
CRs-Fixed: 2816426
2020-11-12 13:11:59 -08:00
snandini
c536083389 Release 2.0.8.3R
Release 2.0.8.3R

Change-Id: I72cdba4df570b05f40f501fb93d36331c34dc0e6
CRs-Fixed: 774533
2020-11-12 05:16:59 -08:00
Srinivas Dasari
e8be05787b qcacld-3.0: Consider peer mac addr also for duplicate frame detection
Currently, sequence number of the authentication frame is cached
to detect if the same frame is received again. But in SAP case,
it's possible to get authentication frame from two different
clients with the same sequence number. Host driver drops auth
frame from the second station as it is considered as a
duplicate frame. Though the driver drops the frame only if it's
a retry, it's possible to get auth frame from second client with
same sequence number and retry bit set.
Cache the client mac address along with sequence number to
avoid this.

Change-Id: I194adc9e0f90d074aef50340d2cd6c7b138cc9b5
CRs-Fixed: 2815784
2020-11-11 21:35:48 -08:00
snandini
cbda952272 Release 2.0.8.3Q
Release 2.0.8.3Q

Change-Id: Iaa36bb23da7caf52ddf51df996e6572e72774270
CRs-Fixed: 774533
2020-11-11 17:29:08 -08:00
Utkarsh Bhatnagar
e0a5c68700 qcacld-3.0: STA SAP concurrency changes for DFS channel
Previously, if STA is connected to DFS channel and SAP starts on
Non-DBS HW, then it is forced to start on DFS channel with BW 160 Mhz
irrespective of BW on which STA is connected without CAC.
Even after STA disconnects, SAP remains on DFS channel with BW 160Mhz.
So, scan will be disabled and STA cannot be connected on any channel
other than DFS channel.
If STA is connected on non-DFS channel on 5 GHz and SAP starts, it
will start on non-DFS channel as primary channel with BW 160 Mhz
without CAC. Also, scanning was also allowed when SAP is started with
BW 160 Mhz. This might violate regulatory in case radar comes up while
scanning.
Standalone SAP on DFS channel was not allowed.

To fix this, Force set SCC for non-dbs HW, this way standalone SAP
can come on DFS channel but scan will be disabled in such case and
STA cannot be connected other than DFS channel.
In case STA gets connected to dfs channel in non-dbs HW, then sap
starts only on STA channel with force SCC with BW
MIN(sta_chan_width, CH_WIDTH_80MHZ).
Afterwards, if STA disconnects, restart the AP with BW CH_WIDTH_80MHZ
on safe channel. Scan will be allowed as the DFS master capability is
offloaded to AP with which STA is connected on DFS channel.
Also, if standalone sap starts, then STA connects to DFS channel then
SAP will restart with STA channel frequency and Channel width
MIN(sta_chan_width, 80MHZ).
If standalone SAP starts and then STA connects to non-dfs AP or SAP
starts when STA is already connected to non-DFS AP, then ch_width is
MAX(sta_chan_width, 80MHZ) (5 Ghz) or 20 Mhz (2.4 Ghz).
If STA disconnects during SAP+STA on non-DFS, SAP won't restart unless
the STA was connected on BW 160 Mhz.

Change-Id: I1cebfc79f170c1e4e2710ed747ec804df3d8b441
CRs-Fixed: 2809255
2020-11-11 17:29:08 -08:00
gaurank kathpalia
ba8ff0781b qcacld-3.0: Filter out the 6ghz chan freq from valid freq list
Currently the driver does not have a support to
filter out the 6ghz frequencies from the valid freq
list, and hence there is a high chance of selecting
the 6ghz freq as an operating freq for SAP, which
the legacy clients won't be able to scan.

Fix is to add a support for filtering out the 6ghz
frequencies from the valid freq list.

Change-Id: I3c32b4c8c5b93eae04d49d2d5b6bd4ec9852c2a9
CRs-Fixed: 2808350
2020-11-11 17:29:04 -08:00
snandini
0e1ae67edd Release 2.0.8.3P
Release 2.0.8.3P

Change-Id: I36f22d02adbdc92c4b96875c417bc322edebf522
CRs-Fixed: 774533
2020-11-11 14:41:39 -08:00
Abhinav Kumar
7e797fe14f qcacld-3.0: Enable roaming after start bss command
In case of STA + SAP/GO, Driver fist disable roaming on all
adapters before bss start and enable roaming after start bss
(SAP/GO) in case of failure/success.

Due to commit I4870c69a0e0ca1e8cad734a591f09e402b7a32fa,
Driver fails to re-enable roaming after failure/success
of SAP/GO process.

Fix is to enable roaming after start bss in case of
failure/success.

Change-Id: Ibe90f0685f41984a5841859ea96834f7760ff9a1
CRs-Fixed: 2811306
2020-11-11 14:41:39 -08:00
Ananya Gupta
8ee9b29721 qcacld-3.0: Retry sending packets in htc queue
A race condition is observed when runtime suspend is aborted
due to pending TX packets but context switch happened and pm_state
did not revert to active state yet. In parallel, WMI_PEER_DELETE
command is queued but not sent as pm_state is still in suspending
state.
To fix this, schedule HTC queue kicker work to resend pending
commands again after dp_runtime_suspend aborts due
to pending TX packets.

Change-Id: I6d2c4140a4635c0aec304f48b15fb2b539ac39ea
CRs-Fixed: 2813657
2020-11-10 17:05:24 -08:00
snandini
9789ee98aa Release 2.0.8.3O
Release 2.0.8.3O

Change-Id: I0a36471df64a98c8035f8a16ba34778f399f8eb1
CRs-Fixed: 774533
2020-11-10 14:23:11 -08:00
Rakesh Pillai
e345aafd34 qcacld-3.0: Create adapter features update work for all interfaces
Currently the adapter features update work is created only
for the STA types of interfaces, since this feature is only
used for STA mode. But this can cause an issue when a SAP
interface is changed to STA runtime, since the workqueue will
not be initialized (since create adapter was of SAP type) but
it will be attempted to be destroyed (since the adapter is of
STA type) during the cleanup of adapter.

The creation/destruction of this workqueue cannot be done
in the start/stop adapter, since the rtnl lock will be held
during this operation and the cancelling of the adapter features
workqueue can cause it to wait on rtnl lock, leading to a
possible scenario of a deadlock.

Hence as a mitigation for this issue, we create the adapter
features update workqueue for all the interfaces and clean it
up for all the interfaces as well.

Change-Id: I598480e9f248f50e46764f7f32b876a8efaeee8d
CRs-Fixed: 2811934
2020-11-10 14:23:11 -08:00
Sachin Ahuja
359d8db8d2 qcacld-3.0: Add the QCN IE in assoc response
Currently if peer client supports the MCS12 and
MCS13 support in assoc request then also DUT(as SAP)
is not sending the QCN IE in assoc response.
This results into the low Tput as peer client uses
only rates till MCS11.

To fix this issue, send the QCN IE with MCS12 and
MCS13 support in assoc response if peer client
supports it.

CRs-Fixed: 2814863
Change-Id: I17c16705b5a015e1dd22849212a19365ac78acaa
2020-11-10 14:23:05 -08:00
Rakesh Pillai
464a2892ec qcacld-3.0: Enable support to send ICMP pkt to FW
Enable the support to send ICMP pkt to FW at a
regular interval.

Change-Id: I0b8828b31550973590dd222cc1fbaee52daaf88a
CRs-Fixed: 2813173
2020-11-10 14:23:00 -08:00
Rakesh Pillai
31bddce966 qcacld-3.0: Mark packets to be sent to FW in control block
Classify the ICMP request packet and mark it to be
sent to the firmware in the packet control block.

Change-Id: Ic48123864bfc206c0659003b75238cacedb96134
CRs-Fixed: 2813173
2020-11-10 14:22:57 -08:00
snandini
91aeb118fd Release 2.0.8.3N
Release 2.0.8.3N

Change-Id: I2349fee2313a091bd23af338caa4d3153574cee9
CRs-Fixed: 774533
2020-11-10 05:34:56 -08:00
Ashish Kumar Dhanotiya
f0be1f4df3 qcacld-3.0: Use correct api to get country info
Currently for ll stats host fill country information from
mac context which is not updated with latest country information.

To address above issue use correct api to fill country info
for ll stats.

Change-Id: I744b172cf935e44568b9ee902a97275887e45001
CRs-Fixed: 2805196
2020-11-10 05:34:56 -08:00
Ananya Gupta
6162ab3b67 qcacld-3.0: handle multiple sap if NAPI is enabled for IPA
Disable IPA when second SAP is turned on only if NAPI support
is enabled for IPA path.

Change-Id: Id30714156a959ed940d0480cb0e0d8db467c821f
CRs-Fixed: 2807158
2020-11-10 05:34:51 -08:00
snandini
163e51ac53 Release 2.0.8.3M
Release 2.0.8.3M

Change-Id: Idf4d746ff0428c1d3be563aac129d79074b63fda
CRs-Fixed: 774533
2020-11-10 01:32:12 -08:00
Utkarsh Bhatnagar
dc10400717 qcacld-3.0: Don't fallback to 11ac if peer doesn't support MCS 10&11
In 2.4 Ghz, if peer is advertising MCS10/11 in 11ax and doesn't
support LDPC coding then STA downgrades to 11ac but if AP doesn't
advetise MCS 10&11 and LDPC bit is not supported, then STA treats
LDPC as optional in 11ax and would not downgrade to 11ac from 11ax.

Change-Id: I80b4c6615469c21020ed8d671c2d9ec94bd600b4
CRs-Fixed: 2810347
2020-11-10 01:32:12 -08:00
Abhishek Ambure
cf1755edb9 qcacld-3.0: Update basic rates if rates not present in probe resp/bcn
Some IOT APs set supported rates to zero in probe response. Host uses
probe response/beacon to update scan cache. Host uses supported rates
from scan cache to update in assoc request.

As the supported rates in probe response are zeros, host doesn't
add supported rate IE in assoc request which leads to association
failure. Hence add BSS basic rates in assoc request if supported
rates in scan cache is not present.

Change-Id: I1eb56f437c39494f386e7c97aac4b4bc56b156c8
CRs-Fixed: 2813072
2020-11-10 01:32:08 -08:00
snandini
8876768be1 Release 2.0.8.3L
Release 2.0.8.3L

Change-Id: Ia077fefb5b5bd0b383888813142809724a0106c9
CRs-Fixed: 774533
2020-11-09 23:35:27 -08:00
Abhishek Ambure
824d698f25 qcacld-3.0: Add HW dbs cap info in pm_cinfo
User reads policy manager connection status information via sysfs
entry. Host adds HW mode dbs capability information in pm_cinfo
by checking HW is dbs capable and present HW state is DBS.

Change-Id: I00d83b49dfae41b17341d3758d8ead42ffd602a8
CRs-Fixed: 2795010
2020-11-09 23:35:27 -08:00
snandini
0e3fb97808 Release 2.0.8.3K
Release 2.0.8.3K

Change-Id: I540e8a35d1c4d027617973ed36b7949ee8f1cadb
CRs-Fixed: 774533
2020-11-09 11:26:19 -08:00
Abdul Muqtadeer Ahmed
af6403d14f qcacld-3.0: Add new WMI wakeup reason
Add the new WMI wakeup reason “WOW_REASON_LOCAL_DATA_UC_DROP".

Change-Id: Ibae5d98de8e63b03930837de8ce3062fef319718
CRs-Fixed: 2798184
2020-11-09 11:26:19 -08:00
sheenam monga
489346578f qcacld-3.0: Validate and Update invalid dot11 mode based on band
Currently during get_ch_info dot11 mode is fetched from mlme_cfg
and used to calculate phy mode without any band validation which
may cause errorneous behaviour in below cases due to invalid band
and dot11 mode combination:

a.) Band 2g and dot11 mode 11a
b.) Band 5g and dot11 mode 11g
c.) Band 5g and dot11 mode 11g_only
c.) Band 5g and dot11 mode 11b

Fix is to update modes in case mlme_cfg mode and frequency combination
is invalid.

Change-Id: I6390677cb196ebec3695d73cfe1e67086a67a8c0
CRs-Fixed: 2802679
2020-11-09 00:42:47 -08:00
snandini
ba15ea831e Release 2.0.8.3J
Release 2.0.8.3J

Change-Id: I7c4aa7093292712a9a54b6dc76b232b666b209e6
CRs-Fixed: 774533
2020-11-06 14:04:48 -08:00
Karthik Kantamneni
66b1bab7fe qcacld-3.0: Fix wrong calculation of DP thread stats
In FISA path number of list elements in head nbuf is not updated,
leading to wrong calculation of dp thread stats and packets are dropped.
Update the number of list elements in head nbuf before flush.

During calculation of outstanding packets to be processed
by dp rx thread take rx flushed packets into consideration.

Change-Id: Id96ceee71e035fdbe17f0da4b662c6f848296fbd
CRs-Fixed: 2811001
2020-11-06 14:04:47 -08:00
snandini
967b82900c Release 2.0.8.3I
Release 2.0.8.3I

Change-Id: I08e6dadd67aa426ae35ed73d64ffb7998ee28424
CRs-Fixed: 774533
2020-11-06 12:02:09 -08:00
Min Liu
29544d3eb7 qcacld-3.0: Use primary channel in OCI
Primary channel should be used in OCI.

Change-Id: I1e92efd5b0348f58bc951dc459e08091737ced9f
CRs-Fixed: 2806607
2020-11-06 12:02:09 -08:00