提交图

75 次代码提交

作者 SHA1 备注 提交日期
Chaithanya Garrepalli
362e95bae6 qcacmn: Add NULL check in dp_mlo_get_soc_ref_by_chip_id
In dp_mlo_get_soc_ref_by_chip_id API add null check
for ml_ctxt

Also correct intraBSS code for mlo disabled cases

Change-Id: I25eb07e9ccd714ba819730c765dc07b00dd15482
2022-01-15 03:03:16 -08:00
Aakanksha Doda
d92a7a0776 qcacmn: Fix issues with rdkstats
The following issues are fixed with this change-
1. Sojourn stats were printing incorrect values
2. RSSI values were junk numbers

Change-Id: Ibed73cf370a309bf9db5baad37a0e8261c58463b
2022-01-12 05:34:00 -08:00
Chaithanya Garrepalli
1e9b37b023 qcacmn: fix WHUNT compilation issue
Fix compilation issue on WHUNT with MLO
enabled in WCN7850

Change-Id: I57ff334e9cf47468c30bc6884a9ead0a65a92eb5
2022-01-12 12:16:59 +05:30
Amir Patel
484c917fbf qcacmn: Fix WKK monitor compilation issues
Fix WKK monitor compilation issues

Change-Id: I04bd89341e61bdcef59ecb03baa6cf53ca970cbe
CRs-Fixed: 3100286
2022-01-10 23:54:10 -08:00
Naga
ca09c6cd98 qcacmn: Change BE monitor soc and pdev assignment with macro
Change BE monitor soc and pdev assignment with macro

Change-Id: I0bf47391dea37461cc8356cf3b41c20af0516662
CRs-Fixed: 3096222
2022-01-10 23:53:45 -08:00
Naga
902e67deb9 qcacmn: Fixes for wkk monitor bringup
Fixes for initial wkk monitor bringup in emulation.

Change-Id: Ic7b05b8822ef68daee7dd614fcac7a7de7b9b3fa
CRs-Fixed: 3087563
2022-01-10 22:14:01 -08:00
Naga
7798784bc5 qcacmn: Fixes for compilation issues
- Fixes for compilation issues after enabling
  monitor 2.0 support.
- change copyright year for all files in the chain.

Change-Id: I885e257bd8ca83850656d8a1f408c1bc34920d7a
CRs-Fixed: 3086483
2022-01-10 06:24:34 -08:00
Chaithanya Garrepalli
0ead24e9f6 qcacmn: Correct ml peer_id check in partner chips map
In dp_mlo_partner_chips_map API correct the ML peer_id
check

Change-Id: I036e725571d922a3d01f3f07e16bda755f6f966e
2021-12-28 10:52:03 -08:00
Jinwei Chen
1c27daa164 qcacmn: Remove HW CC CMEM cleanup for Kiwi
For Kiwi, if force device wake mechanism is enabled for register
writing, host will try to wake up UMAC before writing real register,
this also happened for CMEM write. but during soc deinit/detach
period, device might already lose power supply and then UMAC can't
be awake from host view result in panic.

Remove HW CC CMEM cleanup which is not necessary for Kiwi as
CMEM will be re-configured during next boot up.

Change-Id: I515308c065eefbba896cb232773b8d7ffc32d385
CRs-Fixed: 3097991
2021-12-27 13:00:41 -08:00
Chaithanya Garrepalli
9764cf5e3d qcacmn: Fix double free in MEC notify event
Fix double free of tx descriptors with MEC notify
event

Change-Id: I7456b14e8872fd7732afade7d49134c1fca9284b
2021-12-24 10:33:53 -08:00
Sai Rupesh Chevuru
90b1e60e57 qcacmn: Upgrading to htt_tx_wbm_completion_v3
Due to overlap with WBM block in QCN9224,
upgrading to htt_tx_wbm_completion_v3.

