Commit Graph

18748 Commits

Author SHA1 Message Date
Edayilliam Jayadev
4855c6ef1a qcacmn: Enable management rx reo scheduler
Enable management Rx reorder scheduler.

CRs-Fixed: 3410648
Change-Id: I90fad2bb3c118f3d9021dc94ecdd1a300c9ab00c
2023-03-14 08:46:27 -07:00
Edayilliam Jayadev
fd71acd187 qcacmn: Add WMI APIs to get endpoint ID
Add WMI layer APIs to get endpoint ID.

Change-Id: Id1b3f951755f662344239e306312db5b31b32296
CRs-Fixed: 3408703
2023-03-14 08:46:17 -07:00
Edayilliam Jayadev
10fe6982eb qcacmn: Add HTC APIs to schedule/cancel custom callbacks
Add HTC layer APIs to schedule/cancel custom callbacks.

CRs-Fixed: 3408693
Change-Id: I1316685707b7abc6c8d86ec4d237dc920f9f78eb
2023-03-14 08:46:06 -07:00
Edayilliam Jayadev
63c5956a01 qcacmn: Add APIs to schedule/cancel custom callbacks
Add HIF/CE layer APIs to schedule/cancel custom callbacks.

Change-Id: I9cc7dcf73a726cb1ed2d7945d6ce9e736d42af52
CRs-Fixed: 3408690
2023-03-14 08:45:56 -07:00
Himanshu Batra
fe8e699301 qcacmn: Add API to get osif handle for wds ext peer
Add API to get osif handle for wds ext peer

Change-Id: I1294acee12c9f4d12f8b8728f8d89e61fec81d9f
CRs-Fixed: 3430300
2023-03-14 05:00:19 -07:00
Chaoli Zhou
6de3f20f10 qcacmn: Add common memory alloc/free API
Add qdf_mem_common_alloc/qdf_mem_common_free for
the platform that want to replace malloc with valloc
due to limited continuous physical memory.

Change-Id: If3c5716ff6d62c0a4f6f21b7ebf9eef1e3f0e529
CRs-Fixed: 3429140
2023-03-14 03:26:03 -07:00
Karthik Kantamneni
2edb0c0388 qcacmn: Add RX handling for RHINE architecture
RHINE is soft UMAC based architecture which is not having
REO block, all the REO functionality will be implemented
in F.W and host level. Host will get the RX packets in
CE-RX rings in HTT format, to reap RX packets new HTT
messages will be extracted and parsed.

So implement RX handling based on new softumac architecture for RHINE.

Change-Id: If430dd017309e2b2a3eb5e27e1d8b58696abceb4
CRs-Fixed: 3382920
2023-03-14 01:41:05 -07:00
Jeff Johnson
f3217146fa qcacmn: Fix misspelling "bandwitdth"
Fix misspelling: "bandwitdth" => "bandwidth"

Change-Id: I7fde29d0be481e6e4214a00d68ff4c468d03a322
CRs-Fixed: 3430187
2023-03-13 23:54:33 -07:00
Jeff Johnson
83e9a49c12 qcacmn: Fix misspelling "funtcion"
Fix misspelling: "funtcion" => "function"

Change-Id: I3e752b893a07458cc414035c95a8c9f0abe20022
CRs-Fixed: 3430195
2023-03-13 23:54:22 -07:00
Jeff Johnson
2574da9bf9 qcacmn: Fix misspelling "sucsess"
Fix misspelling: "sucsess" => "success".

Change-Id: I93f4b97e2d753362843a08c86a947f936b563c28
CRs-Fixed: 3430188
2023-03-13 23:54:11 -07:00
Devender Kumar
610e19cab2 qcacmn: Add support for peer map handler
Call ol_peer_map handler when AST_OFFLOAD_SUPPORT
is enable, so that client_connect_ex event can be
sent to IPA.

Change-Id: I688cb95dec43180133a8948573fbd45af3cb9f33
CRs-Fixed: 3419264
2023-03-13 13:44:39 -07:00
Devender Kumar
d67fc1fc09 qcacmn: Fix Tx queue selection when IPA is enable
When IPA is enable and TX DATA ring mask is not set for
TX ring given to IPA, Host should not select the TX queue
which is given to IPA, hence override the TX queue to 0 if
TX queue id is same as IPA TX data ring.

