커밋 그래프

25 커밋

작성자 SHA1 메시지 날짜
Vaishnavi Chekuru
cee464b40d qcacmn: Enable undecoded metadata capture for york radio
1.Enable undecoded metadata capture feature for york radio.
2.Added support to extract and handle Phyrx abort request and reason
  for york target.

Change-Id: Iae42c9f1bbce63d28983f87b3282264c6a4230cc
CRs-Fixed: 3432389
2023-03-20 00:23:28 -07:00
Jeff Johnson
15b6ef6b0e qcacmn: Fix hal/wifi3.0/li documentation
The kernel-doc script identified some documentation issues in the
hal/wifi3.0/li folder, so fix them.

Change-Id: I4ac9d051ac1ba23ddeecdf1b1bb88b939956795e
CRs-Fixed: 3390587
2023-02-07 18:04:49 -08: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
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
Kenvish Butani
a16d867018 qcacmn: Separate GetFrameControl API's for LI chipsets
For 802.11 Fragmented frames, currently there is a
generic GetFrameControl API from RX TLV for all Li
Chipsets. As the offset for frame control in RX TLV
is different for QCN9000 and QCA8074V2, reading the
frame control with generic API gives wrong frame
control value. The Offset is different as the size
of RX_MSDU_START struct is 8DWORDS in QCA8074v2 while
it is 9DWORDS in QCA9000. In the reo reinject path
the destination queue descriptor address read from ring
descriptor address is Invalid

Fix is Separating out the GetFrameControl API from
generic API to Chip specific API. Also fix the reading
of queue descriptor address.

CRs-Fixed: 3280809
change-Id: Ifc5eca31b9b7e70c84ca455d56a58c27601cd51d
2022-09-26 10:48:59 -07:00
Amir Patel
0fe7f4446b qcacmn: Optimize monitor mode memory utilization
a. Optimize ppdu_info memory
b. Use kmem cache for ppdu info allocation

CRs-Fixed: 3265620
Change-Id: Ieee040aa703aef8c5eee5e5a34a52ef18300b696
2022-09-06 10:23:43 -07:00
Pavankumar Nandeshwar
a615488cf4 qcacmn: Hal changes for Umac post reset at host
Hal layer changes to handle Umac post reset
and post reset complete events from firmware.

Change-Id: Ib25427930aab25650731c87b38e2ef7e47ae98d9
CRs-Fixed: 3267222
2022-08-21 00:37:53 -07:00
Ripan Deuri
28f25ca052 qcacmn: Support HW Tx delay stat
Use WLAN_CONFIG_TX_DELAY to enable HW Tx delay for both
SAWF and non-SAWF stats.

Change-Id: I6db7d386c0e3654f53398dcba1db7c5568544b0c
CRs-Fixed: 3262425
2022-08-17 04:58:14 -07:00
Jinwei Chen
45f5248753 qcacmn: support UL delay report for KIWI
support Ul delay report for KIWI

Change-Id: If78be5b7d1fa29e522d1df1d4372115d8e00473c
CRs-Fixed: 3222167
2022-06-21 05:18:22 -07:00
Ripan Deuri
0ffa79f0a4 qcacmn: Use CONFIG_SAWF macro for enabling HW Tx Delay
Use CONFIG_SAWF macro to prevent linking dp_set_delta_tsf in
low memory profile.

Change-Id: I07b75f893e6d043839225d9b7288823b6ef2f823
CRs-Fixed: 3211426
2022-06-08 17:10:16 -07:00
Ripan Deuri
74458d4542 qcacmn: Add function to calculate hardware Tx delay
Define a new function to calculate HW delay so that same logic
can be used to calculate delay by other modules.

Change-Id: Id3740bcaa2cd558b89ab02d8e88d5947eb5997b1
CRs-Fixed: 3198305
2022-05-27 18:06:34 -07:00
Amit Mehta
d2199b7a99 qcacmn: Set default value for REO dest ctrl register
Currently in some case we are receiving non error packets on REO2TCL
ring, which is causing issue.

Fix is to set DEST_RING_MAPPING_0 to SW1 for REO dest ctrl
register, So that non error packets with reo_destination_indication
with 0x0 in the reo entrance ring will be routed to SW1 ring.

Change-Id: I67f78f35e7dba899943307902d99d0325a60498f
CRs-Fixed: 3150186
2022-03-17 07:25:12 -07:00
Ripan Deuri
eb543663d2 qcacmn: Enable usage of delta_tsf for SAWF
Enable usage of delta_tsf for SAWF. This will be used to compute tx
delay. Also, add support to update sawf stats in tx completion.

