Commit-Graf

53 Incheckningar

Upphovsman SHA1 Meddelande Datum
Karunakar Dasineni
372647d95a qcacmn: Avoid REO queue setup after peer deletion
REO queue setup is getting triggered from processing
pending null queue exceptions in WBM release ring, after
sending peer delete command to FW, but before peer unmap
is received, causing target assert. Mark peer deletion
before sending peer delete command to avoid this.

Change-Id: I2d85d01e049cb37d9321beeee8e41f44e40e68ad
CRs-Fixed: 2155420
2018-01-19 13:34:25 -08:00
Gyanranjan Hazarika
99a58d3b1a qcacmn: Add support for setaddbaresp cmd for HE
Addba recieve/response logic has been implemented in
host for HE instead of in FW like VHT. setaddbaresp
is not hooked to the dp module yet to set the addba
response from userspace. Implement the required logic
for HE to support this command.

Change-Id: I49cceca299db06d41f2cafa690f5ba59e01f1f4a
CRs-fixed: 2163475
2018-01-13 01:28:23 -08:00
sumedh baikady
e3947bd8d6 qcacmn: Add stats for BA per Tid
Adds stats for number of ADDBA, DELBA requests,
pn size and window size per tid.

Change-Id: Ib7e3a9b948439695afd9a952fe46ac42ac58c653
CRs-fixed: 2151863
2017-12-16 19:25:08 -08:00
Lin Bai
fca7640032 qcacmn: Fix memory leak when failing to delete RX TID
During RX TID deletion, if FLUSH_CACHE REO cmd fail to be sent,
the required callback function won't be invoked, hence
local allocated REO desc and related TID queue desc will leak.

Do clean up when REO cmd failed to be sent.

CRs-Fixed: 2155929
Change-Id: I02ff4a2340ad32986c30b935a376924bb75edb67
2017-12-14 17:45:18 -08:00
chenguo
85d964f48b qcacmn: Add AST type for DP path
There is a hard-coded AST type number used for DP path, which will
cause poor readability. Fix this problem by using a pre-defined
constant type value.

CRs-Fixed: 2142975
Change-Id: I3520970bf59ea7152a0851cfdc3b8e7943ddbc19
2017-12-13 23:38:12 -08:00
Yun Park
11d46e0476 qcacmn: Optimize data path logging
Remove or lower log level to reduce log from data path which affects
to TPUT.

Change-Id: I7d4344c80cefb4a9539644ef50ff2074d80d6548
CRs-Fixed: 2143250
2017-12-07 22:34:10 -08:00
Manjunathappa Prakash
c850ec6e18 qcacmn: Move AST handling functions under WDS compile flag
Move AST handling functions in side WDS compilation flag.

Change-Id: If8fb93e513b1a645b5d9c7fb73df0ed90770010d
CRs-Fixed: 2131812
2017-11-16 07:22:06 -08:00
Chandru Neginahal
2a4e5d2262 qcacmn: Proxy STA fails to connect to ROOT AP in QWRAP mode
Correct the logic to send peer create command in nss
wifi offload mode.

Change-Id: If88a18798af9ee9273c9580ca1fd725a15f07eef
CRs-Fixed: 2119796
2017-11-16 02:48:42 -08:00
Yun Park
601d0d868a qcacmn: Fix IPA WDI3 Tx issues
Fix bug to enable IPA WDI3 Tx H/W path.

Change-Id: Ice691dccc649b38971985cd8da042719d943cec7
CRs-Fixed: 2085751
2017-10-23 22:08:28 -07:00
Pratik Gandhi
51b6b6d21b qcacmn: Control frame stats Rx BAR frames
Add Pdev level stats for Rx BAR frames.

Change-Id: I1cce56559fd1ffec11f873e35cb1c42b49c1c9ff
CRs-Fixed: 2110552
2017-10-23 01:55:58 -07:00
Houston Hoffman
41b912cfff qcacmn: DP logging adjustments (1)
Adjust logging to reduce printing to the console by datapath.

Change-Id: I9354cf939a6edcf6cd6fc66dbeb4638b517f30da
CRs-Fixed: 2117150
2017-10-20 12:17:26 -07:00
Yun Park
92af713fa2 qcacmn: Fix Intra-BSS forwarding issue
Extract ast_table manipulation functions from WDS feature flag

Change-Id: I029e151f608a6bb60344d817d7b7c75b86ca981b
CRs-Fixed: 2110304
2017-10-05 16:11:31 -07:00
Jeff Johnson
3f217e2a81 qcacmn: dp: Replace instances of unadorned %p
Replace instances of unadorned %p in dp.

