Wykres commitów

30405 Commity

Autor SHA1 Wiadomość Data
Aasir Rasheed
da872f655b qcacld-3.0: Add check to validate CAC timer
The current host driver maintains a singular global mac session
for the timer. In situations where the SAP timer runs in one context
and P2P operates in another, the P2P GO context might unintentionally
halt the timer in global mac context for SAP.

Scenario:-
Initially host driver created SAP at index zero, After that it created
another P2P GO at index one before calling start bss api host driver
was trying to stop the interface and dfs timer offload was running for
SAP at index zero, As host driver never initialized cac offload for
P2P GO and dfc timer is running on global mac ctx and it was trying to
destroy the timer during hostapd deinit without even calling timer init.

This is due to absence of checks to validate whether P2P initiated
the timer.

This modification ensures that the timer initiates only when not running
in any session and halts only when the mac ctx and SAP context share the
same vdev id.

Change-Id: I77e14f660b946e8d1a815030f11ad36c14fc8bc4
CRs-Fixed: 3615156
2023-10-13 17:37:19 -07:00
Mohammed Ahmed
3a5f23ae61 qcacld-3.0: Fix class create pointer issue
Previous code change results in incorrect pointer
assignment for class variable. Fix this by returning
class_create value, and explicitly assigning class
to this value.

Change-Id: I8fd53fe0c6825cf6bdf4786ca2788044d71a8e86
CRs-Fixed: 3638971
2023-10-13 17:37:12 -07:00
Rahul Choudhary
18e2d13cad Release 5.2.1.82
Release 5.2.1.82

Change-Id: I19d9acaf3ae48f36834c62b040889c2a17515d3d
CRs-Fixed: 774533
2023-10-12 22:19:16 -07:00
Surabhi Vishnoi
57efe2b69b qcacld-3.0: Fix condition to forward beacon to packet capture interface
User can set following combination of configs in vendor command for
packet capture mode:

1. PKT_CAPTURE_MGMT_CONNECT_NO_BEACON: to receive all mgmt frames but
   no beacons
2. PKT_CAPTURE_MGMT_CONNECT_NO_BEACON + PKT_CAPTURE_MGMT_CONNECT_BEACON +
   connected_beacon_interval : to receive all other mgmt frames and only
   connected SSID beacons at particular intervals
3. PKT_CAPTURE_MGMT_CONNECT_NO_BEACON +
   PKT_CAPTURE_MGMT_CONNECT_SCAN_BEACON: to receive all other mgmt
   frames and beacons only during scan.

But with current condition connected SSID or scan beacons config will
not be sent to FW as host checks for PKT_CAPTURE_MGMT_CONNECT_NO_BEACON
config only. Also, on reception of any beacon, host checks for only
PKT_CAPTURE_MGMT_CONNECT_NO_BEACON and if it is set, host drops the
beacon which is wrong.
So, enhance the conditions to send config to FW as well as
remove the condition on reception of any beacon so that connected SSID or
scan beacons are forwarded to packet capture interface when connected
beacon interval config or PKT_CAPTURE_MGMT_CONNECT_BEACON  or
PKT_CAPTURE_MGMT_CONNECT_SCAN_BEACON is set by user in vendor command
along with PKT_CAPTURE_MGMT_CONNECT_NO_BEACON config.

Change-Id: I246b175f1c88ed45214527880ba14cdc17bf8206
CRs-Fixed: 3604708
2023-10-12 22:19:15 -07:00
Rahul Gusain
581c1128bd qcacld-3.0: Add null vdev check in logging config
Currently, host driver takes vdev reference while sending coex
logging config to the target. If user issues logging config
command before creating vdev, then vdev will be null and
dereferencing it causes crash in driver.

To fix this, add null check for vdev just after taking reference.

Change-Id: I91d7834ecdc506a7b7a20b38a7c8150bd22adb72
CRs-Fixed: 3637112
2023-10-12 22:19:08 -07:00
Pragaspathi Thilagaraj
0f95a0d1a3 qcacld-3.0: Update TDLS current mode only for TDLS enabled vdev
When scan is complete, tdls notifier tries to update the
tdls_current_mode for all available TDLS & P2P vdev. This causes
the TDLS current mode to enabled wrongly and further add peer gets
honored for P2P Client vdev in STA + P2P client concurrency.

So avoid changing current mode for P2P cli when STA vdev is
present.

Also add check for P2P CLI mode in tdls_check_is_tdls_allowed()
to avoid tdls commands going on P2P client vdev.

Change-Id: I681de9781a4892e307681da5699ca7b30f8f9651
CRs-Fixed: 3626695
2023-10-12 22:19:01 -07:00
Rahul Choudhary
86666a12df Release 5.2.1.81Z
Release 5.2.1.81Z

Change-Id: I682f97b4830218a787f190945545af623d6dcfad
CRs-Fixed: 774533
2023-10-11 14:42:23 -07:00
Ashish Kumar Dhanotiya
0afa4fa7e5 qcacld-3.0: Add bearer switch request in connect path
If LL_LT_SAP is already present and if STA tries to
come up on same mac, then it may result in data loss
on LL_LT_SAP as STA will need ROC on the connection
channel for some time, to avoid these data loss during
STA connection, add logic to switch the bearer for LL_LT_SAP
data to non-wlan and once connection completes, switch back
the bearer to wlan.

Change-Id: I7ace6c6f4f41548ec112882dc81be6c6b5a4eae0
CRs-Fixed: 3627656
2023-10-11 14:42:22 -07:00
Rahul Choudhary
b74949ee0f Release 5.2.1.81Y
Release 5.2.1.81Y

Change-Id: I166695d55246ec8bb81fd728ed023a88b1bf830e
CRs-Fixed: 774533
2023-10-11 08:22:03 -07:00
Rahul Gusain
bd034ecb21 qcacld-3.0: Exempt the MLD addr check for NAN
MLD is applicable for infrasture modes(STA/SAP) and is mandatory to
operate in 11BE for these modes. NAN/NDI(NDP) may want to use EHT
rates and it's not mandatory to support MLO.

Currently, host driver sets vdev dot11mode as 11AX when MLD address
is zero. But this is applicable for STA/SAP only. So, exempt NAN/NDI
modes from this dot11mode downgrade operation to allow these to use
EHT rates.

Change-Id: Ie43811eb7bd12dbf286617cebe194ced8c28c3f0
CRs-Fixed: 3635961
2023-10-11 08:22:03 -07:00
Rahul Choudhary
e40afae7cc Release 5.2.1.81X
Release 5.2.1.81X

Change-Id: Ic24d829e48cd98696bd5535ed63c76a1127fa476
CRs-Fixed: 774533
2023-10-11 05:17:39 -07:00
Mohammed Ahmed
705b0d6f8c qcacld-3.0: Additional sun compilation fixes
Current code has compilation errors when building
on sun kernel. Fix this by resolving the errors.

Change-Id: If28a393485cfe4d661e2026ce1f9bc9d6318ca19
CRs-Fixed: 3632177
2023-10-11 05:17:38 -07:00
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