Commit graph

23,103 commits

Author SHA1 Message Date
Rahul Choudhary
f8e71e1d58 Release 2.0.8.33O
Release 2.0.8.33O

Change-Id: I15d8290dc92070cfd380639c8119c179038d59a6
CRs-Fixed: 774533
2023-08-02 04:26:00 -07:00
Surya Prakash Sivaraj
31539d898b qcacld-3.0: Update VHT Channel width in assoc resp
The AP adds OMN IE in the assoc response, and changes
its operating channel width during association. The
STA must move to this new channel width and update it
to the firmware during peer assoc. Since, the STA
doesn't update the channel width properly, it leads
to retries in the higher bandwidth where the AP is
not currently operating.

The VHT channel width calculation in the host driver
is not equipped to handle the new VHT OP IE definition.
Differentiate the VHT operating channel width field in
the VHTOP IE based on the ccf1.

Change-Id: Ibc3dc91ecc091a307244e3e1359dfe9e4520f277
CRs-Fixed: 3205020
2023-08-02 04:26:00 -07:00
Rahul Choudhary
6c43030bad Release 2.0.8.33N
Release 2.0.8.33N

Change-Id: Id906820680f9b0a30101bc8597dcb30b4d33046e
CRs-Fixed: 774533
2023-08-01 11:58:20 -07:00
Balaji Pothunoori
c2524faf67 qcacld-3.0: Fill proper SGI for VHT Rx data packet
Due to limitation uCode always filling SGI as long in
rx_msdu_start_tlv.
This change is to update SGI for VHT Rx data packet which is
extracted from WMI_VDEV_SMART_MONITOR_EVENTID.

Change-Id: I5fcdc463ea2a6d83253e39cc377a2471aeb4e133
CRs-Fixed: 3459106
2023-07-14 06:43:55 -07:00
Rahul Choudhary
3e51b2ee8e Release 2.0.8.33M
Release 2.0.8.33M

Change-Id: I5cf4e612cfbf0b2eb97473f5009e6991e92dbe6d
CRs-Fixed: 774533
2023-07-12 02:42:08 -07:00
Sai Pavan Akhil Remella
af6dbcdfe2 qcacld-3.0: Remove interface up dependency for usable channels
Currently for QCA_NL80211_VENDOR_SUBCMD_USABLE_CHANNELS vendor
command STA interface should be UP and running. During STA/SAP
concurrency when STA is disabled SAP cannot get the usable channels
from driver since STA iface is brought down by Wifi HAL.

These changes remove interface running dependency for get usable
channels vendor command.

Change-Id: I3760adda2ce258f428f2b803112ab25503e97b60
CRs-Fixed: 3517894
2023-07-11 20:05:32 -07:00
Rahul Choudhary
e497bde953 Release 2.0.8.33L
Release 2.0.8.33L

Change-Id: Id6926128d04ec244a8f0df421715ea2207bcb44c
CRs-Fixed: 774533
2023-07-10 07:16:09 -07:00
Balaji Pothunoori
21aa15dc9f qcacld-3.0: Fix data rate for mgmt tx packets in packet capture mode
Currently, data rate for management tx packets is filled only as
1 or 6 Mbps which is wrong.
Sniffer expect data rate multiple of 2. Hence fill the data rate with
multiple of 2 for tx management packets which received from firmware
and converting into mbps.

Change-Id: I5dd6515804cd3751925af0992a30a7441ebf9bbb
CRs-Fixed: 3444177
2023-07-07 19:34:03 +05:30
Rahul Choudhary
37807a72d7 Release 2.0.8.33K
Release 2.0.8.33K

Change-Id: Ide32768dada9ff3cae12bd0c44390d363d5446de
CRs-Fixed: 774533
2023-07-06 05:58:07 -07:00
Pragaspathi Thilagaraj
43957256d4 qcacld-3.0: Fix RSO state change in disconnected state
When roaming has started and connect request from userspace
is received, disconnect is initiated as part of the connect
request and RSO stop->RSO Deinit is sent to firmware. But
before receiving the RSO stop, firmware posted the Roam Synch
indication to the host driver. While droping the roam
synch indication, the driver does abort roaming and as part of
that RSO state is changed to RSO enabled in connecting state.

Change the RSO state to RSO enabled only if roaming or roam synch
indication processing is in progress.

Change-Id: I7869d1a559884480708b9d1a493296a443364f0b
CRs-Fixed: 3089165
2023-07-06 05:58:06 -07:00
Rahul Choudhary
f651822692 Release 2.0.8.33J
Release 2.0.8.33J