Change-Id: Ia7fe49ef50deee869c84de9e741362cb31d60bf0
CRs-Fixed: 3419264
2023-03-13 13:44:26 -07:00
Jeff Johnson
ca2123d842 qcacmn: Fix target_if.h documentation
The kernel-doc script reported documentation issues in
target_if/core/inc/target_if.h, so fix them.

Change-Id: I3c539f3a581f5886c013e34fa54904899cbe9d17
CRs-Fixed: 3417467
2023-03-12 15:13:35 -07:00
Edayilliam Jayadev
d3f1f54f3f qcacmn: Add mgmt Rx REO scheduler debug support
Add support for mgmt Rx REO scheduler debug.

CRs-Fixed: 3409291
Change-Id: I5027fb4196d3d072fe4ade880eb217bcef47a6d3
2023-03-12 13:42:51 -07:00
Amrit Sahai
176e6fa814 qcacmn: Fetch and update rssi_chain stats from Firmware
fetch and update rssi_chain stats from firmware.

Change-Id: I0a16ebda0ab17d32c7f7daab36eeebb6c4d691f9
CRs-Fixed: 3404107
2023-03-12 00:23:28 -08:00
Shreedhar Parande
000049c119 qcacmn: Delete link peers upon bridge peer creation failure
If bridge peer creation is failed, delete all link peers belongs
to that MLD.

CRs-Fixed: 3428992
Change-Id: Ife492cbaa4bb0e80df2f5a62539804912fe76637
2023-03-11 16:02:53 -08:00
nobelj
3618c82727 qcacmn: Increase capacity to store status buffer in tx monitor
In tx monitor, the maximum capacity to store status buffer is 64.
During high throughput scenario number of status buffer exceeds 64.

Change-Id: I5e8d1945773d2027a4adbc141fa868587e80acd1
CRs-Fixed: 3430126
2023-03-11 13:41:25 -08:00
Kenvish Butani
8984ecea8d qcacmn: Fix for crash during FW recovery
Fix for the crash seen during FW recovery
while doing disable ol_stats for all the
MLO pdev's

Change-Id: Ie7b037e2d124009658a01d2a00d0a74a784ac51f
CRs-Fixed: 3430134
2023-03-11 03:50:37 -08:00
Rakesh Pillai
9374de2500 qcacmn: Fix monitor status ring history
Currently for the monitor status ring history,
the event type is not being logged.
Fix the event type logging in the monitor status
ring history.

Change-Id: I43f07bf9a4232a203b7a996db6038a081249ffc9
CRs-Fixed: 3425325
2023-03-10 19:42:04 -08:00
Chaithanya Garrepalli
97fcc90a7e qcacmn: Handle SG case with multiple MSDUs in MPDU
In case of where multiple scatter gather frames are
part of same MPDU last_mpdu_in_msdu will be set only
for last buffer of last scatter frame in MPDU.

Below is the hw descriptors bits when 2 scatter frames
are part of a MPDU

 -----------------------------------------------------------
|Buffer_num | MSDU_NUM | first_in_mpdu | cont | last_in_mpdu |
 -----------------------------------------------------------
|    1     |     1    |       1       |  1   |      0       |
 -----------------------------------------------------------
|    2     |     1    |       0       |  0   |      0       |
 -----------------------------------------------------------
|    3     |     2    |       0       |  1   |      0       |
 -----------------------------------------------------------
|    4     |     2    |       0       |  0   |      1       |
 -----------------------------------------------------------

In above case scatter MSDU boundary checks can be done only
based on continuation bit. So while reaping use continuation
bit instead of last_in_mpdu bit to detect boundary

Change-Id: I42e7360d6a1b7d0cfd9a6688cae51e3854d430ec
CRs-Fixed: 3388668
2023-03-10 16:11:55 -08:00
Shashikala Prabhu
09c1bea86c qcacmn: Update the datatype of T2LM provisioned links
T2LM provisioned links of preferred link structure are represented as
bitmap of type wlan_link_band_caps enum. Hence, replace the datatype
'enum wlan_link_band_caps' with 'uint16_t'.

