提交图

899 次代码提交

作者 SHA1 备注 提交日期
KARTHIK KUMAR T
31278694e1 qcacmn: single dev reinject cleanup
single dev reinject cleanup in DP

Change-Id: I2376a17ac5e850ca21db83714124fd0ccf62243d
CRs-Fixed: 3359180
2023-02-07 04:55:31 -08:00
Prakash Manjunathappa
3cde321196 qcacmn: Add PEACH device support
Add support for peach device. Add peach conditional statements.

Change-Id: Ia107e60fd00b4938984414fd92d6699d11fd3797
CRs-Fixed: 3394198
2023-02-07 00:54:44 -08:00
aloksing
d47d3c4723 qcacmn: Update vht flag values per user
Update vht flag values per user when vht flag is set

CRs-Fixed: 3387851
Change-Id: Ibc0f729f39539a796d4deb0ddae35460c27ce9a8
2023-02-05 04:32:59 -08:00
Jeff Johnson
d426f58323 qcacmn: Fix hal/wifi3.0/kiwi documentation
The kernel-doc script identified some documentation issues in the
hal/wifi3.0/kiwi folder, so fix them. For one public function make
sure the interface is documented, and not the implementation.

Change-Id: Ie38a909407d5c2a727c0800ef1a39b89b4ee5e61
CRs-Fixed: 3390484
2023-01-31 19:43:25 -08:00
Ruben Columbus
11742e7129 qcacmn: alloc reo qref table in dp_soc_attach
change allocation location for reo qref table.
per probe allocation results in mem alloc failure when
frame is fragmented

Change-Id: I5922bddebcd0577ba38734ae7d4194d726d825aa
CRs-Fixed: 3326520
2023-01-26 16:11:27 -08:00
Radha Krishna Simha Jiguru
2776d767a2 qcacmn: DSC-Add search_idx tbl alloc framework
In STA mode ast idx override approach is used. In DSc to use ast idx
Need to configure a search idx register with ast idx and cache set number.

Added needed logic to instantiate search index register and
use it for STA mode in DSC path.

Change-Id: I6b3fb7c01a39b16ff1d473381c6155436fe2b27a
CRs-Fixed: 3375219
2023-01-24 06:56:14 -08:00
Hariharan Ramanathan
a11c0b998f qcacmn: Remove file hal_be_api_mon.h included in hal_be_generic_api.h
Removing this file hal_be_api_mon.h included inside hal_be_generic_api.h
as it will get included from the parent files when required flags are
enabled.

Change-Id: I5dcf211dd03e2bd77cea51d4de3c07597a5dcf8e
CRs-Fixed: 3384459
2023-01-24 01:35:47 -08:00
Mohammed Ahmed
cef49bdf89 qcacmn: add SSR host log collection API usage
Current code does not use the SSR host log collection API.
Fix this by adding SSR host log collection API usage.

Change-Id: I9dfb0bd7054986760a711d0752f37f4327c706b2
CRs-Fixed: 3339933
2023-01-19 20:44:09 -08:00
Nandha Kishore Easwaran
c7de5d4ddc qcacmn: Initialize ppe related function pointer to null
Initialize ppe related function pointers to null for 5332 and add a
check before calling the function pointer.

Change-Id: Idcaecfa839ff6822ab385053405256c201579bda
CRs-Fixed: 3378893
2023-01-19 12:28:08 -08:00
Hariharan Ramanathan
f75a30225c qcacmn: Add changes to move ioremap outside interrupt context
Add changes to move ioremap of PMM SCRATCH register outside
interrupt context, as ioremap in interrupt context in not valid.

Change-Id: I0fa645c55e10a5241011a1f4ffdccdca48c50d29
CRs-Fixed: 3371194
2023-01-10 05:32:28 -08:00
Tallapragada Kalyan
328ea67a32 qcacmn: enable FSE with MLO support
from Beryllium onwards a single Flow Search Table
will be used across multiple radios. to ensure this
a single FST attach is called for the first SOC's
pdev and FST detach is called only during last pdev
of last SOC. the same FST instance is saved in all
pdevs of all the SOCs