Change-Id: Id623278a255b23cc2fc874963f3e7b83685f5119
CRs-Fixed: 774533
2023-07-06 03:45:49 -07:00
Pragaspathi Thilagaraj
a5e7c6d861 qcacld-3.0: Reset wait for hw mode change event
Hw mode change in progress is set after the set_hw_mode
command is queued in serialization. Its not reset in below
cases:
Active command timeout case, serialization command
cancelled case.

Before connect request is queued, if hw mode change is in
progress, there is 6 secs wait and if there is no hw mode
change response, connection failure. This causes subsequent
connection failures and there is no recovery.

Reset the wait for hw mode change event in serialization
command failure cases.

Change-Id: I716982f06198e9c3495685ddb158044778c4b1ff
CRs-Fixed: 3256424
2023-07-04 13:17:30 +05:30
Rahul Choudhary
d7ec458298 Release 2.0.8.33I
Release 2.0.8.33I

Change-Id: Ia9132c4e6236d41d77cf2bb265d5c87a42802714
CRs-Fixed: 774533
2023-07-03 11:38:07 -07:00
Ananya Gupta
007fd08652 qcacld-3.0: Pause Tx when bus suspend in progress
In SAP due to intrabss forwarding, Tx ring update is going through
when WOW enable command has been sent to FW. This results in crash.
To fix this, set is_tx_pause flag when suspend sequence starts,
which will pause Tx ring HP update.

Change-Id: I81f25b8bfca917c95180c460fd932c0f75094c10
CRs-Fixed: 3295428
2023-07-03 11:38:07 -07:00
Ananya Gupta
919505139f qcacld-3.0: Drop packets if suspend in progress
Currently, there is a race condition where packet gets
enqueued when WOW handshake is being done in parallel during
bus suspend resulting in assert in FW as Tx is aborted when
WOW command is received in FW.
To fix this, hdd_wlan_suspend_in_progress flag is set to drop
packets in SAP mode when APSS suspend is in progress.

Change-Id: I38a6a6bdf9858f627205f75f75f351f7debbb7f7
CRs-Fixed: 3227752
2023-07-03 11:38:02 -07:00
Rahul Choudhary
54e06bfd9e Release 2.0.8.33H
Release 2.0.8.33H

Change-Id: Ibfbc08bc555b1fb98ec69d1117100f3fe4df6475
CRs-Fixed: 774533
2023-06-28 05:18:29 -07:00
Krupali Dhanvijay
04226dac61 qcacld-3.0: Prefer power constraint over DTPC when both IE present
DTPC and power constraint IE is mutually exclusive, but there are
some faulty AP which are advertising both IE's at the same time.

To address this if both the IE's are present, preference is given
to the local power constraint IE.

Change-Id: I7810cbf3a570ba19d83934fe3946b9aa38967990
CRs-Fixed: 3383531
2023-06-28 05:18:28 -07:00
Krupali Dhanvijay
e7a7c95866 qcacld-3.0: Fix low TPC power for vendor DTPC IE
Currently low TPC power is configured to firmware if power constraint IE
is not present and only vendor DTPC IE is present. TPC power calculation
is depends on regulatory power, ap power constraint and TPE IE.

To fix this add new check is_power_constraint_abs in reg_tpc_obj.
Whenever local power constraint is from DTPC IE, is_power_constraint_abs
is set to true. And TPC power is calculated with regulatory power,
DTPC IE power and TPE IE power.

Change-Id: I37b14d144242fa30f02268f8a76b1b016bf69848
CRs-Fixed: 3383531
2023-06-28 05:18:22 -07:00
Rahul Choudhary
b4a586de03 Release 2.0.8.33G
Release 2.0.8.33G

Change-Id: I003f27743200e14414d1b3a8849acd610c8373bd
CRs-Fixed: 774533
2023-06-21 10:20:13 -07:00
Rahul Gusain
244338dedb qcacld-3.0: Add lock for multicast list update
Currently, kernel provides the multicast address list to the driver
and driver appends this list with new peer multicast address which
are not included in the list. This is done in irq thread.
But with recent changes, for NDI, driver will update this list on
the peer addition and deletion which is executed in scheduler thread.
This may lead to issue when request to update the multicast
list comes from scheduler thread while irq thread request is in
progress and vice-versa.
So, to handle such situation, add spin lock which will protect the
multicast address list.