Change-Id: If6f7fd64686c9c1b35b253930e7918f570bd547c
2021-12-22 10:43:58 -08:00
Chaithanya Garrepalli
2f1a13fd88 qcacmn: Change bank profile init to soc init
As bank registers need to be reconfigured after
soc deinit. Initialize bank profiles in SOC init
instead of SOC attach

Change-Id: I3baaf62e1cb73d2882d03012e9e078523dcfe736
2021-12-22 00:54:17 -08:00
Chaithanya Garrepalli
ed4b7bf28b qcacmn: Write Rx desc SPT on partner SOC
Changes to write Rx descriptor secondary page
tables on partner SOCs.

Change-Id: If89eff3425078aebb975463a01d0a45c9f5a21db
2021-12-21 01:10:24 -08:00
Manoj Ekbote
6d737bd946 qcacmn: Fix build issue
Fix build issue for HMT

Change-Id: If99b2ced9e726217502742fc285a343e7ae30d2b
2021-12-16 14:03:49 -08:00
Sai Rupesh Chevuru
b43e679a58 qcacmn: Multicast support for MLO
Multicast support for MLO
1. Following functions are newly added.
	dp_rx_igmp_handler()
	dp_tx_mlo_mcast_handler_be()
	dp_rx_mlo_mcast_handler_be()
	dp_mlo_get_mcast_primary_vdev()

Change-Id: If215f843369e6e2621ef302b924e524c86f0d30b
2021-12-16 05:35:30 -08:00
Manoj Ekbote
80e882aa2a qcacmn: Intra-BSS changes for MLO
Use chip ID and destination peer to determine the target soc
and partner vdev for Intra-BSS in MLO case.

Change-Id: I709c52e74426c5e81b50c8063cad7669c0e7002d
2021-12-14 18:13:29 -08:00
aloksing
9a4ae1a05a qcacmn: print tx/rx stats for 11BE
Add and initialize function pointer to print BE/LI stats

CRs-Fixed: 3071271
Change-Id: Ib9748d475ac583b7404fcc5f1207b8019c7671a6
2021-12-09 11:17:34 -08:00
Sai Rupesh Chevuru
deb7bbf8de qcacmn: Fix for HMT SOD insmod crash
In the case of MCC due to low power mode atomic operation in
accessing the bank is resulting the crash.
Fix crash by using spinlock for WIN and mutex for MCC.

Change-Id: I5bb49cbed32e41ad88bfaeb24496adb180e37551
2021-12-08 13:50:16 -08:00
Chaithanya Garrepalli
97a1c8bff1 qcacmn: Changes to caluclate soc max peer id
Changes to caluclate max peer id in case
of MLO

Change-Id: Ib52cfb4f92eafb88689774e8e6c406751d30372a
2021-12-02 06:06:47 -08:00
Harsh Kumar Bijlani
af17c944fb qcacmn: Rx stats changes for BE HW vdev stats
Following peer stats are updated in per packet Rx path:
    to_stack
    multicast
    broadcast

In BE architecture, HW provides the support for basic vdev stats and
hence per packet stats updation of above parameters can be done only
when enhanced stats is enabled or HW vdev offload stats is disabled.

Avoiding per packet stats updation reduces CPU load and improves KPI.

Change-Id: Id7c11c025a8464951b615a7f7b006ce61db487fc
CRs-Fixed: 3067843
2021-11-30 00:58:04 -08:00
Sai Rupesh Chevuru
45be95484a qcacmn: Updating the bank config in RAW mode
In the case of RAW mode, VAP parameters encap type, dscp_to_tid map id
and cipher are not updating in bank register.
Added a API to update vdev param.

Change-Id: I702bee563e7451f403fa32292bf20680cd66e213
CRs-Fixed: 3078687
2021-11-29 16:41:02 -08:00
Chaithanya Garrepalli
65ace7a19d qcacmn: fix use after free of hal_soc pointer
In case of WIN hal_soc will be freed in wifi down
path, this pointer is not valid at pdev_detach or
soc_detach.

