Commit Graph

16344 次程式碼提交

作者 SHA1 備註 提交日期
Bing Sun
ab4cfe87b0 qcacmn: Handle wmi event wmi_vdev_quiet_offload_eventid
Extract information from wmi event wmi_vdev_quiet_offload_eventid and
send it to mlme

Change-Id: I49ef7f2811c5975a95e8e33050977c49e2b104e4
CRs-Fixed: 3101974
2022-02-11 02:57:33 -08:00
Srinivas Girigowda
f048242a78 qcacmn: Add support for twt get_status cp_stats changes
Add support for twt get_status cp_stats changes

Change-Id: Iac1039876d6bb50504af6fec2f976253e3a1ead3
CRs-Fixed: 3085698
2022-02-11 00:25:56 -08:00
Srinivas Girigowda
8c3c4172fb qcacmn: Add TWT include path in Kbuild
Add TWT include path in Kbuild.

Change-Id: Idbb31b1f91852c1ecc48d988916e813e2458d27b
CRs-Fixed: 3127301
2022-02-11 00:25:48 -08:00
Srinivas Girigowda
75335f0708 qcacmn: Add support for WMI_TWT_SESSION_STATS_EVENT
Add support for WMI_TWT_SESSION_STATS_EVENT.

Change-Id: I7bee07360824ca599c82d9dc3f1709acb00466d8
CRs-Fixed: 3085541
2022-02-11 00:25:41 -08:00
Srinivas Girigowda
2040cc94c8 qcacmn: Add support for TWT get capabilities
Add support for TWT get capabilities.

Change-Id: Ib52401f1ef57b0ffab4fb32aa45a2e9435612fc4
CRs-Fixed: 3085389
2022-02-11 00:25:34 -08:00
Srinivas Girigowda
c0b9416daa qcacmn: Support TWT wmi APIs() with TWT componentization structs
Currently, WMI APIs do not support new TWT public structures.
If the TWT componentization feature is enabled, then extend the WMI APIs
with TWT componentization structs.

Change-Id: Ic987960e880376066b81881dc32ec96faf609cc6
CRs-Fixed: 3085377
2022-02-11 00:25:26 -08:00
Srinivas Girigowda
fd35443a0a qcacmn: Add support for TWT disable operation
Add support for TWT disable operation.

Change-Id: I302ac6a3898f53ea25030d9a15d8d14988287b27
CRs-Fixed: 3085373
2022-02-11 00:25:20 -08:00
Srinivas Girigowda
2d0aea5c1d qcacmn: Add support for TWT enable operation
Add support for TWT enable operation.

Change-Id: I638a4a78bf33d7185d8eab1f6735c3db0abfcd53
CRs-Fixed: 3085373
2022-02-11 00:25:12 -08:00
Srinivas Girigowda
724bbb16c1 qcacmn: TWT init and register WMI events
Initialize TWT tx/rx ops and register WMI events.

Change-Id: Iaf10d5870be89360c74a829dbfdb461d3ee67b8c
CRs-Fixed: 3085369
2022-02-11 00:25:06 -08:00
Srinivas Girigowda
fb22b66fd2 qcacmn: Populate TWT target capabilities
Read TWT target capabilities and update the TWT object manager
data structure.

Change-Id: I03a4b8f367ccc749443139cbedb3c76e4ef8cd39
CRs-Fixed: 3085366
2022-02-11 00:25:00 -08:00
Srinivas Girigowda
415b9134bf qcacmn: TWT obj mgr initialization
Initialize TWT object manager.

Change-Id: Ic38fe24d4d6ada0597dabbc2df70d9b32737014a
CRs-Fixed: 3085360
2022-02-11 00:24:54 -08:00
Srinivas Girigowda
ff60609e39 qcacmn: target_if: Add TWT componentization structs and skeleton code
Add TWT componentization structs and skeleton code.

Change-Id: Ibddef3798149268f1799734664c5fbf679ee7a51
CRs-Fixed: 3085341
2022-02-11 00:24:48 -08:00
Srinivas Girigowda
b6ef4fe306 qcacmn: umac: Add TWT componentization structs and skeleton code
Add TWT componentization structs and skeleton code.

Change-Id: I1c99c15b94cc39c6e5c7a32eea0d8095cf72555c
CRs-Fixed: 3085344
2022-02-11 00:24:42 -08:00
Srinivas Girigowda
5367345cfb qcacmn: os_if: Add TWT componentization structs and skeleton code
Add TWT componentization structs and skeleton code.

CRs-Fixed: 3085329
Change-Id: I3ddbe7caad9e77858a2300151c92a83bc6c4b3c7
2022-02-11 00:24:36 -08:00
Adwait Nayak
b66eb8977a qcacmn: Rectify LF copyright year
Rectify LF copyright year