Change-Id: I9093a92d3714abd875dcd02743f711a5bed26090
CRs-Fixed: 3518989
2023-06-21 12:00:59 +05:30
Rahul Gusain
367c18f303 qcacld-3.0: Update NDP peer MC list
Currently, driver gets peer multicast address list from kernel for
all interfaces and it send this list to firmware. For NDI, on NDP
confirmation indication, driver appends the multicast list with
new NDP peer added and then send it to firmware. But this is done
for first NDP peer only, kernel does not provide multicast list
again as kernel already configures the multicast addresses, unless
there is some reset happens in kernel.
This can cause issue as firmware is expecting the updated multicast
filter on each NDP confirmation (new peer is added) to enable the
NS frame exchange. As new peer is not added in the filter, firmware
will reject the NS frame.

So, to fix this, update the multicast list on NDP peer addition and
deletion.

Change-Id: I6371199ae5c3a8f4088987f1e6f10c39cbed1685
CRs-Fixed: 3518887
2023-06-21 11:41:37 +05:30
Rahul Choudhary
2c7d3ebcf2 Release 2.0.8.33F
Release 2.0.8.33F

Change-Id: I2a40530f8f0874f6e2f031c0baa57e05451869d5
CRs-Fixed: 774533
2023-06-15 05:29:06 -07:00
Jinwei Chen
9dd3327764 qcacld-3.0: add minimal UDP data length check for FISA
current observation is as following,
(1) RX UDP data length less then 12 bytes and they are aggregated
by FISA.
(2) aggregated UDP data might not be supported by user APP or they
are forwarded to other netdev.
if above two is met, kernel panic appears.

no solid conclusion from kernel network currently,
as a SW WAR from wlan driver side, check if current UDP data
length < 16 bytes, skip FISA aggregation.

Change-Id: Ia9e46705c7ace6a6e5580494231056adf214d7b2
CRs-Fixed: 3330035
2023-06-14 15:44:18 +05:30
Rahul Choudhary
b7e74f81db Release 2.0.8.33E
Release 2.0.8.33E

Change-Id: I91532367e0600df8aa3156eda0e5e854bd479ce3
CRs-Fixed: 774533
2023-05-26 03:13:58 -07:00
Surya Prakash Sivaraj
632d736aa2 qcacld-3.0: Update channel before user space update
As part of roaming, roamed event is sent to the userspace.
This marks the end of roaming and userspace begins CSI
restart for the new BSS. But, the channel information of
the new BSS is not yet updated to the vdev. This leads to
sending wrong channel in the for CFR capture.

To fix this, update the channel info of the new BSS before
sending userspace update.

Change-Id: I3af5aadf6041e56f2261aaebd7d2c1a108f63c65
CRs-Fixed: 3500062
2023-05-26 03:13:51 -07:00
Rahul Choudhary
3ae434d516 Release 2.0.8.33D
Release 2.0.8.33D

Change-Id: I5486a330381e4472ab77cabe67d1fe341a7f6e2b
CRs-Fixed: 774533
2023-05-24 09:02:43 -07:00
Azmath Mohammed
44f77a6b25 qcacld-3.0: Fix for code error
Add missing break after the update of ret variable.

Change-Id: Ib9c54575d97d26f05239a2fb44a87a63440b9bdf
CRs-Fixed: 3277218
2023-05-24 09:02:43 -07:00
Rahul Choudhary
a6ae724cc9 Release 2.0.8.33C
Release 2.0.8.33C

Change-Id: I094706e9e81db607b7ca2153ce46d7af7200169b
CRs-Fixed: 774533
2023-05-24 06:36:31 -07:00
Balaji Pothunoori
92151b69be qcacld-3.0: Fix ofdm and cck flag info for mon mode data packets
Currently cck and ofdm flags are filled wrongly for monitor
mode data packets based on preamble and wireshark deriving
incorrect phy type for 11G & 11B.

This change is to update cck and ofdm flags based on packet
type.

Change-Id: I5fcdc463ea2a6d83253e39cc377a2471aeb4e144
CRs-Fixed: 3447567
2023-05-24 06:36:31 -07:00
Balaji Pothunoori
03d81c87db qcacld-3.0: tx rate update for data packet in legacy modes
Currently, For legacy modes monitor mode reporting incorrect tx rate
for data packet in radiotap header due to packetcapture_hdr rate
is hardcoded as '0'.

This change calculates the data rate of legacy packets using mcs
reported in tx completion.

Change-Id: I2a651b8fb36947672bd30f8a635f0e643219e520
CRs-Fixed: 3442376
2023-05-24 06:36:28 -07:00
Balaji Pothunoori
4241578465 qcacld-3.0: update mcs value for HT and VHT mode for mon mode
Currently monitor mode HT & VHT data packet tx rate is not
matching with ota packet tx rate due to incorrect mcs value.