Change to populate dmac source ring flag to dp_soc
as access is needed at pdev_detach or soc_detach

Change-Id: I628746bdd05ba3791d3d0e6b6dfdf160ed368e9a
2021-11-25 21:05:08 -08:00
Chaithanya Garrepalli
823c259075 qcacmn: Fix MCC WHUNT compilation issue
Fix WHUNT compilation issue.

Change-Id: Iaa8722a3fe2854a41dc21626ec61fceb93cad397
2021-11-24 17:56:14 -08:00
Chaithanya Garrepalli
c42af1f62f qcacmn: Rx path changes for multichip MLO
Rx patch changes for multichip MLO

1. Create ini for rx ring mask for each chip
2. Configure hash based routing for each chip based
   on lmac_peer_id_msb
3. Peer setup changes to configure lmac_peer_id_msb
   to enable hash based routing
4. Rx Replenish changes to provide buffers back to owner
   SOC of reo ring

Change-Id: Ibbe6e81f9e62d88d9bb289a082dd14b4362252c4
2021-11-23 19:28:20 -08:00
Chaithanya Garrepalli
bbe062b4b7 qcacmn: DP peer changes for multi-chip MLO
DP peer changes required for multi-chip MLO.
This change includes

1) Adding MLO peer to global peer hash at ML context
2) Add ML peer to all partner chips id to objtable

Change-Id: I230a6c1b14484c587b190a9a318fe9ffb1caea11
2021-11-23 19:28:15 -08:00
Chaithanya Garrepalli
31281aab2b qcacmn: Changes for MLO pdev attach
Changes for MLO pdev attach to get MLO_link_id
information.

Change-Id: Id9e6932138e314dfeb93417fce690329ec7d6ab8
2021-11-23 03:55:41 -08:00
Chaithanya Garrepalli
70398a0ccd qcacmn: Changes needed for MLO soc attach
Changes needed for MLO soc attach to pass chip_id,
dp_ml_context from upper layer.

This change also takes care of assigning appropriate
RBM id for IDLE link descriptors based on chip_id.

Change-Id: I8f5f08c524d91942e6e458f048700b7bdd900107
2021-11-23 03:55:36 -08:00
Chaithanya Garrepalli
1faab04393 qcacmn: Changes to create DP ML context
Changes to create DP ML context and associate
with CP MLO manager.

Change-Id: Ic254c883de7c6d6db0fe722a48f0faabbaad0247
2021-11-23 03:55:30 -08:00
Chaithanya Garrepalli
5be4508174 qcacmn: Changes in HW cookie conversion for MLO
Changes to have HW cookie conversion context per
desc pool.

This context will be used to program CMEM of the
other SOC in case multi-chip MLO.

Change-Id: I5ec68813e8fcb6d124698a52f5553acf9a7b1795
2021-11-23 03:55:24 -08:00
Jinwei Chen
9b26ed4fbf qcacmn: Avoid SW AST table accessing for MC/BC frame
For DA MC/BC RX frame, host should not use da_idx to access soc->ast_table
as this da_idx is not valid, OB accessing might happen.

Change-Id: I5c78d869e32536effe2635e561cb6881cdc97c38
CRs-Fixed: 3072841
2021-11-12 16:37:12 -08:00
Amit Mehta
eaa0e3776e qcacmn: Remove csum_enabled flag check
Currently, to set checksum enable flags in Tx descriptor
we are checking the csum_enabled flag along with stack checksum
offload request. In case of roaming from latency-critical connection
to non-latency critical connection we request stack to calculate
checksum and set csum_enabled flag to 0. For some packets which
are already queued where the stack has not calculated checksum and
csum_enabled flag is set to 0, we will not set the checksum enable
flags in Tx descriptors for those packets.

To fix the issue remove the csum_enabled flag check and directly
check if the stack has calculated checksum for those packets or not.