Change-Id: If6cdaf5b12a9bd8b06050db67464fb4db642883b
CRs-Fixed: 3429430
2023-03-10 16:11:43 -08:00
Neha Bisht
80ee0f60c6 qcacmn: Add support for primary TQM migration
Add support for primary TQM migration.

Change-Id: Ifd62eb7e731bbd9e86c462642fd2e20d50d5495a
CRs-Fixed: 3410900
2023-03-10 16:11:33 -08:00
Basamma Yakkanahalli
031d51614e qcacmn: Add DBR support for standalone sounding CBF CV data
Added change,
1. Define new DBR module DBR_MODULE_CBF to handle TxBF
   standalone sounding CV data and corresponding ring
   initialization.
2. API to extract new meta data TLV added for CV data.
3. API to handle standalone sounding complete.

Change-Id: Id28c5561bb8b3bf08de7ddd9aa2365e2ae99f1c2
CRs-Fixed: 3415627
2023-03-10 00:44:21 -08:00
Hariharan Basuthkar
aecdfaa78a qcacmn: Rectify 20 MHz opclass check
When the CLI command wifitool athX disable_opclass_chans is executed
with a valid 20 MHz operating class, the command throws an error,
"Opclass should only be 20 MHz opclass" on the console.

The opclass passed as an argument to reg_enable_disable_opclass_chans,
which is greater than 20 MHz in value, makes the API reg_is_20mhz_opclass,
always return false.

To fix the issue, pass channel spacing (in MHz units) as an argument to
the 'reg_is_20mhz_opclass'. Also rename 'reg_is_20mhz_opclass' to
'reg_is_chanspacing_20mhz' as we are verifying if the channel spacing
of an opclass is close to 20 MHz; not verifying the opclass itself.

Change-Id: I198b4d90c68613210377b96f6836c5b8c810dc7f
CRs-Fixed: 3410934
2023-03-09 15:43:22 -08:00
Namita Nair
f27ac75cff qcacmn: Fix inc/wlan_ipa_core.h documentation
Fix documentation issues in inc/wlan_ipa_core.h
identified by kernel-doc script.

Change-Id: Ibd4867f8553326078d08f2fde9469ee74a1ec963
CRs-Fixed: 3424480
2023-03-09 12:58:36 -08:00
Parikshit Gune
5106bd66b4 qcacmn: Set PPEDS src info in WDS ext mode
For WDS ext mode in MLO cases, all the link peers
should get the the newly created VP as src info
for DS peer routing.

Change-Id: I0811f9403819c3ed204799e167994ecb3d60cf96
CRs-Fixed: 3425239
2023-03-09 06:33:11 -08:00
Devender Kumar
91624e52ba qcacmn: Add DP interrupt mask to support 16 MSI
pinnacle support 16 MSI value, add dp interrupt
mask assignment till 16 msi_data_count.

Change-Id: Ie7ea25d14ff6260d6ab8933ec216caa5fdfed668
CRs-Fixed: 3419264
2023-03-09 06:33:01 -08:00
nobelj
8c72eb9696 qcacmn: Add hal api to set word mask
Add hal api to set tx monitor word mask

Change-Id: I4eb365b3a7d4f83edcb20146951daf0d5af3d68d
CRs-Fixed: 3421500
2023-03-09 00:41:24 -08:00
Parikshit Gune
ba18ce8164 qcacmn: Setup DS VP on FW recovery
On FW recovery, do not allocate a new VP and use
the existing profile to setup DS VP

Change-Id: I330613fa104c51becc1018750edf91d8055edb01
CRs-Fixed: 3427382
2023-03-08 23:01:59 -08:00
Paul Zhang
f453c827cb qcacmn: handle MBSSID IE for critical update
With the MBSSID IE, it has to generate the corresponding
beacon and probe response frames. Then handle the generated
frames per critical update feature.

