Commit Graph

19224 Commits

Author SHA1 Message Date
Srinivas Girigowda
0a089680ce qcacmn: Add Tx Mon configs to DP prealloc
Add Tx Mon configs to DP prealloc.

Change-Id: I34a480cdb59c9347e535e95972b6a342a8722047
CRs-Fixed: 3415819
2023-05-10 11:51:26 -07:00
Srinivas Girigowda
08ea5c2b80 qcacmn: Add support for local packet capture running
Add support for local packet capture running.

Change-Id: Id954c57a32210c180a8e0f9107e2469f96491173
CRs-Fixed: 3415816
2023-05-10 11:51:09 -07:00
Srinivas Girigowda
13554f0cdc qcacmn: Add support for local packet capture stop
Add support for local packet capture stop.

Change-Id: Ib12574f5b418ea009ec35ef85e170bc8c592c86f
CRs-Fixed: 3415812
2023-05-10 11:50:54 -07:00
Srinivas Girigowda
d52311a2b1 qcacmn: Replace IEEE80211_* macros with with QDF_IEEE80211_* macros
IEEE80211_* macros are defined in WIN specific header file which is not
available on MCL side, Hence replace these macros with QDF_IEEE80211_*
macros available in common header file

Change-Id: Ic2caaebacd9edded23aebefab87cd82dbbb06974
CRs-Fixed: 3415721
2023-05-10 11:50:41 -07:00
Srinivas Girigowda
5d8e550bb7 qcacmn: Add support for local packet capture start
Add support for local packet capture start and relevant changes.

Change-Id: I709e41e0be09cf73e93694efc59bfefbf51fe359
CRs-Fixed: 3415788
2023-05-10 11:50:28 -07:00
Srinivas Girigowda
980d883f07 qcacmn: Introduce HAL API to get phy ppdu id size
Introduce HAL API to get phy ppdu id size.

Change-Id: I125eb344787060336919fb361af032fddeb34526
CRs-Fixed: 3454206
2023-05-10 11:50:15 -07:00
Srinivas Girigowda
9c855c06e2 qcacmn: Separate out the implementation for RX 2.0 and TX 2.0
Separate out the common function implementing both RX 2.0 and TX 2.0
functionality in to RX 2.0 and TX 2.0 separate functions.

Change-Id: I29337aca9851dce1888a492a9534992277f595b5
CRs-Fixed: 3427301
2023-05-10 11:50:01 -07:00
Srinivas Girigowda
0e83621a7c qcacmn: Implement mon_ops to support RX 1.0 and TX 2.0
Currently WIN supports RX/TX 2.0 but MCC needs to support RX 1.0 and
TX 2.0. Hence implement the mon_ops callbacks as array of callback
pointers. Index 0 for 1.0 and Index 1 for 2.0.

Change-Id: I777b47be3af86f0b762b3563ef56204809a9a7ee
CRs-Fixed: 3427297
2023-05-10 11:49:48 -07:00
Srinivas Girigowda
ce736a1d8d qcacmn: Rearrange the functions to appropriate files
Rearrange the functions to appropriate files based on TX and RX 2.0.

Change-Id: Ie8e562a7aecdc91257210b55a323dfe47e67878c
CRs-Fixed: 3427296
2023-05-10 11:49:36 -07:00
Srinivas Girigowda
9de0de3f01 qcacmn: Add support for local pkt capture cfg ini
Add support for local pkt capture cfg ini.

Change-Id: I7b7e50010d71482d97de46d87ed2c70c78e74cd2
CRs-Fixed: 3415783
2023-05-10 11:49:23 -07:00
Srinivas Girigowda
0419d28f6e qcacmn: Move TX 2.0 code under WLAN_PKT_CAPTURE_TX_2_0 macro
Move TX 2.0 specific code under WLAN_PKT_CAPTURE_TX_2_0 macro.

Change-Id: I20bb1e49a902ec085fbc3df6828fef94a7c577d6
CRs-Fixed: 3415780
2023-05-10 11:48:59 -07:00
Srinivas Girigowda
f5321447c2 qcacmn: Move RX 2.0 code under WLAN_PKT_CAPTURE_RX_2_0 macro
Move RX 2.0 specific code under WLAN_PKT_CAPTURE_RX_2_0 macro.