CRs-Fixed: 3366409
Change-Id: I42fbdc6f09fb902021877e100a2831a1a24bc975
2023-01-04 18:30:46 -08:00
Pavankumar Nandeshwar
4e0ae9b556 qcacmn: Set search idx and cache mapping for ppeds
Set search idx and cache mapping for ppeds in
sta mode

Change-Id: I1f892d329878e093d19324a178566b87715e1736
CRs-Fixed: 3367824
2022-12-29 05:19:41 -08:00
Sai Rupesh Chevuru
166a30648f qcacmn: sanity checks in hal_attach
In case of memory allocation failures,
return appropriate failure to the caller in hal attach.

Change-Id: Ifc319bbc274d8a13836968d460eb8067857363b8
CRs-Fixed: 3357203
2022-12-29 05:19:31 -08:00
Yu Tian
70c9b142e8 qcacmn: Fix invalid rate info. in monitor mode
Fix NSS value is not filled in VHT monitor mode.

Change-Id: I9a3edd48d677b61c14503a5a55d8d177b5c92629
CRs-Fixed: 3368014
2022-12-29 02:46:25 -08:00
Yu Tian
b05959171c qcacmn: Check system suspend status before REO CMD ring access
REO module may hang when REO commands are queued after WoW enable WMI
sent to FW. Change is used to check WoW progress before accessing REO
CMD ring. If WoW is in progress, then defer REO commands.

Change-Id: I9cd8390e77ef33f98f84cb604f152e3f9a0e4203
CRs-Fixed: 3362608
2022-12-28 19:19:25 -08:00
nobelj
f1dd81866f qcacmn: Add support for firmware to software tlv
Added support for parsing firmware to software tlv. which is mainly used
for populating frequency of the current packet.

Change-Id: I67c552e6d6b5caf9c12c34e553bad70b89b30c40
CRs-Fixed: 3270364
2022-12-27 17:07:35 -08:00
KARTHIK KUMAR T
a2625b18ab qcacmn: Get ast_idx from dp peer structure
Get the ast_idx from dp peer structure to
set search index in HW tx descriptor

Change-Id: Icc7e70d8bb739348403663a1fe647849c57d277a
CRs-Fixed: 3346449
2022-12-27 14:27:45 -08:00
Manoj Ekbote
eddc343b43 qcacmn: Intra-BSS MLO changes for WKK v2
Use destination chip and pmac IDs from TLV.
Build flag for HW assist feature is not enabled yet,
so code is not exercised.

Change-Id: Ia9175d6597a7a2780f451d99a9f8ece7a16049e5
CRs-Fixed: 3262344
2022-12-26 11:47:55 -08:00
Tallapragada Kalyan
80e1cfff99 qcacmn: add new fields to flow rule HAL API to support PPE
waikiki supports sending a packet from REO2PPE if a flow
rule matches. these changes are added to take advantage of
this HW feature when ever we are adding a flow rule

CRs-Fixed: 3359141
Change-Id: I8fedfcc759bc0427d71d3bb615e61ba38577c5c0
2022-12-21 15:56:57 -08:00
Nandha Kishore Easwaran
f6ecea5fa3 qcacmn: Fix compilation for Big endian
Fix compilation issue for Big endian mode.

Change-Id: Idea5c18544f8ca2894f1859fa311b56c62df1a51
CRs-Fixed: 3361629
2022-12-21 09:13:30 -08:00
Rakesh Pillai
00b746a64d qcacmn: Increase the field width of bandwidth for 320 MHz
The current field width for bandwidth parsed from
tx completion status is only 2-bits, which is not
sufficient for 320 MHz and 240 MHz, since these enum
values are 4 and 5 respectively,  which needs a
minimum field width of 3-bits to store.

Increase the field width of bandwidth in the tx
completion status data structure to account for
320 MHz and 240 MHz enum values.