Change-Id: I8d7754afc3d0a33315b85b0113cd3062e5783e28
CRs-Fixed: 3070858
2021-11-12 11:32:43 -08:00
Jinwei Chen
7e267e17b1 qcacmn: support MLO intra-bss forwarding
Support MLO intra-bss forwarding

Change-Id: I7ffd54bbead3e56c7811e88aef935867b0ee4fd6
CRs-Fixed: 3066899
2021-11-10 03:56:09 -08:00
Sai Rupesh Chevuru
b1db784a64 qcacmn: send event to control path to inditate presence of backhaul
send event to control path on receiving 1st 4-address frame from backhaul
Change-Id: I7c78566d0adf275aeb2edd29233a42563d156fc5
2021-11-08 05:19:56 -08:00
Jinwei Chen
dcdd40116f qcacmn: fix dp_rx_process_be dead loop issue
For T-put test case, if near_full IRQ is fired, ring_near_full
flag will be set and host will always reap reo2sw ring as much
as possible, but if quota 0, this will lead to dead loop
in dp_rx_process_be.

stop reaping reo2sw ring if quota is 0 even ring_near_full is set.

Change-Id: Ifea885162be3ccc6ae0515fc3c2538c459372887
CRs-Fixed: 3067231
2021-11-05 06:26:07 -07:00
Sai Rupesh Chevuru
ea5aa01827 qcacmn: Fix for crash observed in E2E FTM mode during Tx
Fix for crash observed in E2E FTM mode during Tx.
Change-Id: Ib7d1723b0887f1abfbf4bdb564bbdf1c5d4acc7e
2021-11-02 00:15:33 -07:00
Pavankumar Nandeshwar
146d67af95 qcacmn: Avoid using ast_entry in intra_bss handling
Avoid using ast_entry in intra_bss handling, instead use
da_peer_id directly from the msdu_metadata

Change-Id: Ic586f297e8e393504d7d399cff7a67c3035aa11f
2021-10-29 07:25:10 -07:00
Jinwei Chen
b521830197 qcacmn: get sw_exception from reo dest ring descriptor
sw_exception bit will be marked in reo dest ring descriptor for
FW re-injected frame, get this bit and save it in skb->cb,
this bit value can be used for FISA further check.
there is no reo_dest_indication field in reo dest ring on beryllium,
so share same cb member for sw_exception and reo_dest_indication.

Change-Id: I2321121be7dda68ed19faca177d868c7e8ba1dbf
CRs-Fixed: 3056156
2021-10-28 10:21:20 -07:00
Sai Rupesh Chevuru
ba3f9c04c8 qcacmn: Update TID value in skb priority from the MPDU buffer
Update TID value in skb priority from the MPDU buffer.

Change-Id: I707190f0c3095b4c47bd4b3cffd4a94f5952939c
CRs-Fixed: 3037067
2021-10-21 02:33:44 -07:00
Rakesh Pillai
57e2c01e5e qcacmn: Peer id parsing changes for beryllium
Take care of the MLO peer bit indication to be
concatenated with peer_id to access the peer map
object.

Change-Id: Ia603a728101e83829a8906d1b847f42389e78ca6
CRs-Fixed: 3039326
2021-10-15 13:13:27 -07:00
Chaithanya Garrepalli
3c3e5709ac qcacmn: Increse num TX rings for QCN9224
This change includes below
1) Changes needed to increase Tx rings to 4
2) Use WBM2SW4 ring for rx error in QCN9224
3) memset srng at alloc to avoid populating RBM_id
in per packet path and enable implicit RBM

Change-Id: Icbd5ac2378273b8f3c6adc41c611e29551fff22f
2021-10-13 13:12:19 -07:00
Rakesh Pillai
e7c9776900 qcacmn: Fix the mask for tx completion near full irq
Currently the IRQ mask for tx completion near full
interrupt is not in sync with the tx completion rings
which are enabled for WCN7850.

