Commit Graph

30393 Commits

Author SHA1 Message Date
Aasir Rasheed
83d3c5b7b2 qcacld-3.0: Add CONFIG_QCA_TARGET_IF_MLME for peach
This change is to add CONFIG_QCA_TARGET_IF_MLME for
peach defconfig.

Change-Id: I9449d71cc533e1d84de171324ce0c5e1cb03db4b
CRs-Fixed: 3634519
2023-10-11 05:17:31 -07:00
Rahul Choudhary
52266f779d Release 5.2.1.81W
Release 5.2.1.81W

Change-Id: Ib105ef56c8c26a43d1a28324e8f49501e0c0e16b
CRs-Fixed: 774533
2023-10-10 23:09:31 -07:00
Gururaj Pandurangi
8133c49208 qcacld-3.0: Set 6 GHz scan mode config in reset HE caps API
Set 6 GHz scan mode config in reset HE caps API.

Change-Id: Ieedbbf4cf2f482ba97b6b0670eaed6fe030500d9
CRs-Fixed: 3629443
2023-10-10 23:09:30 -07:00
Gururaj Pandurangi
8ba799cce8 qcacld-3.0: Configure Listen interval received from TIM IE to FW
For certain cert cases involving power save, STA is expected
to wake up only to receive DTIM beacons but Firmware is not
aware of the AP's DTIM period. Thus, Host caches the DTIM period
received from AP within the TIM IE and configures this value as
the listen interval to Firmware via existing WMI.

CRs-Fixed: 3601676
Change-Id: I23e191b00e22b9cd26344ad40f485807d81ed3d8
2023-10-10 23:09:24 -07:00
Vinod Kumar Pirla
9e3ba566d9 qcacld-3.0: Restore original EHT chan BW on disconnect
Userspace can dynamically modify association BW and as part of
disconnect need to reset the BW to original value, if not the
next connection will might happen with downgraded BW.

Currently the restore is happening on deflink VDEV instead of
actual disconnecting VDEV.

Fix this by changing function argument to accept link info
pointer in HDD adapter of that corresponding VDEV.

Additionally, the driver capability for 6 GHz-320 MHz is not
properly restored and further connections to 320 MHz are
happening on 160 MHz.

To fix the 160 MHz downgrade, use original EHT capabilities in
global MAC context instead of using modified EHT cap where
320 MHz support got reset on userspace dynamic BW update.

Change-Id: If2badb0a234f45d57dc186729bc529137d7a5131
CRs-Fixed: 3628940
2023-10-10 23:09:17 -07:00
Rahul Choudhary
fcb8128089 Release 5.2.1.81V
Release 5.2.1.81V

Change-Id: I998d00b0456e1feb98be4f36e2019005ebe86613
CRs-Fixed: 774533
2023-10-10 19:36:53 -07:00
Vijay Raj
163a4c5b5b qcacld-3.0: Set peer frequency after peer setup in wma_roam_update_vdev
In api wma_roam_update_vdev(), peer frequency is set before
peer setup which results in band info to be missing in
Datapath connectivity logs after roaming.

Modify api wma_roam_update_vdev() to set peer frequency
after peer setup in order to print band info for
datapath connectivity logs after roaming.

Change-Id: Idc2d6c1cda072f576c26964a0fc0c418760608f4
CRs-Fixed: 3629093
2023-10-10 19:36:52 -07:00
Ashish Kumar Dhanotiya
1c37983a22 qcacld-3.0: Handle vendor command and events for audio transport switch
Based on new requirement, add changes to send the vendor event
send audio transport switch request and also add changes to process
the response received as a vendor command.

Change-Id: I4b8804c9021ea8807ca785f81f3df431690029fb
CRs-Fixed: 3626954
2023-10-10 19:36:47 -07:00
Ashish Kumar Dhanotiya
8e04c8446a qcacld-3.0: Register os_if callback with the bearer switch state machine
Based on the new requirement, host driver needs to send the audio
transport switch request from host driver to user space, to
support this requirement, register os_if callback function with
bearer switch state machine

Change-Id: Ib94ff4d9876e79d984401262253602c975b0fb1e
CRs-Fixed: 3626952
2023-10-10 19:36:41 -07:00
Rahul Choudhary
1708030814 Release 5.2.1.81U
Release 5.2.1.81U