Change-Id: Ie108f31537607ab9ebf6510542b8967c0272e383
CRs-Fixed: 3359371
2022-12-20 11:56:44 -08:00
Jeff Johnson
f8a610f679 qcacmn: Fix hal_rx.h documentation
The kernel-doc script identified a multitude of documentation issues
in hal_rx.h, so fix them.

Change-Id: I36913abcfea5504b1fdea2afb5c71810b08e4da6
CRs-Fixed: 3352421
2022-12-17 21:25:44 -08:00
Jinwei Chen
1bf08f3566 qcacmn: Add TX completion ring desc sanity check
Suspect HW update WBM2SW ring HP, but the ring entry contents are
not updated accordingly which then host will fetch one stale ring entry,
this makes other TX packet are freed unexpectedlly.

Add change to detect this situation earlier, if HW cookie conversion is
done, then invalidate 2nd dword for upper 32bits of VA, so next time when
reap this ring entry contents to know if this desc is updated by
HW or not. if HW cookie conversion is not done, then compare the PA in
buff_addr_info with PA in current TX desc to check.

Change-Id: I351eb4f860216fc618ff28736d4832fcec45dcc5
CRs-Fixed: 3345935
2022-12-07 09:47:10 -08:00
Nandha Kishore Easwaran
bbe3f3466f qcacmn: Add wmask functions for QCA5332
Add wmask based functions for QCA5332

Change-Id: I77cfa590d898d9db294e42f699dd2f6bda22932c
CRs-Fixed: 3343967
2022-12-06 09:32:27 -08:00
Nandha Kishore Easwaran
ae55a446c6 qcacmn: Scratch register read api for qca5332
Add a new api to read tsf2 and tqm scratch register for qca5332.
The function to read these registers are different from that of qcn9224
since qca5332 is a AHB radio and reading register involves ioremap of
address range.

Change-Id: Ib05df2ddf528594ae67109f8bcb409424a4350a2
CRs-Fixed: 3331476
2022-12-02 18:05:47 -08:00
Nandha Kishore Easwaran
70a8c0b8f8 qcacmn: Add monitor includes into 2_0 support
Add monitor 2.0 code into QCA_MONITOR_2_0_SUPPORT macro.

Change-Id: Icd001a007c513750811b26eb7928c56dad1f9a79
CRs-Fixed: 3342797
2022-11-28 04:58:22 -08:00
Pavankumar Nandeshwar
a2ddd8956b qcacmn: Retain ds ring indices across wifi restart
Retain ds ring indices across wifi restart to avoid
edma hang. Fetch the indices from ds module and set
the corresponding ds ring indices.

Change-Id: Ia299a7006166aef096c7d2c1f65f6bef65415a37
CRs-Fixed: 3332152
2022-11-25 00:08:26 -08:00
Amir Patel
af0472aa08 qcacmn: Update PPDU drop counter
Update PPDU drop counter from monitor ring

CRs-Fixed: 3341905
Change-Id: I63f5b4d6a3e1e0155cf0558bea18704df073e2a9
2022-11-23 21:52:03 -08:00
Mohammed Ahmed
2f2d0e141c qcacmn: Add break in case statement
Case statement is missing a break between cases.

Change-Id: Iedba605d2fdd0f111730bc2f9f02bb89bdb6c834
CRs-Fixed: 3343781
2022-11-22 18:45:12 -08:00
Jia Ding
160d6306ea qcacmn: Correct rx_msdu_end_tlv and rx_mpdu_start_tlv len
With CONFIG_NO_TLV_TAGS=n, seeing below values showing in dump.
sizeof(struct rx_msdu_end_tlv) = 136
sizeof(struct rx_mpdu_start_tlv) = 128

Indeed these values match current comments for CONFIG_NO_TLV_TAGS=y.

Therefore correct the comments for rx_msdu_end_tlv and
rx_mpdu_start_tlv length for better readability.

