نمودار کامیت

224 کامیت‌ها

مولف SHA1 پیام تاریخ
Aniruddha Paul
0b1c4d22bb qcacmn: Dual radio mode with 5g NSS offloaded and 2g Non-Offloaded
Disable interrupt mask for rings used by NSS offloaded radios

Change-Id: I1491177c9faf242635a486b8cfffa2e849fe123e
CRs-Fixed: 2077274
2017-07-22 17:58:30 -07:00
Aniruddha Paul
662d734e4e qcacmn: Fix for NSS peer create message
Change-Id: I5c1c632e9d78fddc9db8ffc898dc26352d6c0a85
2017-07-21 20:15:19 -07:00
Ravi Joshi
73a055137c qcacmn: Fix issues in rxdma monitor status ring init
Fixing issues in the the rxdma monitor status ring initialization.

CRs-Fixed: 2073952
Change-Id: I9fc3a83d8063bf8fd07a7cdb7c3a0dcf3cc874ed
2017-07-21 20:15:17 -07:00
Venkata Sharath Chandra Manchala
6560d45bd2 qcacmn: Remove duplicate prints in tx path
Avoid printing skb info twice upon
entering the dp_tx_send API.

Change-Id: Ia719025f034f45fea5a947b3e40fbeb693dfceca
CRs-Fixed: 2076271
2017-07-21 18:34:26 -07:00
Keyur Parekh
db0fa14b0e qcacmn: Pktlog modified to work for per pdev in wifi3.0
change pktlog CE ring to 5 from 11

Change-Id: I3cd3287cdda413ef9ac4ed204177300c85abfb24
2017-07-19 18:14:13 -07:00
Manoj Ekbote
2a372d279b qcacmn: Flush the REO cmd list during detach
When suspend is done, and if there are any outstanding
REO commands to HW, there could be a leak from allocated
buffers. FLush the buffer list during detach.

Change-Id: I62a7b612c401a36f5098163e017c3b42d7d3750d
2017-07-19 16:23:19 -07:00
Pratik Gandhi
97fa0b0162 qcacmn: Smart Mesh Unlock mutex after NAC filtering
Mutex needs to be unlocked in NAC filtering success path, before
sending packet to stack.

Change-Id: I7bf2e84ee5889b78a956a7c757bb22231c45022e
CRs-Fixed: 2017269
2017-07-19 15:32:25 -07:00
Kiran Venkatappa
a4cd297f84 qcacmn: Fix ME buf pool initialization
Free list created from ME buf pool expects next pointer to be first
element in the me buf. Change me buf structure to keep next pointer as
the first element. Also, Fix offsets in ME free list creation.

Change-Id: I2dffd0c04ba8514d0d1a5f5e6b14380902d1ec06
CRs-Fixed: 2077675
2017-07-19 10:39:32 -07:00
Manjunathappa Prakash
5f050a8187 qcacmn: Include cdp_txrx_flow_ctrl_v2.h only if V2 flow control enabled
Fix compilation error failing for V2 flow control data structures.

Change-Id: I6cca1f7183b483f5e2403d95cd6ec77a959e47a0
CRs-Fixed: 2078435
2017-07-19 00:40:54 -07:00
Manjunathappa Prakash
133af812fb qcacmn: Do not include cds_api.h in dp_tx_desc.h
WIN compilation fix, cannot include cds_api.h in dp_tx_desc.h

Change-Id: Ia3a83a07f3353e72267daaf14a908c9144bb3e46
CRs-Fixed: 2078435
2017-07-18 23:35:17 -07:00
Manjunathappa Prakash
ced7ea6cf2 qcacmn: Add changes for Napier flow control
Adds support for flow control on convergence branch.
Allocate Tx descriptors dynamically when vdev comes up.
Tx queue is paused and unpaused internally in host based on the
stop and start thresholds.
Changes are added under compilation flag QCA_LL_TX_FLOW_CONTROL_V2.

Change-Id: I0ccb80b0099f39efad52ccd7d47f2709fdee2a93
CRs-Fixed: 2040457
2017-07-18 23:35:05 -07:00
Linux Build Service Account
6e5563fc0f Merge "qcacmn: WAR for RXDMA packet drop issue" 2017-07-16 15:52:24 -07:00
Pamidipati, Vijay
eb8a92cedc qcacmn: Add support for delivering unencrypted errors
In mesh mode, it is possible to receive unencrypted frames while security
is enabled. Deliver such frames to OS stack.