This change is to update proper mcs value for HT & VHT modes.

Change-Id: Ib4fb06a06ce35a4e8e683e5a22c8be226492b13f
CRs-Fixed: 3442509
2023-05-24 06:36:22 -07:00
Rahul Choudhary
b84e72e50a Release 2.0.8.33B
Release 2.0.8.33B

Change-Id: Ibcb966a02e5ef43108902ab53da18f6487ef7911
CRs-Fixed: 774533
2023-05-22 05:21:08 -07:00
Amit Mehta
fc563469de qcacld-3.0: Print wow_nack reason code
Currently, Fw did not set NACK reason code
to Host when Fw is not ready for WoW.

As part of the new change, Fw will send NACK
reason code along with WoW NACK to host.
Make changes in host to store and print
NACK reason code.

Change-Id: Ic978af9572c8de37df3fb926083aac5e6ddefda7
CRs-Fixed: 3481177
2023-05-22 12:57:02 +05:30
Madan Koyyalamudi
8856676962 Release 2.0.8.33A
Release 2.0.8.33A

Change-Id: Ib7f21d00e7839abd2867a0b826e7e89841f914ba
CRs-Fixed: 774533
2023-05-18 09:09:33 -07:00
Sai Pavan Akhil Remella
48c010910f qcacld-3.0: Don't start vdev trans if vdev ops is pending
Currently for REASSOC command host starts vdev ops
and tries to use vdev. In parallel if host receives
interface down and starts vdev trans then proceeds
to stop adapter and destroys the vdev, this leads
to null pointer dereference if vdev is destroyed
first.
This happens because driver doesn't wait for vdev ops
to complete after starting vdev trans.
To address this issue, start vdev trans and wait for
vdev ops to complete before proceeding to execute
further.

Change-Id: I363d05f742f7569dffed70cfa9b6bb9a0a766d9e
CRs-Fixed: 3445858
2023-05-18 09:09:33 -07:00
Madan Koyyalamudi
2dfa36c59c Release 2.0.8.33
Release 2.0.8.33

Change-Id: I8dde8ce3f99640b2a277914b36cb41eaad42cc9a
CRs-Fixed: 774533
2023-05-15 05:21:02 -07:00
Srikanth Marepalli
dc9af4e7fb qcacld-3.0: Send the 6 GHz channel in WMI_ROAM_CHAN_LIST
When the Intra band INI is enabled and the STA connected in 6 GHz
band the channel count and frequency are not sent in the
WMI_ROAM_CHAN_LIST command as the band is not defined or unknown.
As a result of this DUT is unable to trigger partial roam scan in
the current connected 6 GHz channel and does a full roam scan.
Add the 6 GHz band check in the Intra band enabled case.

Change-Id: I765c233d1e6bf71cab186041ebd7df2293be6f05
CRs-Fixed: 3469197
2023-05-15 12:31:04 +05:30
Madan Koyyalamudi
2a716221fb Release 2.0.8.32Z
Release 2.0.8.32Z

Change-Id: Ia2dce684b4511bdd943a5827f4619ae390ac7dea
CRs-Fixed: 774533
2023-04-26 09:22:26 -07:00
Utkarsh Bhatnagar
bc1baf6cb3 qcacld-3.0: Don't fill CCK rates for SAE Pre Auth frame
If while roaming from 2.4 GHz to 5 GHz band with SAE
encryption, rates shouldn't be filled from the current
session/AP as this may lead to incorrectly filling rates
for instance this may lead to incorrectly filling CCk rates
for SAE Pre-Auth while roaming from 2.4 GHz to 5 GHz. As
even though with roaming offloaded, sae pre_auth due to
crypto limitations of fw has to be triggered by the driver.

Change-Id: I2293563db047e10ec8a2ade9f3b2a602cf3e3edf
CRs-Fixed: 3336853
2023-04-26 04:10:24 -07:00
Madan Koyyalamudi
5363d93c4b Release 2.0.8.32Y
Release 2.0.8.32Y

Change-Id: I8e3aa000b9c148a244993e27812913cb01b48cf1
CRs-Fixed: 774533
2023-04-18 05:27:13 -07:00
Ashish Kumar Dhanotiya
3a53872fb4 qcacld-3.0: Update dot11 mode correctly for Getbssinfo
Currently host driver does not update dot11 mode info correctly
for getbssinfo command if the dot11 mode is 11AX or 11BE.

With this fix add a logic to update the dot11 mode info
correctly in response to the getbssinfo command.