Change-Id: Iff3fdb3a335a98d9ed7e51957885e2f161069807
CRs-Fixed: 3376521
2023-03-08 21:10:24 -08:00
Jinwei Chen
a3d8c8606d qcacmn: Add WBM2SW ring descriptor structure symbol
Add WBM2SW ring descriptor structure symbol for KIWI,
this is helpfu for WBM2SW revelant issue debugging.

Change-Id: I81f9029ae47026f5530481b2de3c60502a15acc6
CRs-Fixed: 3427974
2023-03-08 21:10:15 -08:00
Karthik Kantamneni
84731a352a qcacmn: RHINE architecture specific HTT changes
Add HTT changes which are specific to RHINE architecture.
Some of the changes like dedicated TX endpoint service,
fastpath implementation and few other message handling
is different in RHINE. Current change add support for
RHINE specific HTT implementation.

Change-Id: I90c2d1d66cdadc5935e6b819e3f19e635c45cb51
CRs-Fixed: 3382915
2023-03-08 17:24:42 -08:00
Jinwei Chen
c2c0f7f7f9 qcacmn: Support REO2SW ring pointer update threshold configuration
Support REO2SW ring pointer update threshold configuration,
it is helpful for PCIe utilization improvement.
timer based threshold - M: issue pointer updates when M micro
seconds has elapsed.
number based threshold - N: issue pointer updates when N entries
updates occur.

Change-Id: I49ed388520fd52e97e303d6ea9c04ced6cb5cf5f
CRs-Fixed: 3420101
2023-03-08 17:24:33 -08:00
Venkateswara Naralasetty
c66b8677cf qcacmn: add new counter to fisa stats
Add a new counter inccorect_rdi to fisa stats to log incorrect reo
destination indications in fisa processing.

Change-Id: I785ad90ae1d36b2f6b9b1888373a29fcbd65348e
CRs-Fixed: 3426537
2023-03-08 14:21:24 -08:00
Sheenam Monga
9567fe0031 qcacmn: Fix reg_get_min_max_bw_on_cur_chan_list kernel doc
The kernel-doc script identified some documentation issues in
the doc of reg_get_min_max_bw_on_cur_chan_list, so fix those
issues.

Change-Id: I5f720706b8c744f39d4ad6f6dbd6e722c3d53096
CRs-Fixed: 3409405
2023-03-08 12:27:52 -08:00
Shreedhar Parande
60919a5e84 qcacmn: Add APIs to create bridge peer
Add APIs to create bridge peer. Register call
back for the same to handle bridge peer
creation.

CRs-Fixed: 3416877
Change-Id: I51d8f023576c93121e42d54243721edbf705e6b4
2023-03-08 12:27:42 -08:00
Yu Tian
3cbef591fb qcacmn: Fix napi_complete function call limitation
napi_completion could stop NAPI re-queue only if
returned budget is small than limit budget. WLAN
driver IRQ affinity change would force NAPI complete.
In some cases, RX is in busy loop, RX NAPI could be
queued to more than one CPU NAPI polling list, which
will lead system crash. This change is aimed to make
sure that returned budget is smaller than the limit.

Change-Id: I1b93596b8afc3ee09c4caeceb7a7ba98c4bed4d1
CRs-Fixed: 3420953
2023-03-08 12:27:33 -08:00
Pavankumar Nandeshwar
e93182a1b2 qcacmn: Do not allow Umac reset in DS mode
Do not send prerequisite htt message informing
support of Umac reset feature to firmware
if DS is enabled

Change-Id: I1272579a3079e126b81a3b324009f6f32c65a904
CRs-Fixed: 3425584
2023-03-08 09:29:23 -08:00
Kenvish Butani
bad3898323 qcacmn: Ini and Config command Support for MLO Link Peer Stats
Add support to enable/disable MLO Link Peer stats through
ini and cfg80211tool enable_ol stats command