Change-Id: Id148b6ecc1432b419ae97c92f2340155f3d851bf
CRs-Fixed: 2004658
2017-07-15 14:36:26 -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
Kiran Venkatappa
a7b6842a72 qcacmn: Initialize msdu_info in dp_tx_send_multiple
Initialize msdu_info before calling API to queue frames in HW. msdu_info
provides tid info which was going as random value to HW causing target
assert. Intialize it so that proper value is used.

Change-Id: I5028508f05b7b8ff2be123c21b3aed75adeb54d8
CRs-Fixed: 2076799
2017-07-15 10:05:33 -07:00
Karunakar Dasineni
15a3d48c75 qcacmn: WAR for RXDMA packet drop issue
When monitor RXDMA is enabled, regular RXDMA will drop a good packet
whenever an error is indicated in monitor path due to a HW bug. To
avoid this, a dummy buffer will be used to receive packets passing
"monitor other" filter on regular DMA, which will be received on
RXDMA2HOST ring. These packets should be ignored based on a special
cookie value.

Change-Id: I348527f662cd664652d8d99c01484bb310c6e705
2017-07-14 18:56:38 -07:00
Karunakar Dasineni
80cded8b4a qcacmn: WAR for incorrect MSDU count in MPDU desc
Rx MSDU count received in mpdu descriptor may be incorrect
sometimes due to HW issue. We should check msdu buffer address
in each Rx msdu buffer entry in RX msdu link descriptor.

Change-Id: I86af4797cfb79fad33977cf53d62a8d368dc3543
2017-07-13 16:08:16 -07:00
Pramod Simha
e0baa4436a qcacmn: Add misc list to hold HTT msgs
Add a misc list which stores HTT msgs & later frees them during rmmod.
This is required to prevent memory leaks during rmmod.

Change-Id: Iecc04ec38cfa1b459064da74dffa5bfeffdba956
CRs-Fixed: 2068058
2017-07-13 14:49:08 -07:00
Ravi Joshi
c05a6a163c qcacmn: Fix driver initialization due to issues in pktlog init
Currently pktlog is available only for WIN. The pktlog APIs
return negative error code for MCL implementation since they
are not available, causing the regression.

CRs-Fixed: 2074614
Change-Id: I830181233fb6fe0d6299c42f2ccd27b6d894857f
2017-07-13 14:49:07 -07:00
Houston Hoffman
def86a361b qcacmn: Introduce hif_exec_context
hif_exec_context extends hif_ext_groups to support napi and tasklet models.
Some of the rename and enahancements have been done to support merging of
the execution context management code between the CE and DP contexts, as
well as supporting irq affinity for both napi & tasklet contexts.

Change-Id: I82c8abf2e906f027ec80faf7353a7685536bb79b
CRs-Fixed: 2051902
2017-07-13 03:37:59 -07:00
Venkata Sharath Chandra Manchala
532cd5f161 qcacmn: Fix for Tx software descriptor leak
Release Tx software descriptor if access to ring
fails

Change-Id: I23152301b8042af402b9c605b69a2e68d9a0c85c
CRs-Fixed: 2042201
2017-07-12 19:26:08 -07:00
Om Prakash Tripathi
2cd7fab473 qcacmn: create work queue to process htt stats
process htt stats in work queue context

Change-Id: Ibacc09e3921da2fa88173bc0cfdc2f0ced51cc68
CRs-Fixed: 2070977
2017-07-12 13:48:56 -07:00
c_cgodav
bd5b3c2c9b qcacmn: Add CDP APIs to get security type from peer handler
Add CDP API to get security type for ucast and mcast from
peer handler. Add additional peer handler argument for raw mode
rx decap functions. The peer handler is needed in the raw mode
functions for getting the security type of the frame and process
it accordingly.

Change-Id: I8b4728e9eb0ff29849805bb461c81e4fc3accc81
2017-07-12 12:55:50 -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
Om Prakash Tripathi
a7fb93f83d qcacmn: configure different reo destination each pdev
Change-Id: Icb44f2edf69cd271f5f5b49b192d52a204fa0f3a
CRs-Fixed: 2067575
2017-07-11 23:48:09 -07:00
Pamidipati, Vijay
bea353e14c qcacmn: Set the Tx completion ring size to appropriate value
Size the completion ring using following 2 parameters
 - NAPI schedule latency (assuming 1 netdev, gmac, competing for CPU) = 20ms
								 (2 jiffies)
 - Worst case PPS requirement = 400K PPS
    Ring size = 20 * 400 = 8000