Change-Id: Ic07bde8868850b8889941fc9054ad988617b5296
CRs-Fixed: 3415779
2023-05-10 11:48:45 -07:00
Srinivas Girigowda
ec3b9bdbce qcacmn: Move cmn code under QCA_MONITOR_2_0_SUPPORT to TX/RX 2.0 macro
Currently QCA_MONITOR_2_0_SUPPORT macro is used for both TX and RX 2.0.
but on MCC side, only RX 1.0 is supported and as part of this feature
TX 2.0 need to be supported.
Enabling QCA_MONITOR_2_0_SUPPORT will enable both RX 2.0 and TX 2.0, but
to support RX 1.0 and TX 2.0, we need to separate out code under
QCA_MONITOR_2_0_SUPPORT to TX and RX 2.0 macro.

As part of this change, introduce separate macros for TX 2.0 and RX 2.0
and move the common code under both macros.

Change-Id: I7ef7e488800934291538a0bca9acd21e28901214
CRs-Fixed: 3415740
2023-05-10 11:48:32 -07:00
Asutosh Mohapatra
d549261151 qcacmn: Add new cfg item to disable SP AP connection to VLP STA
Add a new cfg item to drop connection request if
AP is operating in 6 GHz SP mode and STA doesn't
support SP mode but supports VLP mode.

Change-Id: Icbe109abecdd73ceedee8ecec45ae82cd47464e0
CRs-Fixed: 3470599
2023-05-10 09:28:24 -07:00
Asutosh Mohapatra
9387aca043 qcacmn: Remove relaxed_6ghz_conn_policy cfg item
relaxed_6ghz_conn_policy cfg item is no longer needed
with new regulatory policy as there is no dependency
on STA, AP country code to find 6 GHz power mode for
connection and also connect request should be rejected
if AP is advertising VLP and STA doesn't support VLP.

Hence remove this cfg item and the related APIs.

Change-Id: I215939bdce2e08eb9d4c5286487941198ab19232
CRs-Fixed: 3470569
2023-05-10 09:28:13 -07:00
Asutosh Mohapatra
459cea50e2 qcacmn: Find best 6 GHz power type for connection
Find the best 6 GHz power type for connection
according to following regulatory policy:
1) SP power type is selected only if AP advertises
   SP and client supports SP.
2) LPI power type is selected only if AP advertises
   LPI and client supports LPI.
3) VLP power type is selected for the below cases,
   a) AP advertises VLP and client supports VLP
   b) AP advertises SP but client doesn't support
      SP but supports VLP.
   c) AP advertises LPI but client doesn't support
      LPI but supports VLP.

Change-Id: I6e3b9fc4bf7445c58681ef0ea8e45b434851a5b6
CRs-Fixed: 3456182
2023-05-10 09:28:01 -07:00
Nidhi Jain
fc6a569241 qcacmn: Add pdev params for 11az TB Ranging RSID range
Add pdev param to send RSID range to FW for 11az TB Ranging.

Change-Id: I834bb7b56a3ffed1e7db6db70bd72500359178de
CRs-Fixed: 3479571
2023-05-10 00:28:44 -07:00
Surya Prakash Raajen
8171e77523 qcacmn: Add recovery mode support in shared memory
Add api support to read the pointer to recovery mode in shared
memory, this pointer will store the if the mode recovered is
mode1 or mode0

Change-Id: I9e8dbd32c62dbb75d27d590a5013b4a9837fae24
CRs-Fixed: 3458369
2023-05-09 21:48:39 -07:00
Jianmin Zhu
c99051300b qcacmn: Fix wlan_reg_extract_puncture_by_bw API arguments num issue
wlan_reg_extract_puncture_by_bw should have 6 arguments.

Change-Id: I42e5b78ea052dcfdd7b5dfded7deb79f8a923c1a
CRs-Fixed: 3490286
2023-05-09 19:28:05 -07:00
Chunquan Luo
f5b5040c04 qcacmn: Add roam fail reason which fw update
Roam background scan abort, driver print roam result
failed, but current ap is still connected.
Add roam background scan abort reason  for roam fail
reason.

Change-Id: I32bc7202f1f49f9d36e2f2e49bce6e30ea36fa7b
CRs-Fixed: 3477755
2023-05-09 19:27:41 -07:00
Chunquan Luo
ddf72f1453 qcacmn: Add a vendor specific roam status of background scan abort
When user space triggers a scan, the firmware aborts background scan,
and uses the roam status QCA_ROAM_FAIL_REASON_CURR_AP_STILL_OK instead
of "Invalid roam failures reason".

Change-Id: I8a6ed222342398d21d87e7d31956426f3c99cba0
CRs-Fixed: 3481633
2023-05-09 19:27:30 -07:00
Abhishek Singh
9266c2d271 qcacmn: Fix cm req accessed outside cm req or CM lock
wlan_cm_get_rnr, uses the cm request without lock and pass the
pointer to the caller instead of passing a copy.