Change-Id: Id1229a149befa416d060e1b07eee150e6b295abf
CRs-Fixed: 3397721
2023-03-08 07:43:00 -08:00
Kenvish Butani
4c88b99fe7 qcacmn: Add support of HW Link ID
Add support of HW Link ID in PeerMetaData.
Retrieve the HW Link ID in both Rx per packet
path and RX Error path, store it in nbuf cb.
Use the stored value from nbuf while updating
MLO peer link statistics.

Change-Id: I11596d44fe8557af568fd399d0c0a04d2b887b2a
CRs-Fixed: 3397721
2023-03-08 07:42:49 -08:00
Amrit Sahai
ee22464bee qcacmn: Add support to aggregate Link level stats
Add support to aggregate and ship MLO link stats
for ML peer.

Change-Id: Icb6c7b66d6f5c27e8a8f99655cf468e90c655ad6
CRs-Fixed: 3397721
2023-03-08 07:42:38 -08:00
Amrit Sahai
24dc3d385c qcacmn: Add Support of TX MLO Link Stats for ML Peer
Add Support to update TX per packet path, MLO Link
statistics for ML Peer.

Change-Id: If8aa5433221ecbb7d84b3f6777784524f43179a3
CRs-Fixed: 3397721
2023-03-08 07:42:28 -08:00
Kenvish Butani
7fdd918e7f qcacmn: Add Support of Rx MLO Link Stats for ML Peer
Add Support to update Rx per packet path, MLO Link
stats for ML Peer

Change-Id: Ica25993126b4ce49f9e36b7b290d9887e4885155
CRs-Fixed: 3397721
2023-03-08 07:42:17 -08:00
Kenvish Butani
3243b9e4f4 qcacmn: Add Support of Rx Err MLO Link Stats for ML Peer
Add Support to update Rx Error path, MLO Link stats
for ML Peer

Change-Id: Ie5000d0d30a41fa69c86259bae0fd7a8094bddf7
CRs-Fixed: 3397721
2023-03-08 07:42:07 -08:00
Kenvish Butani
4ae60e4df1 qcacmn: Add Support of MLO Link Stats for ML Peer
1) Allocation of memory to hold MLO Link Stats
   at MLD Peer level.
2) Modify the Macros to update MLO link stats.
3) Init and reset the Stats

Change-Id: Id4e9d40e212c5093159ae0c7d6316e93d19cf928
CRs-Fixed: 3397721
2023-03-08 07:41:57 -08:00
jinbao liu
ff32a66fd5 qcacmn: Fix redundant moving the TP in the REO DST RING
In RX process, driver reaps the data in the REO DST RING
by successively move the tail pointer. The problem is
that driver will move the tail pointer twice if something
wrong happens, like sanity check, which will lead to the
miss of an entry next to the abnormal entry. This issue
has existed for a long time due to the code refactoring.

Change-Id: I2c5d402f81090497a4414efbf6e7e79130ba11f5
CRs-Fixed: 3426707
2023-03-08 05:59:29 -08:00
Rohan Dutta
b606c4ad39 qcacmn: Add support for AKM25
Add support for AKM FT_SAE_EXT (00:0f:ac:25)

Change-Id: Iae9fbfbc0989e0bcac343c1814ad4a442243e8f4
CRs-Fixed: 3408695
2023-03-08 04:19:12 -08:00
Shivam Kumar
f2fe886cd6 qcacmn: Add pre rx ack timeout support for wmi
Add pre rx ack timeout support for wmi

Change-Id: I3e497e76f8e64867a3d40b8d9421bb474fe865d3
CRs-Fixed: 3406368
2023-03-08 02:30:47 -08:00
Pooja T C
7af90e2d6b qcacmn: Add support for wmi command for standalone sounding
Added an API to send wmi command for standalone sounding

Change-Id: I3d7d8b6e67005b451e84c1875fd0d2cecacd8b7b
CRs-Fixed: 3415627
2023-03-08 02:30:37 -08:00
Jeff Johnson
04d130b0a6 qcacmn: Fix target_if/cfr documentation
The kernel-doc script identified documentation issues in the
target_if/cfr folder, so fix them.

Change-Id: I5af96dbc3b6adcd369134422dd2f9e5a6be799e9
CRs-Fixed: 3417466
2023-03-08 00:45:10 -08:00