Change-Id: I0cdd520d7f9d2c14afa360e3ea68e0af3f1806f4
CRs-Fixed: 774533
2023-10-10 01:42:50 -07:00
Chunquan Luo
93b7eeece9 qcacld-3.0: Re-enable 6 GHz connection
When initial connection was 320 MHz, via command SET_MAX_BANDWIDTH
set channel bandwidth less than 320 MHz, driver disable 6 GHz
connection by disable support_320mhz_6g EHT capability.
In order to allow re-connection with 320 MHz, need to re-enable
support_320mhz_6g EHT capability before disconnect complete.

Change-Id: I8b3203c14893d2c5db658ca42e90de4946c3d836
CRs-Fixed: 3629179
2023-10-10 01:42:50 -07:00
Surya Prakash Sivaraj
7e53e3a6cf qcacld-3.0: Prevent roam to 40 MHz in 2.4 GHz
If "override_ht20_40_24g" ini is set, then both
connection and roaming should not happen to the
2.4 GHz BSS in 40 MHz.

Based on this ini, update the channel widthset
capability for the 40 MHz in the HT/HE/EHT cap
IEs after connection. Similarly, after disconnect
reset the capabilities back to default self cap.

Change-Id: I6f7e019f4a8f194a703b503741a57f22509a5d3d
CRs-Fixed: 3623042
2023-10-10 01:42:43 -07:00
Rahul Choudhary
fa65467aa2 Release 5.2.1.81T
Release 5.2.1.81T

Change-Id: I1a33e4d7ee0777b402876753dd02638cdba34bce
CRs-Fixed: 774533
2023-10-09 16:30:09 -07:00
Srinivas Dasari
3b2798ecc5 qcacld-3.0: Check for current bw while initiating bw update for SAP
Currently, SAP+STA and STA+SAP concurrencies are considered for
320 MHz SAP bandwidth downgrade to 160 MHz/upgrade to 320 MHz
from 160 MHz.
But during MLO link switch, a link gets disconnected and a new
link connection is started. The new link might be of 6 GHz, which
makes the sap_bw_update algo thinks that new connection/candidate
is 6 GHz and it can coexist with 320 MHz with SAP. This drives the
sap_bw_update algo to upgrade to 320 MHz, which starts policy mgr
opportunistic timer. This blocks the link switch(new link
connect operation). But this is not correct as a link is already
present and new link gets added.
Add a condition to check current bandwidth of the SAP and go for
downgrade only if the current bw is 320 MHz.
Also, cleanup the code which restarts policy mgr opportunistic
timer explicitly as timer is anyway started post
connect/disconnect completion. Introduce a new reason
POLICY_MGR_UPDATE_REASON_TIMER_START for this purpose.

Change-Id: Id49632b385cd3554b67be11e02e4e45ce094f0b4
CRs-Fixed: 3632270
2023-10-09 16:30:08 -07:00
Aditya Kodukula
f7ae703e68 qcacld-3.0: Fix kernel documentations
Fix kernel-doc errors and update the fields properly.

CRs-Fixed: 3632274
Change-Id: I92cfc92d56f5cceba2fa332a9986c310c88a0c3f
2023-10-09 16:30:02 -07:00
Srinivas Dasari
8d2c9f332e qcacld-3.0: Handle low memory cases for SAP 320 MHz bw upgrade
Currently, if host fails to get memory for SAP 320 MHz bandwidth
update messgae eWNI_SME_SAP_CH_WIDTH_UPDATE_RSP, it doesn't post
the message to SME and the command which caused the bandwidth
update is not removed from CSR queue. No other command can be
processed in such cases and leads to command timeout errors.
Post the message and handle it in SME even if it fails to get
memory. There could be functionality failures but system would
be functional.

Change-Id: I9e4c412441c9a9db02c7883dd4f64d7d2893a43d
CRs-Fixed: 3631557
2023-10-09 16:29:56 -07:00
Rahul Choudhary
6008264b77 Release 5.2.1.81S
Release 5.2.1.81S

Change-Id: Id02d7444ed1d64d6265b26747d74efda802cb324
CRs-Fixed: 774533
2023-10-09 10:44:01 -07:00
Asutosh Mohapatra
6941c6c46d qcacld-3.0: Modify bmiss timeout values
Add changes to init bmiss timeout values with
half of CFG_LFR_BEACONLOSS_TIMEOUT_ON_WAKEUP
and CFG_LFR_BEACONLOSS_TIMEOUT_ON_SLEEP
if CONNECTION_ROAMING_CFG is set.

CRs-Fixed: 3633348
Change-Id: If2d4a3975c86e3aa50ee98117795ce7c77b0460c
2023-10-09 10:44:00 -07:00
Rahul Choudhary
ef29a4a4f7 Release 5.2.1.81R
Release 5.2.1.81R