Change-Id: I655f8fb9df09f5f7bb63f4bb2e3f297725354fbe
CRs-Fixed: 3340399
2022-11-22 10:22:20 -08:00
Linux Build Service Account
aba8eb07d0 Merge "qcacmn: Avoid read access to IPA TX doorbell address" 2022-11-20 06:53:45 -08:00
Jia Ding
a606a71b1e qcacmn: Avoid read access to IPA TX doorbell address
Below signature is seen on sdxpinn when HOST reads IPA TX
doorbell address, which leads to HLOS crash.

Internal error: synchronous external abort: 96000010

Indeed IPA TX doorbell address is write-only. Behaviors
on such read access violation is arch-dependent. On
certains platforms, such violation is ignored but read
returns 0.

Hence remove the read access to IPA TX doorbell address
in hal_srng_dst_init_hp() to avoid arch-dependent
behavior.

Change-Id: I3486cd81741922e697e2b3d307db3209b710aa6a
CRs-Fixed: 3339302
2022-11-19 21:55:01 -08:00
Kai Chen
9cb6199f70 qcacmn: Add EHT debug counter on PPDU
Add debug count to count PPDU based on UL/DL and type compression
mode

Change-Id: I2b320e6562d309cc0a178a137162ab0499c81e58
CRs-Fixed: 3326278
2022-11-17 08:09:23 -08:00
Kai Chen
83521665e6 qcacmn: Add debug counter for monitor mode
Add debug count for count MPDU received based on preamble type,
reception type, UL/DL and user for max 4 user for MU monitor
mode

Change-Id: I87f1553e1f2f8276501366a825d629cf051d8a80
CRs-Fixed: 3326272
2022-11-14 16:20:25 -08:00
Yeshwanth Sriram Guntuka
9b059a3bc0 qcacmn: Add support for getting CE srng info for Direct Link
Add support to fetch CE srng information used for
direct link datapath.

Change-Id: If38b892b28eba711d7949fa02926205dc601a50e
CRs-Fixed: 3317501
2022-11-12 03:11:01 -08:00
Yeshwanth Sriram Guntuka
e228622034 qcacmn: Add support to configure MSI registers for Direct Link CE
The MSI address and data information for Direct Link
copy engines will be available once the WiFi driver
on LPASS is initialized. Add support to configure the
IPCC address and data values into Direct Link copy
engines at runtime.

Change-Id: I5e7dff90c2f1ff764462c235deb5795ed019a16b
CRs-Fixed: 3316679
2022-11-12 03:10:53 -08:00
Yeshwanth Sriram Guntuka
99615e170d qcacmn: Add support for Direct Link refill ring
Add support and ops for initialization and
deinitialization of Direct Link refill ring.

Change-Id: I2c7018c4f8411fb7a590cfbb8b991f9152b22397
CRs-Fixed: 3316656
2022-11-12 01:23:24 -08:00
Sai Rupesh Chevuru
7768a45743 qcacmn: Debug enhancement for rx packet tlvs
Dump all the tlvs when WORD_BASED_TLV is disabled.

Change-Id: I2615474c905417986fa8b43005db5c8e48039d0a
CRs-Fixed: 3324208
2022-11-09 02:03:13 -08:00
Nanda Krishnan
72592f40f8 qcacmn: Updating the correct vdev_id for multivap
When Multivaps are configured in a radio, the vdev_id's are
not updated as expected.
With the changes, the vdev_id are properly updated in the registers

Change-Id: I7d987e96bd0f8a91f13025fa6975415ea235ce12
CRs-Fixed: 3318563
2022-11-07 13:10:24 -08:00
Ripan Deuri
11ccd80f56 qcacmn: Add HAL APIs to read tsf2 and tqm scratch register
Add support to read TSF2 and TQM scratch regitser in the HAL layer
for WKK v1 and v2 board.

Change-Id: I0ef5e8cf4e06c0b5c98169252a81f70989285d2d
CRs-Fixed: 3321782
2022-10-31 13:38:15 -07:00
Sreeramya Soratkal
a8f77e6e3f qcacmn: Assign appropriate RBM id corresponding to the chip
For Multi chip configuration, assign appropriate value for
Return Buffer Manager(RBM) idle link descriptors based on chip_id.