Change-Id: Iaac0b61f50b52a4e824c3c8ef5d980adf455854c
CRs-Fixed: 2068155
2017-07-11 23:48:03 -07:00
Pamidipati, Vijay
f82fb2b8f7 qcacmn: Add support to process v2 fw2wbm completion structure
FW has moved to using v2 HTT_FW2WBM message format for Tx completions
Add corresponding change on Host.
Add missing code to free Tx descriptors for few HTT completion types
Also change the descriptor pool lock to spinlock_bh since transmit path
and completions typically run in tasklet/softirq context

Change-Id: I024d44243f95907f19086225f0f02a5cd64f4508
CRs-Fixed: 2068155
2017-07-11 23:48:00 -07:00
Pramod Simha
e382ff88b9 qcacmn: Add RXDMA_DST ring support
Setup & process the RXDMA_DST ring to handle error frames
from RXDMA block. Pro-active fix to handle the WAR for
the WBM stuck issue seen when sending RX_FLUSH command.

Change-Id: Ibf56062da2cd9b5d447f1d43bbae5944426d88c8
CRs-Fixed: 2059870
2017-07-07 12:33:54 -07:00
Ravi Joshi
a9ebe0a7ca qcacmn: Fix issues in monitor mode initialization
Current monitor mode implementation does not catch
initialization failures causing it to believe successful
monitor mode initialization.

Change-Id: I5c30ac22e3084871b86cf5e2f0627988ebbb7b5d
CRs-Fixed: 2071602
2017-07-06 21:55:19 -07:00
Ravi Joshi
8851f4eb1c qcacmn: Enable RXDMA ring configuration for monitor mode
Enable RXDMA status, desc, buffer and destination rings to
support monitor mode. The change also provides fix to properly
map pdev_id to mac_id.

CRs-Fixed: 2071602
Change-Id: Ie9caaaa0021d5842eaf28a5532b3ab5512fe507f
2017-07-06 21:55:18 -07:00
Ravi Joshi
2320b6fe68 qcacmn: Enable all mgmt, ctrl and data fields in pkt_tlv
Currently all mgmt, ctrl and data frames are not enabled
while requesting for the pkt_tlv configuration for the
monitor mode. Adding changes to enable these while sending
HTT ring configuration message.

Change-Id: Ifa23edb55562512e18bb2ee4c426fa0b5e45a577
CRs-Fixed: 2071602
2017-07-06 21:55:16 -07:00
Rakesh Pillai
13146458f9 qcacmn: Fix CLANG warnings in Data path
implicit conversion from enumeration type 'A_STATUS' to different enumeration type 'QDF_STATUS'
implicit conversion from enumeration type 'QDF_STATUS' to different enumeration type 'A_STATUS'

CRs-Fixed: 2063344
Change-Id: Id3613d0b7fca58c3d94c5af59838b0bff3ef26de
2017-06-30 22:50:37 -07:00
Pramod Simha
59fcb31d81 qcacmn: check for in use flag during free
Add a in_use flag to identify if a rx desc is associated
with a valid nbuf and use this flag while freeing the nbuf.

Change-Id: Iace002ecadfd95ce60b7d1eaebc42194a433963b
CRs-fixed: 2044907
2017-06-30 20:14:16 -07:00
Karunakar Dasineni
f40efac097 qcacmn: Fix wbm release descriptor settings
Set BM_ACTION, RELEASE_SOURCE and BUFFER_OR_DESC_TYPE fields in WBM release
ring descriptor in hal_rx_msdu_link_desc_set function.
Added HAL API to retrieve RXDMA push reason and error code from REO entrance
descriptor.

Change-Id: I64209d9ebb332136fae43a55b39e0f0d242315fb
CRs-Fixed: 2062922
2017-06-30 19:29:47 -07:00
Karunakar Dasineni
1018547152 qcacmn: Fix LMAC interrupt mappings
Current data-path interrupt registration/handling assumes PDEV indices to be
in same order as HW MAC IDs, which is not always true. Fixed this by adding
wlan_cfg api to set and get pdev index to mac id mapping.