Change-Id: I0acd067798a9d5135cb3f993c918557f5e8b874a
CRs-Fixed: 774533
2023-10-09 05:04:43 -07:00
Ashish Kumar Dhanotiya
e6302e4ed3 qcacld-3.0: Handle audio transport switch SM events
Add changes to handle audio transport switch events in different
states of the bearer switch state machine.

Change-Id: I07568b3c3ccc5877d1e6f46ae5bf12afd3af3ec2
CRs-Fixed: 3626950
2023-10-09 05:04:42 -07:00
Rahul Choudhary
cd478f4c07 Release 5.2.1.81Q
Release 5.2.1.81Q

Change-Id: I7972a6a33eca869d348d5b580d67d6959b98ed53
CRs-Fixed: 774533
2023-10-08 22:44:21 -07:00
Chunquan Luo
683966fb7d qcacld-3.0: GET_CU_SUB_CBW20 report 320 MHz use invalid center freq2
When connected 320 MHz AP, use SET_MAX_BANDWIDTH set to 160 MHz,
then GET_CU_SUB_CBW20, driver should report all 320 MHz channel
CU info, so we need record center freq2 for 320 MHz at the time
of initial connection.

Change-Id: I8b8ed049926caa31bfac3c702434b68e5f5a26ae
CRs-Fixed: 3629227
2023-10-08 22:44:20 -07:00
Rahul Choudhary
2c7d851f45 Release 5.2.1.81P
Release 5.2.1.81P

Change-Id: I6bebd31dcd0a8065b525219a2e224e7c0073d8db
CRs-Fixed: 774533
2023-10-07 03:04:51 -07:00
Amruta Kulkarni
e956866220 qcacld-3.0: Add t2lm negotiation support checks
Add check's in following cases if STA does
not support T2LM negotiation.
1. Do not send T2LM wmi when T2LM IE is present in
 beacon or probe response or assoc response.
2. Skip T2LM candidate validation during connection.
3. Drop T2LM action request frame.

CRs-Fixed: 3610173
Change-Id: I9d45bd005675250f6739ce897ab5b482f27f1417
2023-10-07 03:04:50 -07:00
Aditya Kodukula
d39674846a qcacld-3.0: Trigger cds_recovery if suspend_resume fails
Trigger a cds_recovery as a error handling mechanism if
wlan suspend resume fails.

Change-Id: I36cfbc6c1e7820be1b60a73006f93e8a2926c98c
CRs-Fixed: 3632605
2023-10-07 03:04:42 -07:00
Gururaj Pandurangi
7b4d7c466d qcacld-3.0: Add ucfg wrapper API for MLD ID get/set APIs
Add ucfg wrapper API over the existing MLD ID get/set APIs
that will be invoked in HDD/OSIF.

Change-Id: I07d2e661c7e8129e54a0449f958749648c25e4ac
CRs-Fixed: 3621169
2023-10-07 03:04:35 -07:00
Rahul Choudhary
19c721b303 Release 5.2.1.81O
Release 5.2.1.81O

Change-Id: Iec0d59cd176aa6a3d3eba441e6867e5c76993279
CRs-Fixed: 774533
2023-10-07 00:00:36 -07:00
Aditya Kodukula
9b958c9516 qcacld-3.0: Use QDF_DEBUG_PANIC when mac_open fails
Currently in the driver, if mac_open fails we just print
the error message and return. To debug why mac_open failed,
crash dumps are required. So, to collect crash dumps use
QDF_DEBUG_PANIC when mac_open fails.

Change-Id: I61f49d002caa0aaf5927c1d0f60c6d805dfefbd9
CRs-Fixed: 3632314
2023-10-07 00:00:36 -07:00
David Oladunjoye
a00091f1b5 qcacld-3.0: 2-link MLO Sap Simulation
Current SAP is unable to bringup 2 vdevs and connect 2-link MLO.
To unblock validation we simulate 2link connection on SAP.

Changes are as Follows:
- Add MLD caps to Beacon Frame
- Add RNR IE to Beacon/Probe Rsp Frame
- Add Per-Sta Profile to Probe Rsp Frame
- Add Per-Sta Profile to Assoc Rsp Frame

Change-Id: Ice2d3557e00426ead044ec6b4b507746db4148d4
CRs-Fixed: 3591637
2023-10-07 00:00:29 -07:00
David Oladunjoye
b5d2d91f7f qcacld-3.0: Enable 2link SAP Emulation
Enable 2link SAP Emulation