Change-Id: Ia021db26a4e528d42f148b0f24258f55e957be54
CRs-Fixed: 3122253
2022-02-10 14:03:08 -08:00
Santosh Anbu
7260cc5d95 qcacmn: Add pdev check when creating MLD vdevs
MLD can be formed only between APs of different pdev.
Add check to avoid creation of MLD between vdevs of same pdev.

Change-Id: I00f53de7016050b120db4b90b2e7662ea81612af
CRs-Fixed: 3104153
2022-02-10 12:49:48 -08:00
Santosh Anbu
94f1c1c7ed qcacmn: Add opmode check when creating vdevs with MLD
MLD can be formed only b/w AP vdevs or STA vdevs.
MLDs cannot contain vdevs of different opmode.

Add change to check for opmode of MLD VDEVs

Change-Id: I21112ba111bcadc48adf582b7ca9e7b936bd8e91
CRs-Fixed: 3104152
2022-02-10 04:25:41 -08:00
Pavankumar Nandeshwar
d5a07afa5d qcacmn: WAR for invalid length buffers in wbm rx error path
WAR for wrong length in first msdu in wbm rx error path while
handling scatter gather buffers. Get the msdu length from the
last buffer instead.

Change-Id: I869391ef5ca7005dce972013679c2143be836ecb
2022-02-10 01:38:15 -08:00
Venkateswara Swamy Bandaru
e487cebb1b qcacmn: Rename wmi EHT MU/BF config defines
Rename wmi EHT MU/BE config defines in generic way instead of
having BF in all defines.

Change-Id: I3da2587582556ccda5f1d957faf04aa1a104acc4
CRs-Fixed: 3097171
2022-02-10 01:38:10 -08:00
Varsha Mishra
6f6afd5755 qcacmn: Add code for ccmp decap
After ccm demic, remove ccmp header
In this TLV length worth of data needs to recopied.

Change-Id: I964167396a3c93b09c27b5acedb53638d8ff2baa
2022-02-10 01:38:04 -08:00
Harsh Kumar Bijlani
b934da0701 qcacmn: Correct computation of retry_mpdus
Correct computation of retry_mpdus

Change-Id: Ic1c3ecb458dd371a46161e87727b35016bc78fb4
CRs-Fixed: 3115325
2022-02-10 00:17:16 -08:00
jinbao liu
9155686ef7 qcacmn: Recording timestamp more precisely in function ce_tasklet
Change location of HIF_CE_TASKLET_ENTRY and HIF_CE_TASKLET_RESCHEDULE
to record the timestamp of entering ce tasklet and ce rescheduling
more precisely. This change can provide a more reliable scene when some
exception occurs.

Change-Id: Ia70488372201ffb906355722043d8405af766c10
CRs-Fixed: 3112970
2022-02-10 00:17:11 -08:00
Harsh Kumar Bijlani
d8e05be641 qcacmn: Changes for vdev and pdev stats
Changes for vdev and pdev stats as per the new peer stats
re-organization architecture.

Change-Id: I48f9fb4b0915c40f4add83f2e2dd074cc97874fd
CRs-Fixed: 3092123
2022-02-09 11:55:12 -08:00
Harsh Kumar Bijlani
e8082534bd qcacmn: Changes to get and reset peer stats
Changes to get and reset peer stats as per the new peer stats
re-organization architecture and taking MLO scenario into
consideration.

Change-Id: I1c49e11d502585cc955ad087ffe3a606be23d83e
CRs-Fixed: 3092123
2022-02-09 11:55:06 -08:00
Harsh Kumar Bijlani
230d6714b6 qcacmn: API changes for printing of peer stats
Make changes in the APIs for printing of peer stats by passing
the buffer holding peer stats along with the peer.

Also define macros for peer stats aggregation as per the peer stats
re-organization architecture.

Change-Id: Ia03cdb145de7e7c3355463ac31313edd863dfd2b
CRs-Fixed: 3092123
2022-02-09 11:54:59 -08:00
Harsh Kumar Bijlani
ce45e71913 qcacmn: Update stats in monitor peer in Tx HTT and Rx monitor path
Update stats in monitor peer in Tx HTT PPDU completion and
Rx monitor PPDU indication path.

Change-Id: Icfeb49fc6f1fa2c1f2648a9b4576f31a927c7ecd
CRs-Fixed: 3092123
2022-02-09 11:54:53 -08:00
Harsh Kumar Bijlani
93cd9e0af8 qcacmn: Update stats in dp_txrx_peer in per packet path
Update stats in dp_txrx_peer in per packet Tx completion and
Rx path.