CRs-Fixed: 3314584
Change-Id: I1a2f9a09b04960aff01b4ec625110e0619a9850b
2022-10-28 01:52:34 -07:00
Rakesh Pillai
f533809136 qcacmn: Drop mpdus received on non-monitor PMAC
Currently the monitor mode filter settings are set
for both the PMAC. Hence it is possible that the
non-monitor PMAC (the PMAC on which monitor vdev
is not running), can receive packets and forward them
to the monitor destination ring.

The above scenario will lead to a ppdu_id mismatch
when reaping the monitor status ring and comparing
the ppdu_id in status ring with the one in monitor
destination ring, since monitor status ring will
have ppdu_id from the PMAC on which monitor vdev is
running, whereas monitor destination ring will have
packets from both the PMAC.

In order to mitigate the above issue, detect the
packets in the monitor destination ring, which are
not from the PMAC where monitor vdev is running, and
drop them.

Change-Id: I32392ceeadffd9cb7a4dd76336004a9dcbb99404
CRs-Fixed: 3318036
2022-10-27 21:11:35 -07:00
Subrat Mishra
92fc6fa7c1 qcacmn: Add control frame stats accounting support
Add control frame stats accounting support.
Accumulate both per peer BAR and NDPA counts in Tx and Rx per PPDU stats
path. Accumulate per peer RTS success and failure count only in per PPDU
Tx stats path.

Change-Id: I78fb3546cd831559e208a7330feb2eb67b9a28de
CRs-Fixed: 3313435
2022-10-20 10:55:12 -07:00
Jeff Johnson
4f56107e25 qcacmn: Fix misspelling of "address"
Fix misspelling of "address" in hal_be_rx_tlv.h.

Change-Id: I453ba64489fc790b05e6880f943be7a8d1cba75c
CRs-Fixed: 3314144
2022-10-19 22:31:07 -07:00
Kannan Saravanan
fb0b54baee qcacmn: Initial changes for QCN9160 bring-up in HAL layer
Add device Id and target type checks for qcn9160 target
compilation.

Change-Id: I3f9bf381bd340755639184753a74159364331037
CRs-Fixed: 3282637
2022-10-18 10:08:14 -07:00
Tallapragada Kalyan
4c45f8a2ed qcacmn: get HP of RXDMA ring without incrementing
get the HP of the RXDMA ring without incrementing
This will ensure in case of nbuf failures the ring
HP remains unchanged

Change-Id: I69ec9207a44a4c50484933797326e962ad2d4a5c
CRs-Fixed: 3309394
2022-10-16 07:49:31 -07:00
Sai Rupesh Chevuru
ec90cac805 qcacmn: Compact tlv support for QCA5332
compact tlv support for QCA5332.

Change-Id: I6aff481bccab6e6368c6da5dd3a41f2e0b5f2b5e
CRs-Fixed: 3312287
2022-10-15 23:07:20 -07:00
Sai Rupesh Chevuru
12c8b0d0be qcacmn: compact tlv support for QCN9224
Adding compact tlv support for QCN9224, As part of this change
Rx tlv size will reduce from 384 bytes to 128 bytes.

Change-Id: I3f42a781e42b2e696a5b25d9c5f333c8cc83b7fe
CRs-Fixed: 3274152
2022-10-14 23:42:02 -07:00
Manish Verma
bc05063ebb qcacmn: Add support for DS UL processing
Add support for PPE-DS REO2PPE ring processing

Change-Id: I74f4195ce4a58d1afaef132257b969ce38a65e1c
CRs-Fixed: 3278270
2022-10-11 14:23:18 -07:00
Jeff Johnson
117ae69181 qcacmn: hal: Fix misspellings
Fix misspellings in hal/...

Change-Id: Icf033a647e6a15d46420d7102dc161b94fa7dd2c
CRs-Fixed: 3304685
2022-10-10 23:02:47 -07:00