Change-Id: Iec8e9f4a02cd618a3b244cfd6fc7ead1e7d993c3
CRs-Fixed: 2063673
2017-06-29 18:25:27 -07:00
Kai Chen
cbe4c342b6 qcacmn: Fix the issue on setup monitor mode ring
The pdev id in host is not the same as firmware MAC id
Add host pdevid to firmware MAC id mapping code
in set pdev id for htt sring setup and
set pdev id for htt rx ring selection cfg

The mon_ppdu_status is not synchronized
Fix the issue on pdev mon_ppdu_status by reset
mon_ppdu_status to DP_PPDU_STATUS_START after
monitor destination ring is processed

Add code for mpdu fcs error for later use

Change-Id: Ia6245cc9441e3339bcd01ed18fdce2f33f3f7699
2017-06-28 17:33:34 -07:00
Keyur Parekh
fad6d088fa qcacmn: Packet log changes for wifi3.0
Change-Id: I82462f426e4e449c5bc65331e39f07a062e8e242
2017-06-27 23:37:33 -07:00
Linux Build Service Account
2584ae5d53 Merge "qcacmn: fix skb cb corruption issue" 2017-06-27 11:49:03 -07:00
Tallapragada Kalyan
0cd1793ba5 qcacmn: fix skb cb corruption issue
the ftype in skb->cb is overshooting allocated 48 bytes
causing kernel crash

Change-Id: Ie33508c462a032b28624de5270ce91a93d0b067d
2017-06-27 10:32:46 -07:00
Pamidipati, Vijay
be379457e6 qcacmn: Add a flag to enable/disable per-packet sync of DP stats
Currently all Host collected DP statitics are synced to upper layers
on per-packet basis; This is causing significant CPU overhead.
Add a flag which can be controlled through iwpriv to enable/disable
updating of these statistics from DP to higher layers

Change-Id: I983c6d91803c83c1efd49c5535769a0c10fbc9b5
CRs-Fixed: 2064113
2017-06-26 17:42:34 -07:00
Pamidipati, Vijay
45b1df25fc qcacmn: Configure DP interrupt mitigation values based on ring type
Currently interrupt mitigation values are configured for per-packet interrupts.
Change this for core DP rings (REO Destination and WBM Tx Completions) to reduce
CPU overhead of interrupt processing

Change-Id: I7bf0f6e78c52b5678ad3c8cc4d829444e410fad3
CRs-Fixed: 2064113
2017-06-26 17:42:33 -07:00
Linux Build Service Account
eba9b1e192 Merge "qcacmn: Incorrect use of tx descriptor" 2017-06-23 18:25:25 -07:00
Venkata Sharath Chandra Manchala
340c0d8903 qcacmn: Incorrect use of tx descriptor
Avoid accessing and releasing tx descriptor when it is
not allocated in tx path.

Change-Id: I36515b679c541d081fd836ea3fb732768031cc06
CRs-Fixed: 2062160
2017-06-23 10:41:30 -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
Nandha Kishore Easwaran
82ac62ecca qcacmn: Fix double free irq of external group interrupts
The irq entry for rx_err, rx_wdm_release, and reo_status
gets assigned for more than one context and this causes
double free irq during driver unload time. Fix the same

Change-Id: I197ee285e6eba5909dec3fa37677c13efce4765a
CRs-fixed: 2063981
2017-06-20 05:29:58 -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
Tallapragada Kalyan
52b45a143a qcacmn: Add scatter-gather support in RX path
Add nbufs to frag_list of parent nbuf when ever we receive
multiple MSDUs spread across nbufs.

Change-Id: Iff7a5208408fa55306cb4137e97bc781e1e82a01
2017-06-19 12:43:26 -07:00
Pamidipati, Vijay
6b0d2a800c qcacmn: Add a configure interface to get max_peers from OL_IF to DP
Currently max_peer value is hardcoded with DP wlan_cfg. This change adds
a generic interface to obtain a configuration parameter from OL_IF and
store in DP

Change-Id: Id437ab3bcd02fb1cbcbe8b56d55d19780af87066
CRs-Fixed: 2004658
2017-06-16 17:12:28 -07:00
Pamidipati, Vijay
5379474f69 qcacmn: Enabled asserts in Rx error path
Enable qdf_assert on rx error path to detect corruption issues.
Also add a magic word in rx_desc and compare on rx indications
to detect any corruption issues early in the path

Change-Id: I4df1220f19c891928f9687f40de6f2118b530db2
CRs-Fixed: 2004658
2017-06-16 17:12:26 -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