Change-Id: I807cb5ca9fe2aeeabdd4cb95d6e30cb9781560f4
CRs-Fixed: 3092123
2022-02-09 11:54:46 -08:00
Harsh Kumar Bijlani
27e9e64532 qcacmn: Changes for delay and jitter stats
Delay and jitter stats are placed in struct dp_txrx_peer.
Make changes accordingly for allocation, fetching and clearing
operations of these stats.

Change-Id: Ic9b9e48467741072806000f4d1b3aa8e5c65d508
CRs-Fixed: 3092123
2022-02-09 11:54:23 -08:00
Harsh Kumar Bijlani
eee813ad02 qcacmn: Initialization of stats in txrx_peer and monitor_peer
* Initialize stats in dp_txrx_peer and dp_monitor_peer as per
  the stats re-organization.
* Update peer calibrated stats on every timer expiry of 1 second.
* Define APIs to reset monitor_peer stats and to fetch rdkstats_ctx
  from monitor peer.
* Place check to make sure that monitor peer related APIs are
  are called only for legacy peer or MLO Link peer.
* Update peer based pktlog flag, tx and rx capture feature flags
  in monitor_peer.

Change-Id: Idadbe19e85d4a9fdf77fb6dabe0c8a4952b024b8
CRs-Fixed: 3092123
2022-02-09 11:54:14 -08:00
Harsh Kumar Bijlani
148f220408 qcacmn: Segregate stats among peer, txrx_peer & monitor_peer
Segregate the stats among dp_peer, dp_txrx_peer and dp_mon_peer
structures.

Segregation is done as per below:
 * Move stats updated in per pkt path to dp_txrx_peer
 * Consider stats updated purely in per pkt path as per_pkt_stats
 * Consider stats for which there is an alternate path of
   updation as extd_stats
 * Move delay stats and jitter stats to dp_txrx_peer
 * Maintain calibrated stats in dp_peer
 * Move rdkstats_ctx from dp_peer to dp_mon_peer
 * Move invalid peer from dp_pdev to dp_mon_pdev

As per the above segregation, if there is not support for
alternate path of stats updation, then stats in dp_txrx_peer is
combination of per_pkt_stats and extd_stats and dp_mon_peer
does not hold any stats.

If support is there, then dp_txrx_peer holds only per_pkt_stats and
dp_mon_peer holds extd_stats.

Change-Id: I2eb81d1b93a178985c05ff4f6557a173cc8a262d
CRs-Fixed: 3092123
2022-02-09 11:54:07 -08:00
Pavankumar Nandeshwar
b9038e9d4e qcacmn: Move per packet stats params to txrx_peer
Move the stats parameters from the dp_peer which are used
in per packet path to txrx_peer

Change-Id: Ieb68b6950740791b37bbd2bfdc4815c3d7bc4834
CRs-Fixed: 3095637
2022-02-09 11:54:01 -08:00
Pavankumar Nandeshwar
98b25a2ee6 qcacmn: use txrx_peer in rx and tx paths
Use txrx_peer in rx and tx data paths instead of
main dp peer.

Change-Id: If628543092be220021240b6f25ee43b009592bac
CRs-Fixed: 3095637
2022-02-09 11:53:55 -08:00
Pavankumar Nandeshwar
826ec6b4f5 qcacmn: use txrx_peer in wds APIs
use txrx_peer in wds APIs instead of main dp peer

Change-Id: I3d05de8c29c1ee012405ca2ab22aec3876956bf1
2022-02-09 11:53:49 -08:00
Pavankumar Nandeshwar
04bb406179 qcacmn: use txrx_peer in defrag and rx error paths
Use txrx_peer in defragmentation and rx error paths instead of
main dp peer.

Change-Id: I95bb2f672e49d0f6ddb94a093688b0fbce5e373d
CRs-Fixed: 3095637
2022-02-09 11:53:43 -08:00
Pavankumar Nandeshwar
9c6800383c qcacmn: Move per packet params to txrx_peer
Move the parameters from the dp_peer which are used
in per packet path to txrx_peer and params related
to monitor path to monitor peer.

Initialize txrx_peer and monitor peers.

Change-Id: I0449c67c1cd47deb76bc89b5ddc64174f6694eb0
CRs-Fixed: 3095637
2022-02-09 11:53:37 -08:00
Vivek
a795c47f70 qcacmn: Add CDP call to configure SAWF
Add CDP call to configure SAWF enable
and disable for a soc.

Change-Id: I42f383a2e33808cf91310fd989a2e12db447236d
CRs-Fixed: 3119127
2022-02-09 07:45:51 -08:00
Vishal Miskin
0f0d23d5cd qcacmn: Defined a driver interface for periodic TSF sync feature
Add a QCA vendor netlink interface to start/stop periodic TSF sync
feature and also support configuration of interval value as part of TSF
sync start command. In addition, improve documentation for the related
attributes and values.