Change-Id: I8d9c0f6efe5f03a582a36d7ff39a905a5de576a7
CRs-Fixed: 2111274
2017-09-28 04:48:10 -07:00
Pamidipati, Vijay
899e775769 qcacmn: Add support to dump Host AST table
Add support to print Host AST table contents and
AST statistics

Change-Id: I669d547657fe9d826d2aed59cf8dbb06bc100996
CRs-Fixed: 2099205
2017-08-29 23:41:34 -07:00
Radha krishna Simha Jiguru
f70f991f45 qcacmn: Send peer create to NSS only for connected peers
Send peer create to NSS only when peer map comes for connected peers.
When peer map comes for WDS peers only update WDS peer specific entries.

Change-Id: I32d785180bcd1dae2703d40b55f4536685f10439
2017-08-17 20:51:16 -07:00
Tallapragada Kalyan
1c14d5d8e9 qcacmn: MEC loopback check even when sa_is_valid not set
There is a case when the multicast/broadcast frame gets loop backed
even before a MEC WDS entry gets added, in this case
the MEC check based on sa_is_valid will fail, hence added
another ast lookup check.

Also fix the ast entry iterator to use _safe option, since
we are deleting ast entries in the same iterations

Change-Id: I0567893783649d991c3623a61c60fbc63d1a24ef
2017-08-17 14:55:13 -07:00
Tallapragada Kalyan
fb72b637f7 qcacmn: AST based MEC support for HAWKEYE
Implemented MEC support using AST entries rather than
using a separate MEC table.

Change-Id: Ifaafb4be1f8a981ad28609ea9740e8bbccec9046
2017-08-17 14:55:11 -07:00
Yun Park
fde6b9e551 qcacmn: Enable WLAN host data path support for IPA WDI3.0
Change to support WLAN Napier host autonomy data path architecture.

Change-Id: I07f7592d547bb796a3c12bbc4745cee22e2c0022
CRs-Fixed: 2064810
2017-08-07 17:47:38 -07:00
Aniruddha Paul
662d734e4e qcacmn: Fix for NSS peer create message
Change-Id: I5c1c632e9d78fddc9db8ffc898dc26352d6c0a85
2017-07-21 20:15:19 -07:00
Pamidipati, Vijay
b8bbf16192 qcacmn: Add support for WDS aging
Add support for monitoring receive traffic from WDS nodes and
aging out inactive WDS nodes

Change-Id: Iedea826832a5421714c00bccadc6e0dc4acd4c7e
CRs-Fixed: 2004658
2017-07-15 11:38:57 -07:00
Karunakar Dasineni
3da0811330 qcacmn: Fix REO stats prints
Split stats prints since they are truncated to 512 bytes due recent changes in
QDF_TRACE. Also flush REO queue descriptor cache after fetching stats to help
dumping from memory (for debugging).

Change-Id: Ie1d00766bd452d32cbc7085e95b66fb11bb9893c
2017-07-11 23:48:11 -07:00
Linux Build Service Account
429221b907 Merge "Revert "qcacmn: test change to validate on how to exclude MCL changes in WIN"" 2017-06-21 09:53:26 -07:00
Gurumoorthi Gnanasambandhan
ed4bcf8e9d qcacmn: Add changes for PN check in REO
Setup PN check in REO for Security mode.

Change-Id: I682cda20907b7f64ba18bfef9927b7f8d72d2b54
2017-06-19 12:43:30 -07:00
Karunakar Dasineni
93f633c394 qcacmn: Enable REO queue stats
Query REO queue stats from HW and print as part of host peer stats.

Change-Id: I817be3b293e684f0fa3a0b3154f618de0245681f
CRs-Fixed: 2057908
2017-06-16 17:12:25 -07:00
Bharat Kumar M
9a5d537249 qcacmn: changes to support lithium nss offload
Changes include
1. nss_cfg parameter to dp_soc.
2. nss_enabled field for pdev.
3. cdp api to enabled nss offload config.
4. skip rx ring configuration when nss enabled.
5. skip timter /interrupt configuration if
   nss is enabled.
6. peer map/unmap event hander.

Change-Id: Ic4a919b6b7e846e18cb15ebcb94f8736a751ecb5
2017-05-17 19:30:25 -07:00
Bharat Bhushan Chakravarty
145d393444 qcacmn: SON convergence
1) Defined modularized public api for cdp module
to track inactivity and over load detection.
2) Initialization calls are added to attach and
detach SON specific api.
3) operating system specific calls are replaced with qdf calls.

Change-Id: I130d1e99208d6454f5d9888774534cc6d619ad83
2017-05-09 17:29:11 -07:00
Harilakshmi Deshkumar
1ea210968b Revert "qcacmn: test change to validate on how to exclude MCL changes in WIN"
This reverts commit b3f70dd8d7.