Change-Id: I9ebec3ab43fe4cff1cab5f646bcc93a8c6654fd0
CRs-Fixed: 3353630
2023-04-18 05:27:13 -07:00
Madan Koyyalamudi
08405a8807 Release 2.0.8.32X
Release 2.0.8.32X

Change-Id: I8100322f3d86ac08b426674be01deb801bdd9b51
CRs-Fixed: 774533
2023-04-17 05:42:37 -07:00
Srikanth Marepalli
4e4c2377e8 qcacld-3.0: Allow roaming to configured roaming band only
Here upper layer configures roam band via the SETROAMBAND
NCHO command. This means DUT should be restricted to roam
to the configured band only but as per current PCL filtration
logic, DUT is allowed to roam beyond the configured band AP
also. Roam Band definition is:
0: auto (all supported bands)
1: 2.4 only
2: 5 only
3: 2.4 + 5
4: 6 only
5: 2.4 + 6
6: 5 + 6
7: 2.4 + 5 + 6

Fix is to update the PCL filtration logic in wma_send_set_pcl_cmd
and make sure DUT doesn't roam beyond the configured band AP.

Change-Id: Ia2353e8ff982609a4ab5a35715886648f140cd22
CRs-Fixed: 3158456
2023-04-17 05:42:37 -07:00
Madan Koyyalamudi
386d0eb5fc Release 2.0.8.32W
Release 2.0.8.32W

Change-Id: Ib9f2ce4009627be4005d19ff6f8c9072622399fd
CRs-Fixed: 774533
2023-04-12 07:20:15 -07:00
Surya Prakash Sivaraj
0ef14e0f0b qcacld-3.0: Do not drop retry assoc req if RMF enabled
Upon reception of assoc request from an already associated
PMF-enabled STA, the SAP is expected to start SA-Query
mechanism.

On the other hand, host driver drops all the
retried assoc request frames if the STA is already in
connected state. This is valid as long as the original
assoc request is currently under processing(to prevent
duplicate processing). However, for reassoc attempt cases,
this assoc request with retry bit set could be the first
assoc request under processing.

Therefore, change the logic to drop only retry-bit set
assoc requests in non-PMF STA cases.

For PMF-enabled STA, drop the assoc requests only if
key installation is pending. Otherwise, send SA query.

Change-Id: I1f3a564864e70f4e11994698389be427ac202fa3
CRs-Fixed: 3446033
2023-04-07 10:26:29 +05:30
Madan Koyyalamudi
86ed461595 Release 2.0.8.32V
Release 2.0.8.32V

Change-Id: I7b034714a6b5295472491f66dd36a4c4679090e9
CRs-Fixed: 774533
2023-04-05 01:15:37 -07:00
Asutosh Mohapatra
40cea3db7e qcacld-3.0: Add new INI to separate scan policy for rest of world users
Currently host drops an AP from scan list if host country is set to
US and AP country is non-US. This implementation violates our
standard regulatory scan policy.

To address this issue, introduce a new INI to differentiate
between our standard regulatory policy with others.

Change-Id: Ie6bd2d1925048aef427136b34d00d361955f40b2
CRs-Fixed: 3377242
2023-04-05 01:15:37 -07:00
Krupali Dhanvijay
db7294ed01 qcacld-3.0: Send driver disconnect internal reason code to user space
Send the driver disconnect internal reason code as an event to user space
using QCA_NL80211_VENDOR_SUBCMD_DRIVER_DISCONNECT_REASON vendor command.

Change-Id: I19959e097c5709d63fbd941583b934e291c3af1c
CRs-Fixed: 3371396
2023-04-05 01:15:31 -07:00
Madan Koyyalamudi
ac4df9eb9d Release 2.0.8.32U
Release 2.0.8.32U

Change-Id: I7d790b3fe36df9f685661ae2a9697868d51c6bc8
CRs-Fixed: 774533
2023-03-16 23:32:49 -07:00
Surya Prakash Sivaraj
bea7d1641b qcacld-3.0: Modify check to select channel switch announcement method
In api sch_set_fixed_beacon_fields(), the channel switch announcement
method selection was based on config "CONFIG_CHANNEL_HOPPING_ALL_BANDS"
due to which peer STA may not be able to switch channel when MTP
is working as SAP and doing channel switching.

Modify the check in order to select the channel switch method based
on nature of peer STA and operating/target frequency.

Change-Id: I3deb09245496d65e6bb3ec27ed7eefd3dcaa27bc
CRs-Fixed: 3293983
2023-03-16 19:24:00 +05:30