Change-Id: Ia39609a3cc72c0194fe4685e43f08f1c49f8b412
CRs-Fixed: 3108416
2022-02-09 05:31:37 -08:00
Santosh Anbu
2e416b83a2 qcacmn: Support multi ast delete ops callback
Add change to define multi ast delete callback to be used at
CDP OL ops

Change-Id: I4bfcf91a56b65a447f436241021288ba867a43f8
CRs-Fixed: 3124256
2022-02-09 02:06:36 -08:00
Manoj Ekbote
5abebcd1a6 qcacmn: Add sanity check in rx monitor path
Check physical address of nbuf with ring addr. If they
don't match, move to the next descriptor. Activated with
build flag.

Change-Id: Ibd6b38679d677a59f14450db3224104396c88d2e
2022-02-09 02:06:30 -08:00
Ripan Deuri
d66625fbca qcacmn: Add wmi ops to set rate control parameters
- Add wmi pdev param ids.
- Add wmi ops to send set retry thresold, mcs drop value
  and probe intervals.

Change-Id: Ic316337244e8fab07e7ed214c5fe62bf43a827d4
CRS-Fixed: 3126266
2022-02-09 02:06:23 -08:00
Srinivas Girigowda
9630b58469 qcacmn: connection_mgr: Add API ucfg_cm_get_connected_band()
Implement an API to get connected band information.

Change-Id: I682a749d293afd06a4fe12acf985cc5d44d11db8
CRs-Fixed: 3104394
2022-02-08 18:25:29 -08:00
Vignesh U
809a5a3602 qcacmn: Address compilation error in non-6G PFs
The structure members of regulatory pdev private object,
is_6g_channel_list_populated and super_chan_list are 6G specific but are
used outside the 6G macro 'CONFIG_BAND_6GHZ'. It is used in get channel
list API reg_get_pwrmode_chan_list(), that is commonly called for all the
bands.

Move the 6G portion of get channel list API to a separate API
reg_get_6g_pwrmode_chan_list() that is empty for non-6G platforms.

Change-Id: If9aeedbf157536d10912f4ee1d92f42146b19759
2022-02-08 15:05:34 -08:00
Linux Build Service Account
e577592d1a Merge "qcacmn: Add intra-bss check for NAWDS in tx path" 2022-02-08 10:06:15 -08:00
Linux Build Service Account
76bd5c85c9 Merge "qcacmn: Use the correct datatype for wireless modes" 2022-02-08 10:06:13 -08:00
Neha Bisht
8fb88793e5 qcacmn: Add intra-bss check for NAWDS in tx path
In NAWDS, if ast for self bridge is present in AST table,
then the mcast arp frames are getting dropped if peerid
for nawds peer is matching ast peerid of self bridge.
To fix this, add intra-bss check for NAWDS in tx path.

Change-Id: I6f1b44634536c558520aaf0bd0c0155c4b2a4e28
2022-02-08 07:44:46 -08:00
Shashikala Prabhu
4905072179 qcacmn: Use the correct datatype for wireless modes
Wireless mode is of datatype uint64_t but in some places, it is used
as uint32_t.

In this change, replaced 'uint32_t wireless_modes' with
'uint64_t wireless_modes'.

Change-Id: I13b5781ddb14fc0131668e1710df19ae75eb1e34
CRs-Fixed: 3119562
2022-02-08 07:44:41 -08:00
Linux Build Service Account
8ca83f4b45 Merge "qcacmn: Use sw_peer_id instead of ast_index to get peer" 2022-02-08 07:07:59 -08:00
Gerrit - the friendly Code Review server
273f7cd811 Merge changes into wlan-cmn.driver.lnx.2.0 2022-02-08 07:03:41 -08:00
Devender Kumar
d70b48ed27 qcacmn: Use sw_peer_id instead of ast_index to get peer
In order to support flow overide feature,
AST table has to be split between RxPCU and DDR.
With this split, RX monitor cannot make use of
ast_index to fetch peer as it is not from DDR.
So make use of sw_peer_id to fetch peer.
This sw_peer_id is derived from RX_MPDU_STAT_START_TLV
Remove the spinlock on unsused variable i.e ast->lock.

These changes were overwritten by monitor segregation
effort, hence bringing back again.

Change-Id: I339f4296562e3b4dfd6f3a71102385e395f00268
CRs-Fixed: 3108200
2022-02-08 04:36:40 -08:00
Amith A
bf6d8b4a64 qcacmn: Remove duplicate copyright
Remove duplicate copyrights

Change-Id: I7115db15f82df17cc972c76d013008cbaf57b9ae
2022-02-08 02:05:17 -08:00