Fix it by copying the rnr info while holding the lock. and move the
cm req access logic to core from dispatcher.

Change-Id: I72861021d98b996a379a2917874b5dadbc37c6af
CRs-Fixed: 3483871
2023-05-09 13:33:47 -07:00
Pavankumar Nandeshwar
89f62ba1f3 qcacmn: Include DS tx desc usage in global desc limit check
Make sure the global tx desc usage limit is honored by
direct switch as well.

Change-Id: Ie84edb08a8bd6c6a18338caf21328245bd70a8bc
CRs-Fixed: 3486130
2023-05-09 11:05:42 -07:00
Vijay Raj
1214390842 qcacmn: Remove unused connectivity log for datapath events
Diag logging is used for logging datapath event such
as EAPOL and DHCP events

Remove legacy logging mechanism for datapath events

Change-Id: I8a987c1a4ab9954c7662e2f76e7904b02619f661
CRs-Fixed: 3470476
2023-05-09 08:49:37 -07:00
aloksing
7856b6f99e qcacmn: Add check for frame control version
PMAC is giving fatal when mgmt packet is getting queued
with non-zero version in frame control

Adding a check for version before queueing mgmt packets.

Change-Id: I606513b6ce027f1126e9cd40a9909886441de240
CRs-Fixed: 3422973
2023-05-09 06:30:20 -07:00
Biswajit Dash
d62608cb2a qcacmn: Hybrid mld netdev support
-Support to route IGMP packet to correct netdev coming from
 legacy and mld sta.
-Support to detect mld model based on ini setting

Change-Id: I10ea5af9a4315642b262c8404d7bebd88ee06ab1
CRs-Fixed: 3467808
2023-05-09 06:30:09 -07:00
Asutosh Mohapatra
f16ad481d6 qcacmn: Fill 6 GHz rules in pdev_priv_obj as per availability
Currently host only fills LPI rules in pdev_priv_obj. If
country supports  VLP, SP then host doesn't fill these
reg rules and advertises the same to kernel. This results
in zero 6 GHz channels in scan list shared by kernel.

To address this issue, fill LPI rules or VLP rules or
SP rules as per availability.

Change-Id: I4c00009d6124a1cd1371c7ac537186e79e51beb6
CRs-Fixed: 3470612
2023-05-09 04:07:20 -07:00
Sai Pratyusha Magam
1d681b7823 qcacmn: Use vdev macaddr for GTK/BIGTK PN fetch from FW
Use vdev macaddr instead of bcast addr for GTK/BIGTK PN fetch.
Also, copy back TX PN back to hostapd.

Change-Id: I98fc7a78c194c84de6554a684d3ce14f66772040
CRs-Fixed: 3370635
2023-05-09 04:07:08 -07:00
Amruta Kulkarni
c16aa9d544 qcacmn: Add handling for mlo link disable event
Add code changes to handle new wmi_mlo_link_disable_event
Extract the wmi event params and store in host defined
structure.

Change-Id: I6893bfa4da7b27f4a9b1ce2936057bb3576a317c
CRs-Fixed: 3458680
2023-05-09 01:48:41 -07:00
Harsh Kumar Bijlani
2b2a9fc6c8 qcacmn: Fix double accounting of peer stats in DS mode
Fix double accounting of peer stats in DS mode

Change-Id: Ie58a24a125726868a2f0039842668506d02b2263
CRs-Fixed: 3488317
2023-05-08 14:25:40 -07:00
Pavankumar Nandeshwar
e8bf99b94f qcacmn: Honor Umac reset trigger atomically
Make sure the Umac reset state is updated when
the trigger is received only after checking
Umac reset in progress flag.

Change-Id: I2c6ac68bee5b69b1f083a109646cb6bf61d8cdd6
CRs-Fixed: 3487388
2023-05-08 09:56:40 -07:00
nobelj
fffa314bff qcacmn: Add support to invoke debug function before assert
qdf assert always, assert without debug information.
Added support to dump needed information before assert.

Change-Id: I19898ec11c1bade4340cf1737a760d9507012f12
CRs-Fixed: 3480596
2023-05-08 06:43:24 -07:00
jinbao liu
98787f1dc0 qcacmn: Fix a RX MCS index issue in HT mode
Currently driver obtains RX MCS index from RX MSDU TLV END of a
data frame. According to the specification, the MCS index should
starts with 8 rather than 0 when NSS=2 in HT mode. However, the
original RX MCS index from HW starts with 0, thus SW needs to
get a final MCS index by adding an offset when NSS=2 in HT mode.