Change-Id: I47c8976cf33e3822512da1b6a12ba167244eae84
Signed-off-by: Harilakshmi Deshkumar <hdeshk@codeaurora.org>
2017-05-08 21:16:27 +05:30
Nandha Kishore Easwaran
b3f70dd8d7 qcacmn: test change to validate on how to exclude MCL changes in WIN
Change-Id: I7325fe473fa66b11406877dbd936eccb320aa77e
2017-05-03 08:43:54 -07:00
Pramod Simha
6b23f75bf8 qcacmn: Fix for unaligned memory access
Fix the logic to align a memory to the given boundary
and dma map the alinged address to the device.

Change-Id: I5cce07d5573949ab40f64cc08c937dfb7aa82b8e
CRs-Fixed: 2026493
2017-04-04 16:14:51 -07:00
Tallapragada Kalyan
6f6166e36c qcacmn: Add support for intra-bss forwarding
pkts should be forwarded from one STA to another
STA belonging to same VAP from within the driver

Change-Id: I68eb0dd91f7ac54352b4882ffdb9d5d53d627db1

Conflicts:
	dp/wifi3.0/dp_rx.c
	dp/wifi3.0/dp_types.h

Conflicts:
	dp/wifi3.0/dp_rx.c

Change-Id: I68eb0dd91f7ac54352b4882ffdb9d5d53d627db1
2017-03-25 06:38:24 -07:00
Karunakar Dasineni
7957fa9705 qcacmn: REO descriptor allocation change
Use normal allocation instead of alloc_consistent for REO descriptors to
allow freeing from interrupt context.
Also fixed an issue in ba_window_size setting in REO queues.

Change-Id: I91b06e04c0343eb7fe8580d8655c6bc5e33cfe06
2017-03-24 05:41:20 -07:00
Pramod Simha
b17d067de0 qcacmn: Changes to support LFR
Setup all TID queues during rx peer init
Add support to handle ADDBA HTT msg
Allow pkts to be fwd to stack even if peer isn't found

Change-Id: Icdfec2eeaa3e0ca62202ed278cd63209b8f79cb2
CRs-Fixed: 2016138
2017-03-21 22:01:34 -07:00
Ishank Jain
1e7401cbc7 qcacmn: Add Host Lithium Stats
Add per peer stats
Add support to update APSTATS
Change QDF_TRACE to DP_TRACE for improved readablility

Change-Id: I4be2adf2a1d7f978eb2961a544435d525c97923d
CRs-Fixed: 1114641
2017-03-16 20:03:16 -07:00
Ravi Joshi
af9ace8358 qcacmn: Fix wlan_cfg file inclusion and remove duplicate static API
Due to issues in Kbuild wlan_cfg was included using relative path.
Also getting rid of a duplicate static function definition in
dp_peer.c.

Change-Id: Ie0883340a9143b739119f18c8871b4baa9787980
CRs-Fixed: 2005582
2017-03-01 19:01:51 -08:00
Karunakar Dasineni
8bebb003a4 qcacmn: WAR for REO queue deletion race with HW
Defer freeing of REO queue descriptors to avoid corruption due to possible cache
flush by REO HW of the queue descriptors that are already removed from a peer.

Change-Id: I4b5ef8ef4fe6a11f5faef4f1f14ce27de77768e0
2017-02-23 00:27:29 -08:00
Venkata Sharath Chandra Manchala
f2a125a6f8 qcacmn: Handle void pointer declarations for pdev and vdev
Replace void pointer handles for pdev and vdev with
abstract structure handles in cdp.
New file cdp_txrx_handle.h has the abstract
structure declarations.

Change-Id: I333e6ea5e699e7cebbfc6281faf7f07c0aee4e2a
CRs-Fixed: 1109835
2017-02-15 12:26:39 -08:00
Manoj Ekbote
1f2c0b5242 qcacmn: Use osif_pdev for peer operations
Use correct scn handle for peer operations

Change-Id: I84e8ed945ead612b2ae4adb580ad7f12ffbb8ce5
2017-02-15 00:43:13 -08:00
Krishna Kumaar Natarajan
d684ba2f05 qcacmn: Update dp_peer structure to store qdf timers to detect DOS attack
Update dp_peer structure to store qdf timers to detect DOS attack. Following
driver ops are registerd to access the dp peer information
    - last_assoc_received
    - last_disassoc_received
    - last_deaauth_received
    - clear_peer

Change-Id: I21a3f4e5ab626e62f58f307d02640b7d96c9b1ef
CRs-Fixed: 1116647
2017-02-01 12:58:15 -08:00
Krishna Kumaar Natarajan
71e5b83377 qcacmn: Fix peer ref_cnt usage and add logs for the same
Enable logs to print peer ref_cnt and decrement ref_cnt
in helper functions.