CRs-Fixed: 3629984
Change-Id: I09106f1968d07b1c9de00be5b95acacfa3e701d0
2023-10-07 00:00:23 -07:00
Rahul Choudhary
317646c33f Release 5.2.1.81N
Release 5.2.1.81N

Change-Id: I19c356a251c86c34b0292a60a1f31b5797b626b9
CRs-Fixed: 774533
2023-10-06 18:25:27 -07:00
Aditya Kodukula
29279d7a3b qcacld-3.0: Send default rate_stats for standby link
Currently in case of 3-link MLO connection, if the standby link
was never active, then driver is not sending any rate_stats to wifihal
as part of MLO Link Layer Peer stats. But wifihal is expecting
rate_stats for every connected peer and since driver is not sending
them for the standby link, LL_Stats response handler is failing.

To avoid this issue, send default rate_stats for the standby link
as part of MLO Link Layer Peer stats.

CRs-Fixed: 3630522
Change-Id: Iba09642b2e00f86c634364bc10cebf3fa7080f74
2023-10-06 18:25:27 -07:00
Gururaj Pandurangi
b33d0e0dcc qcacld-3.0: Configure power save on specific MLO links
Add support to configure Power save enable/disable on
specific MLO links based on the link ids.

Change-Id: I63bc332d2afb7e63417b8191dd463f9caa659270
CRs-Fixed: 3616677
2023-10-06 18:25:21 -07:00
Rahul Choudhary
1e5f4dfbdc Release 5.2.1.81M
Release 5.2.1.81M

Change-Id: I447fb545f1ec1e63db81acf0ae75f9e17584ab41
CRs-Fixed: 774533
2023-10-06 15:30:02 -07:00
Srinivas Girigowda
69428aa5c5 qcacld-3.0: Use appropriate nbuf push type for tx_mon/rx_mon
Currently for rx packet delivery whether it is from monitor mode or
local packet capture path, is handled in NAPI softirq context and
netif_receive_skb() is called without disabling local bh.

In case of local packet capture, for tx packets after the tx_mon tlvs are
parsed, ppdu queue is handled in workqueue context and nbuf is passed
up the stack in rx_mon callback. Because the nbuf push type NAPI is used
this is causing 'BUG: using __this_cpu_add() in preemptible' for
nbuf coming from tx_mon workqueue context.

Fix is to identify the appropriate nbuf push type based on the context.
if caller is from softirq context then use DP_NBUF_PUSH_NAPI or
if caller is from non irq context use DP_NBUF_PUSH_BH_DISABLE.

Change-Id: I71b3be70febed1c077e7d4d36274a4805a33b722
CRs-Fixed: 3631536
2023-10-06 15:30:01 -07:00
Rahul Choudhary
a277444aba Release 5.2.1.81L
Release 5.2.1.81L

Change-Id: I9cc8114eab4dd5ec2a51648581ec2582d2060a76
CRs-Fixed: 774533
2023-10-05 17:54:44 -07:00
Amruta Kulkarni
98e436e69f qcacld-3.0: Add support for new hw modes
When FW includes new eMLSR hardware modes in
service ready indication host should be able to
store and update capability information.

Add support in policy manager to handle new HW modes
for eMLSR.

CRs-Fixed: 3618543
Change-Id: I575b93c85940e4d6469fbd038ce90123750729ff
2023-10-05 17:54:43 -07:00
Surya Prakash Sivaraj
d843f3767c qcacld-3.0: Configure join timeout based on beacon interval
Join timeout can be configured to 10 times the beacon interval
of the candidate beacon if it is in bounds with the join failure
timeout ini. However, host always configures join failure timer
with the default join failure timeout.

Fix the join failure timeout calculation by considering the
beacon interval.

CRs-Fixed: 3628892
Change-Id: I6c238c7db8ad6925c11fa97b3a698643187fec95
2023-10-05 17:54:38 -07:00
Rahul Choudhary
e0cbb3965c Release 5.2.1.81K
Release 5.2.1.81K

Change-Id: I79ccacf45e24adacc255493fb886cc3a456fa20b
CRs-Fixed: 774533
2023-10-05 10:17:52 -07:00
Srinivas Girigowda
67a72fb6cd qcacld-3.0: Update SNOC voting for NAN case
In case of NAN, if the tput levels are between mid to high range then
apply next SNOC voting level.

Change-Id: Ifb77c8f627b5fc565767aac4baa3629b12a37582
CRs-Fixed: 3611715
2023-10-05 10:17:52 -07:00
Rahul Choudhary
f3d74e8c29 Release 5.2.1.81J
Release 5.2.1.81J