Change-Id: Iba5f9976958233fc283513caf0184e59774ab50a
CRs-Fixed: 3471953
2023-05-08 04:09:32 -07:00
Ripan Deuri
534c9c36a9 qcacmn: CDP op to update DL flow ref count in SAWF
CDP op to update DL flow ref count in SAWF.

Change-Id: If348c53f82361f03b7457bd485d99e42d3b3431a
CRs-Fixed: 3484316
2023-05-08 04:09:11 -07:00
Nidhi Jain
501d972a64 qcacmn: Change WLAN_UMAC_MAX_AID for 11az TBR RSTA
Change WLAN_UMAC_MAX_AID from 2008 to 1991 for reserving
1992-2007 value from AID pool for 11az TBR rSTA ranging.

Change-Id: I4e6a85d28c1391649ecc748d9b61167760858088
CRs-Fixed: 3479547
2023-05-08 01:31:26 -07:00
Santosh Anbu
7cec0b5b10 qcacmn: Add host AST entries for WDS peers
Add change to support addition of host AST entries for WDS peers.

Change-Id: I81b936d7274784c9b178e32aa9ccfaf86f884f0f
CRs-Fixed: 3472985
2023-05-08 01:31:14 -07:00
Chaithanya Garrepalli
04643dcb9b qcacmn: Fix deadlock issue
Fix deadlock issue in dp_rx_wds_add_or_update_ast

Change-Id: If32eb881da92a48e14f513d6bcf89e5bb64d0198
CRs-Fixed: 3487767
2023-05-07 20:45:24 -07:00
Gangadhar Kavalastramath
a143b042df qcacmn: Correct reg rules for CC GB
Correct reg rules for CC GB.
a. Change CHAN_5250_5330_16 to CHAN_5250_5330_12 to mark
   radar frequency range.

b. Change CHAN_5735_5875_7 to CHAN_5735_5875_4 and to remove
   radar marking.

Change-Id: Ie82e64fa444b6bcca3a6a31cb419179081e1c669
CRs-Fixed: 3447292
2023-05-07 18:11:09 -07:00
Amit Mehta
2debf5d6e6 qcacmn: Add support to print per link stats
Add support to print per link stats

Change-Id: Ifd1c1b5c075401a1545bcaaf76e1c79706a86974
CRs-Fixed: 3442916
2023-05-07 18:10:59 -07:00
Venkateswara Naralasetty
4a88f7af4c qcacmn: change in static window mapping for WCN6450
Use qca6750 static window configurations for WCN6450.

Change-Id: I6b5eef653312474a99b07aab0112edf6211005aa
CRs-Fixed: 3483052
2023-05-07 13:25:19 -07:00
Chaithanya Garrepalli
6605c27dcc qcacmn: Handle ppe peer setup for QCA5332 platform
As ppe_ds is not supported on QCA5332 platform, in
case of MLO peer always setup ppe peer using primary
peer

Change-Id: Icd05b69c07c05fe2fc793f49fcf28b5d58bc8bb6
CRs-Fixed: 3480359
2023-05-07 13:25:09 -07:00
nobelj
ba2e146b5a qcacmn: Add fix to update msdu start bit and other bits in nbuf
Add fix to update msdu start bit and other bits in network buffer.

Here is the list of bits set in network buffer
	a. msdu start bit,
	b. msdu end bit,
	c. packet is MCBC and da bit is set
	d. da valid bit is set
	e. sa valid bit is set

Change-Id: I2abf346de36a7f5ac7f86b33615145bb02065dc2
CRs-Fixed: 3479230
2023-05-05 11:34:44 -07:00
Gangadhar Kavalastramath
0af47f96fe qcacmn: Cleanup host regdb
Below code changes are made
1. Correct 5 GHz reg rules for APL 26/27 RDs.
   i. APL26 changes
      a. CHAN_5170_5330_3 is split into CHAN_5170_5250_8 and
         CHAN_5250_5330_12 To mark missing radar frequency range.
      b. CHAN_5490_5730_3 changed to CHAN_5490_5730_5 to mark the
         frequency range as radar indication range.
   ii. APL27 changes
      a. CHAN_5250_5330_10 and CHAN_5490_5730_4 are changed to
         CHAN_5250_5330_7 and CHAN_5490_5730_1 respectively to mark the
         frequency range as radar indication range.

2. Remove duplicate entry CHAN_5735_5835_8 (duplicate of CHAN_5735_5835_1)