Change-Id: I6e6a275fba35003011095d93c79d7a052d5ec56e
CRs-Fixed: 1116647
2017-02-01 11:47:54 -08:00
Krishna Kumaar Natarajan
1741dc4546 qcacmn: Disable freeing TID's hw queue descriptor in dp_rx_tid_delete_cb()
Disable freeing TID's hw queue descriptor in dp_rx_tid_delete_cb() as a
workaround to avoid OOPS error.

Change-Id: I6ab5f8590ec3ac434cf024b1eb735bff273fd330
CRs-Fixed: 1116647
2017-02-01 11:47:52 -08:00
Krishna Kumaar Natarajan
e61cf8776f qcacmn: Delete unused dp_rx_tid_stats_cb() function
Delete unused dp_rx_tid_stats_cb() function.

Change-Id: Ifc7d5c989a8e5b24aeada3a515a0bcc2a0b2860e
CRs-Fixed: 1116647
2017-02-01 11:47:51 -08:00
Karunakar Dasineni
a8c779b2d1 qcacmn: Fix REO command issues
Fixes for issues seen while sending multiple REO commands:
- Fix bug in error return from hal_reo API.
- REO status for updates done as part of peer deletion are sometimes
  received after peer is deleted, causing crash due to invalid access
  in REO command status handler. Fixed by using temporary copies for
  rx_tid structures.
- Zero out REO command descriptors before setting up new commands.

Change-Id: I63409eb74fd91a21e0264fb2b3a62efb3a91bfe6
2017-02-01 11:47:50 -08:00
Venkata Sharath Chandra Manchala
8e8d8f1e82 qcacmn: Fix for compilation issues in REO management
Added suitable typecasting for qdf_set_bit and
qdf_clear_bit functions

Change-Id: I90fc0f441a6eae8dfdea43705373fced81b26b48
CRs-Fixed: 1105853
2017-01-18 20:05:32 -08:00
Karunakar Dasineni
a0f09eae1d qcacmn: REO management changes
Changes to use REO HW command/status interface to update/delete REO queues.

Change-Id: I3500d45db021ef314b4d03fa878314d407ddfe65
2017-01-18 20:05:29 -08:00
Jeff Johnson
416168bfaf qcacmn: Fix -Wmissing-prototypes in dp_peer.c
We want to enable the compiler's -Wmissing-prototypes switch, but
there is existing code in dp_peer.c that is generating warnings.  Fix
these warnings by making the following functions static:
	dp_peer_find_hash_find()
	dp_rx_tid_update_wifi3()
	dp_rx_tid_delete_cb()
	dp_rx_tid_delete_wifi3()

And by exporting a public prototype for:
	dp_peer_find_hash_erase()

Change-Id: I5c945f27c0334a4d88da6136de8aacae2ba840a7
CRs-Fixed: 1108459
2017-01-12 07:11:56 -08:00
Jeff Johnson
2cb8fc7e18 qcacmn: Properly export dp_peer API
Currently some of the public functions in dp_peer.c do not have their
prototypes exposed in a header file. In addition clients of these
functions currently have local prototypes. Fix these issues by adding
the prototypes to dp_peer.h.

Change-Id: I461cf69024da56fad57b75a325775ecd68872c8e
CRs-Fixed: 1108085
2017-01-09 09:55:25 -08:00
Ankit Gupta
6fb389b4e4 qcacmn: Check peer for null before dereference
Check for peer null check before dereference in
dp_peer_state_update to update its state.

Change-Id: Id3b743d6cbe3d156a48ad111e467579b7478e4bb
CRs-Fixed: 1107176
2017-01-04 12:21:05 -08:00
Karunakar Dasineni
ed1de12085 qcacmn: Lithium data path WMI changes
WMI changes for rx reorder queue setup. Also enable addba/delba handlers.

Change-Id: I360673d7493264d2591ffe3ba2bb5c3afba47f84
2016-12-24 10:13:22 -08:00
Dhanashri Atre
8abb9ee21a qcacmn: Change to set-up default TID queue
Set up default queue - use the same queue for BE and
non-qos traffic

CRs-Fixed: 1074199
Change-Id: I2e28ea1ee0a778d43a8d78005063a51776b48df0
2016-11-26 13:35:36 -08:00
Dhanashri Atre
57e420d642 qcacmn: Pass the device to memory allocation and free
Pass the device instance to the QDF memory allocation and
free functions.

Change-Id: Ia6297e311cdca708b96c72fb50f8961cddc95d83
CRs-Fixed: 1087538
2016-11-21 15:20:03 -08:00