Fix the mask for tx completion near full interrupt.

Change-Id: I1432191b260094060873406d48e04fde5b7bc35e
CRs-Fixed: 3052650
2021-10-12 04:52:16 -07:00
Naga
db1a6c8418 qcacmn: Add new data structures and ops for BE monitor
- New data structures are added for BE monitor support
  - dp_mon_soc_be  - to maintain soc level BE specific fields
  - dp_mon_pdev_be - to maintain pdev BE specific fields
  - dp_mon_desc_pool - to maintain descriptor pool
- Monitor ops are updated for 2.0 and corresponding dummy APIs
  are added.
- dp_mon_filter_srng_type is enhanced for TxMON

Change-Id: I12a2fbc53e4eecc7a191b7aa925431298d0a9f54
CRs-Fixed: 2991276
2021-10-12 02:28:30 -07:00
Chaithanya Garrepalli
b733f89803 qcacmn: change RxDMA rings to DMAC mode for QCN9224
For Waikiki use same SW2RxDMA ring for both radios

Change-Id: I33ab1749afada08e97d0b16fe68773c2d5532a15
2021-10-11 08:06:37 -07:00
Chaithanya Garrepalli
60db195327 qcacmn: Change to route vdev_id exceptions to FW
Configure HW to route vdev_id mismatch exceptions
packets to FW.

Change-Id: I8baf4a2f299ddda253a9cd3c247054a0e546af23
2021-10-11 04:51:39 -07:00
Pavankumar Nandeshwar
851b1f68c0 qcacmn: enable MEC support for Beryllium
The multicast echo check feature is moved to hardware in
Beryllium. Enable this hardware feature and also disable
the MEC handing code for Beryllium in the host.

Change-Id: I86d319963191f3ed77aba16dcccbc659906edd9f
2021-10-01 15:18:25 -07:00
Pavankumar Nandeshwar
6b1d142d98 qcacmn: Enable wds changes in Beryllium
wds in Beryllium is managed by hardware.
Make use of hardware managedwds and disable
the corresponding wds handling done in host
for Beryllium.

Change-Id: I39f23cb40c6c5f85ada8ce59c92ff2855bb18da3
2021-09-30 15:15:25 -07:00
Pavankumar Nandeshwar
26c6cd1397 qcacmn: Enable intra-bss in Waikiki
In Beryllium the HW does the ast lookup and match
and sets the intra-bss bit in the msdu_desc_info
structure of reo_destination ring and WBM Rx release ring.

So, change the Beryllium code to make use of this
hardware assistance for intra-bss.

Change-Id: Ic7c89efc741fefe35603082309204fbe3c9a97c7
2021-09-24 18:28:07 -07:00
Chaithanya Garrepalli
9165949820 qcacmn: Enable Tx implict RBM mapping for Waikiki
Changes to enable Tx implicit RBM mapping support
for Waikiki

Change-Id: I4c30c34a250f6fb028c64741745fb5a3e6733ee3
2021-09-21 01:56:39 -07:00
Chaithanya Garrepalli
acbec267ec qcacmn: disable addr_x and addr_y flags for STA mode
For STA mode when index based search is used ADDR_X
flag need to be disabled. This is needed to generate
HW mec notify events to FW

Change-Id: Ib074c474f6e06accf09adeb53b3a1f85e30d4076
2021-09-15 13:02:05 -07:00
Surabhi Vishnoi
9aaf9e8110 qcacmn: Remove rx packet capture events processing if feature is disabled
Currently, rx packet capture events processing happens even
when feature is disabled by ini. This incurs per packet overhead
in rx path.

The fix is to move all the processing from rx path to packet capture mode
component. Send only wdi event from rx path, when feature is enabled by
ini.

Change-Id: I647256b85117cd3373950c78a5a0ae7d6710e4e2
CRs-Fixed: 2969123
2021-09-03 03:25:02 -07:00