Change-Id: Ib9d0e7455d489451da8beb71175e9a9b4ff6d3ca
CRs-Fixed: 3447101
2023-05-05 01:56:43 -07:00
Ripan Deuri
8866260ca4 qcacmn: Add module-id for SAWF
Add module-id for SAWF to be used in the qdf-trace framework.

Change-Id: I53a044a2f41b18a232063bd18c5508104e0e34cb
CRs-Fixed: 3475867
2023-05-04 13:50:22 -07:00
Gururaj Pandurangi
a11201af17 qcacmn: Clear peer-level negotiated T2LM mapping
Clear the peer-level tid-to-link mapping and set
direction to invalid if-
1) Host receives updated T2LM info through
critical update.
2) There are two T2LM elements received in beacons
and mapping switch time expires for first mapping.
Apply the second mapping.
3) There is a single T2LM element and its mapping
switch time expires. Apply default mapping.

Also, initialize peer-level mapping structure
when a new peer is created.

Change-Id: I1d06ec5f2f5aa398724213a3be08b6588f78c9b0
CRs-Fixed: 3435329
2023-05-04 13:50:11 -07:00
Gangadhar Kavalastramath
e9cae94508 qcacmn: Correct reg rules for CC PK
Correct 5 GHz channels reg rule for CC PK.
a. Split CHAN_5170_5330_3 into CHAN_5170_5250_8 and CHAN_5250_5330_12
   to mark missing radar frequency range mark.
b. Change CHAN_5735_5875_8 to CHAN_5735_5875_3 to change regulatory
   power value to 30.

Change-Id: I48027de034a0cf39fe8135ffdb180b8b3fcf133e
CRs-Fixed: 3459453
2023-05-04 13:49:58 -07:00
Sai Rupesh Chevuru
cdbbebd6f8 qcacmn: handling of mcast in proxy arp along with MLO MCAST
handling multicast packets in the case of proxy arp
along with MLO MCAST.

1. stamp the host inspected bit for GSN based packets.
2. trigger dp_tx_proxy_arp from the reinject handler.

Change-Id: I8aea1e4fd4e61f4cc6a5dd6d8b5151c1a9bf2fac
CRs-Fixed: 3465975
2023-05-04 13:49:48 -07:00
Jyoti Kumari
e663fa7cd3 qcacmn: Check whether vdev supports mlo cap or not
Scenario: There is dual sta present in HBS mode in DUT where one
sta is on wlan0 interface and it has 11be capability, so it has
formed ML connection with ML AP. The another STA is present on
wlan1 interface and this STA also supports 11be capability. But
as per current design, host supports 11be with MLO. It doesn't
support 11be alone. Also 11be with MLO is supported only in wlan0
interface. So for another connection which are present in wlan1
interface, even if it supports 11be host will downgrade to 11ax
and form connection.

During the formation of second connection, host will sends peer
create command(WMI_PEER_CREATE_CMDID) to firmware. Before sending
this command, host checks only eht cap in cm_create_bss_peer()
and fills the mld_mac addr. Because of that, DP assumes that
there is an ML connection and it creates MLD peer on wlan1
interface. Due to this, it causes ping failure on wlan1 interface
as the ICMP response might be coming on incorrect peer and it's
getting dropped.

As part of fix, check eht cap as well as vdev is mlo supported or
not in cm_create_bss_peer()

Change-Id: I60dbb8ee91025266d0b9b48075dc2db9a407e015
CRs-Fixed: 3454128
2023-05-04 11:35:10 -07:00
Gangadhar Kavalastramath
2ce6fe3db6 qcacmn: Correct reg rules for APL25
Correct wrong frequency mapping for APL25 RD.
a. CHAN_5170_5330_3 is split into CHAN_5170_5250_8
   and CHAN_5250_5330_12 to mark missing radar frequency
   range.

b. CHAN_5490_5730_9 is split into CHAN_5490_5590_4 and
   CHAN_5650_5730_4 to mark the frequency range as radar
   indication range.

c. Remove unused reg rule CHAN_5490_5570_1

Change-Id: Iabeba570c1c0edde9221db9bc38beac59de6e179
CRs-Fixed: 3447198
2023-05-04 07:26:55 -07:00
Jeevan Kukkalli
794367b541 qcacmn: Return missing link and mon desc and free associated buffers
It is observed that in some corner cases msdu count received
in montior destination ring descriptor is unreliable as a
result some of the link descriptor and associated monitor buf
descs are not returned. This change return such missing link/buf
descriptors and free associated buffers.

Change-Id: Iaad476b8e7a0372122981fd29c1f6e4685137817
CRs-Fixed: 3483157
2023-05-04 04:35:03 -07:00