Change-Id: I1c8c086c5214d9f7d86256a8ada5f8b65b3a8b95
CRs-Fixed: 774533
2023-10-05 07:00:18 -07:00
Deeksha Gupta
6717dc7b4b qcacld-3.0: Remove redundant ML log prints
Optimize and remove redundant ML log prints and also
pe_session logging.

CRs-Fixed: 3625951
Change-Id: I969a0a7e4c077889e390643b84e47cdff485ee14
2023-10-05 07:00:17 -07:00
Ashish Kumar Dhanotiya
0a3f0e8238 qcacld-3.0: Add bearer switch state machine
When there are more than one audio transport mediums
are available, there is a possibility to switch the
audio transport medium from one medium to another
medium.
To provide this support to switch the audio transport
medium, add a bearer switch state machine in host driver.

Change-Id: Ic57c11d2cff72cfa00ce7bc438998c501ce97d33
CRs-Fixed: 3626949
2023-10-05 07:00:11 -07:00
Rahul Choudhary
bdf95f75e4 Release 5.2.1.81I
Release 5.2.1.81I

Change-Id: I226d41840d89e9e59a5daa670d61809b24f498b7
CRs-Fixed: 774533
2023-10-05 01:02:07 -07:00
Srinivas Dasari
038ed212d3 qcacld-3.0: Reject NAN enable if DFS CAC is in progress
When host handles hw_mode, host rejects NAN if CAC is in progress
as NAN always expect hw_mode DBS and set_hw_mode can't be done
while DFS CAC is going on.
But in hw_mode offloaded solutions, host doesn't have control
on set_hw_mode. Host can expect firmware to take care of
NAN+CAC scenario but that causes some out of sync issues.
So, reject NAN if DFS CAC is running. Framework/application
may retry later.

Change-Id: Icf4367c9185511e732379df2a32bf7889b9b101b
CRs-Fixed: 3614017
2023-10-05 01:02:07 -07:00
Asutosh Mohapatra
517b5f9e72 Revert "qcacld-3.0: Stop assoc failure timer before starting pmf timeout"
This reverts commit I04358e4d0fbe54552f4b387789a256f45dc7e20f.
As part of initial Assoc request, host starts Assoc failure
timer , if AP sends Assoc response with pmf timeout, host
stops the Assoc failure timer and starts pmf timer. After
pmf timer expires as part of Assoc request host freshly starts
Assoc failure timer.
Instead of stopping and restarting the Assoc failure timer
host should use the initial timer for the complete Association
process.

CRs-Fixed: 3629968
Change-Id: Iefafe9ffbccd0f40c8add13ad7bfcc08344d476d
2023-10-05 01:02:00 -07:00
Asutosh Mohapatra
15db85d31d qcacld-3.0: Don't set ml caps for pre CAC SAP adapter
Currently pre CAC command is failing as host is trying
to start an ML SAP as part of pre CAC. As ML SAP + ML
SAP concurrency is not supported and the first SAP is
an ML SAP, it's not possible to start another ML SAP
for pre CAC.

To address this issue create a non-ml SAP as part of
pre CAC.
Also take RTNL lock for hdd_open_adapter and
hdd_close_adapter because vendor command tool doesn't
take RTNL lock but cfg80211_register_netdevice
and cfg80211_unregister_netdevice API's expect RTNL lock.

CRs-Fixed: 3627785
Change-Id: I84ac7674cbb0911258736b2aa7886b74bc9c8714
2023-10-05 01:01:54 -07:00
Rahul Choudhary
2cf9f1bda2 Release 5.2.1.81H
Release 5.2.1.81H

Change-Id: Ia09ed838fe14037f02eb665e15f1f1bbf5aaf763
CRs-Fixed: 774533
2023-10-04 22:02:38 -07:00
Vinod Kumar Myadam
5db1e4740c qcacld-3.0: Add support for INI twt_disable_info
Add support for INI twt_disable_info to disable FW initiated
information frame for TWT

Change-Id: I06fe9be364d9def0ccfffc196ae31dcc2ab9a500
CRs-Fixed: 3621241
2023-10-04 22:02:37 -07:00
Shailendra Singh
f72feda4a1 qcacld-3.0: Configure Traffic shaping mode for coex scenario
Change to parse wpa_cli command to set wifi configuration for attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_COEX_TRAFFIC_SHAPING_MODE and send traffic
shaping mode to FW with WMI WMI_COEX_SET_TRAFFIC_SHAPING_MODE.

Change-Id: I3965dfc6b63f55e568aed34e0091b95a21fae88f
CRs-Fixed: 3625180
2023-10-04 22:02:31 -07:00