Change-Id: Idab7fbd5217175167ecdeee21cf5dc9daf1415d6
CRs-Fixed: 3135773
2022-02-28 07:53:27 -08:00
Basamma Yakkanahalli
1ce26880e3 qcacmn: extract phyrx abort info to capture undecoded metadata
Add change:
1. Extract phyrx abort and phyrx abort reason error
   code from PPDU END TLV
2. Extract additional necessary fields from L SIG,
   HT/VHT/HE SIG TLVs

Change-Id: I3b05009cdc7ce7b585c00d1690ad238b9e6a88b2
2022-02-12 17:55:48 -08:00
Rakesh Pillai
165f79e802 qcacmn: Fix compilation error in whunt
Fix whunt compilation error for QCA6390

Change-Id: Ice806612552fad2ab3f1e1298e449f788f61be3d
CRs-Fixed: 3104503
2022-01-10 05:13:09 -08:00
Rakesh Pillai
5cc176837d qcacmn: Fix compilation error in FSE entry access
FISA is not supported by qca6390 and hence there are
compilation failure in FSE access.

Fix these compilation issues for qca6390.

Change-Id: I611b7e2068ad260a41add9b8bd5ab7a5345e8152
CRs-Fixed: 3103337
2022-01-04 10:33:04 -08:00
Kai Chen
d93357ef5d qcacmn: Move CCE and flow hal implementation to per chip
Move CCE and flow hal implementation to per chip hal layer.

Change-Id: I95a37d8bab00cdecfd6e8ae9a724b8c5541b336e
2021-12-21 11:41:42 -08:00
Jianmin Zhu
e6821fc5fb qcacmn: Fix 11ac no rate info in monitor mode
PPDU nss is set as 0 illegally for qca6490, can't calculate rate.

Change-Id: I6d06d4cb220300e202f7b4f93e4e0eb1299cc8e6
CRs-Fixed: 3085590
2021-12-09 12:25:56 -08:00
Jeevan Kukkalli
8fd6fe32e8 qcacmn: Conditionally compile scan radio special vap stats
Conditionally compile scan radio special vap stats.
Also rename spcl_vap to scan_spcl_vap to better reflect
funtionality.

Change-Id: I7d7f636209f6aa12cca0a3e808d7ae1fac9f397d
CRs-Fixed: 3009837
2021-08-15 01:53:08 -07:00
Devender Kumar
c182e1e3e9 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

Change-Id: Ib2a003a2640fded3287c318d2ad59fd3127af9b6
CRs-fixed: 3004363
2021-08-12 08:29:37 -07:00
Jeevan Kukkalli
1665e7c8e5 qcacmn: Scan radio special vap stats support
-Add flag to inidicate special vap configuration
-Add frame type counters while processing tlv
 WIFIRX_MPDU_START_E
-Add function to update special vap rx stats
-Add dp pdev param to enable/disable special vap
 stats reset
-Add function to reset special vap stats
-Add fucntion to get special vap stats
-Add CDP function to retreive special vap stats

Change-Id: Ia5de6743e472dc86c9e66b9e789c909a57025e35
CRs-Fixed: 3005425
2021-08-07 11:31:43 -07:00
Jia Ding
ffcab816e9 qcacmn: Get buffer_timestamp from wbm release ring
Upon TX completion, get buffer_timestamp from wbm release
ring descriptor.

Change-Id: I0203b51c52a265711e62afc3a940392674ac014a
CRs-Fixed: 2978492
2021-07-14 20:14:36 -07:00
Chaithanya Garrepalli
f79a68f685 qcacmn: Fix lithium HAL generic APIs
HAL generic APIs which use HW definitons that
do not have same value across all lithium chipset
are moved to header files. So that these will be
compiled with appropriate header files

Change-Id: I6c167afa4212c5e884f5e18ff1ccb3bbbba8f5f5
2021-07-01 09:06:06 -07:00
Chaithanya Garrepalli
e122023f44 qcacmn: change hal_wbm_err_info to use proper HW headers
HW macros used for hal_rx_wbm_err_info_get_generic_li are
different across chipset. Move this API to header file to
ensure chipset specific HAL is compiled with appropriate
HW headers

Change-Id: I053d243235f187d931048d1fd22293f9142a00c7
2021-06-26 07:27:47 -07:00
Rakesh Pillai
e2f53365f8 qcacmn: HAL generic API changes for Beryllium
Add the changes to the generic HAL APIs.
The APIs generic across lithium and beryllium
architecture are kept in common HAL code.
The APIs which are generic across lithium
chipsets are moved to lithium specific files.
The APIs which are generic across beryllium
chipsets are kept in beryllium specific files.

Change-Id: Ie5e28aca5de02aa42f63b4a13fcb1cb32ffa8a28
CRs-Fixed: 2891049
2021-06-05 15:10:50 -07:00