Add API to handle NAWDS packets on tx side.
Add API to handle invalid peers and pass them to umac.
Change-Id: Ie8c2508e4f51c7d6969c9eb6439919c57dd427d4
CRs-Fixed: 2008205
Fix the logic that verifies that the dbs function pointer
in data path is valid.
Change-Id: I35418f2a66eb2d4b44260b005ab0d927d91eeac7
CRs-Fixed: 2025317
Reduce DP poll interval to 10ms and change per-packet prints in Rx path to debug level.
Also fixed HAL macros used to setup Rx buffer descriptors.
Change-Id: I112393a3f021b275dbe9da9df9c1bac584a96f3f
CRs-Fixed: 2026389
We are zeroing out complete peer structure after
initialing ast_entry queue. so re-adjusted code.
Also wds source port learning is called before we
pull the TLVs from the nbuf resulting in accessing
wrong src mac address.
Change-Id: Ifd5a2056a3f9f03a1ff1cf5b79046f932dd38510
We need to send the LRO and rx hash configuration to the
firmware during vdev attach. Currently they are being incorrectly
sent before WMI service ready indication.
Change-Id: I69680b48e6725c6deaad434d722546052cfe86b4
CRs-Fixed: 2022770
Window size needs to be incremented by 1 since fw needs to
represent a value of 256 using just 8 bits.
Change-Id: I18cdb6fb928f28893dc0e1fd2fb574a12ca53972
CRs-Fixed: 2025197
This change is for supporting monitor mode VAP. All the monitor mode ring
is configured. The related monitor mode ring includes:
-monitor mode buffer ring
-monitor mode destination ring
-monitor mode status ring
-monitor mode link descriptor ring
The packet is not sent to monitor mode ring unless the monitor mode VAP is
configured. This release support Multiple VAP - AP/STA VAP plus Monitor
VAP configuration. The status ring is not used in this release. However,
the ring is tested and the ring is moving and there are TLV's in the ring.
Change-Id: I782ee0c3b998d8b3bbac79b5e7fdecdbff15fa93
CRs-Fixed: 2013049
Changed the data type to store stats to 64bit
from 32bit to support larger number for stats
counter
Change-Id: I25eca626623503663b6aa8436217413609e2a807
CRs-Fixed: 2024225
Acked-by: Chaithanya Garrepalli <cgarre@codeaurora.org>
Change calls to qdf_dma_map_nbytes_single to qdf_dma_map to match with
qdf_dma_unmap used in tx completion path. Also fix the dma_addr value that is
passed to Tx HW; we were incorrectly subracting pkt_offset instead of just
subtracting alignment bytes from dma_addr
Change-Id: I2d6f32bd44e02824a1a788e3624dcb3680f1b242
CRs-Fixed: 2004658
After updating the skb with meta header cache flush is not happening. This
is sending incorrect meta data to firmware. Fixed this by doing cache flush
after meta header updation in skb.
Change-Id: I0952093e3080f5b8ec2233e6ab1edf4f48351603
CRs-Fixed: 2003389
Ampdu count is populated in pdev
but zeroed before printing. Fix it to
be populated in peer and aggregated
in pdev before printing
Change-Id: I51d8f1968a87c0b9dbf53928acd1bbef45acc7ec
CRs-Fixed: 2025785
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
Refactor flush rx queue function call based on soc by adding an
interface to CDP funtion indirection table.
Change-Id: Iea201553f555a6c317cf37e586433aa493e51623
CRs-fixed: 2023399
Add structure changes for querying WDI-stats, register the callback
functions for IPA to query WDI stats and sets the quota limit
Change-Id: I05d9d50fad735fa0a57c4de23c81461f6e12b648
CRs-Fixed: 1095710
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
Separate out pdev detach processing as ol_txrx_pdev_detach()
and ol_txrx_pdev_pre_detach() corresponding to pdev attach
functions ol_txrx_pdev_attach() and ol_txrx_pdev_post_attach()
respectively.
Change-Id: I7fdbe70ad8262a57b61a742fcfb2779e323172af
CRs-Fixed: 2011937
Introduce a new iwpriv command txrx_stats to
print host and firmware statistics for lithium
chipset
Change-Id: Ib048c64f903c7a97508f8b03bebe7f7c1d9e6c05
CRs-Fixed: 2017426
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
Add command to set mapid for each VAP using:
iwpriv athX s_dscp_mapid N
Add command to change tid values in PDEV maps using:
iwpriv wifiX s_dscp_tid_map <MAP_ID> <TOS> <TID>
Change-Id: I510a40e71ecec5c453dd2dff1b13fd5ebedbe98a
CRs-Fixed: 1108452
Add per peer stats
Add support to update APSTATS
Change QDF_TRACE to DP_TRACE for improved readablility
Change-Id: I4be2adf2a1d7f978eb2961a544435d525c97923d
CRs-Fixed: 1114641
This change includes:
- Adding the hooks to send LRO and hash configuration to the firmware
- Configuring the REO remap registers
Change-Id: I6d83e2a2365647f2c7a6440bd1d4b42fa7df7eff
CRs-Fixed: 1094775
The interrupt polling timer needs to be disabled when the host
device driver decides to unload. Not handling this would cause
in processing of pending interrupts and access data structures
that are being deinitialized causing system instability.
Change-Id: I505281f36f90bef6e1fbf21a5461260272f7c7cb
CRs-Fixed: 2013609
Refactor lithium datapath configuration items. This is a placeholder
for now. The actual configuration should come from target or the
platform configuration.
Change-Id: I3a53110cf3d89efcb92da66b94b412af9f46cd62
CRs-Fixed: 2005582
enable stats by default
Add a WAR to not use macros from Hardware Header file.
Will be removed once it is fixed in Hardware header file.
Change-Id: I73152645c89813dd65c23d9060e8b6fad1d88678
CRs-Fixed: 1112381
Added support to filter out received packets on mesh vap based on
rx filter setting.
Change-Id: Ibc541324d928a9d006531c8908f4792e0c7d854e
CRs-Fixed: 2003389
print complete RX TLVs in human readable format
when ever we encounter an error in RX path
Change-Id: I054556fd599db75b94eadb7647f4cd589cbfb700
CRs-Fixed: 2003183
Skip free of nbuf with physical address less than 0x50000000. This will
ensure that same buffer is not getting allocated again resulting longer
DP init time and affecting WMI init sequence. And use correct pointer
in pdev detach function.
Change-Id: Iaab70c92adef741d5f20115cba164bcd7718886b
CRs-Fixed: 2013500
Added suport to extract per packet rx stats from tlv headers and to send
them to upper layers in predfined format.
Change-Id: If8aea2038939162a11ab869b585a0b203a396d71
CRs-Fixed: 2003389
Added mesh specific data path changes. Extract mesh meta header in the
packet and pass it to firmware. Fill tx completion stats and call upper layer
call back function incase external tx completion is registered.
Change-Id: Ic3c1c37b2f59b1a35e3cf00a4498342dc20427d2
CRs-Fixed: 2003389
Add or update WDS peer entry whenever source address of the
received pkt does not match with the peer table entries.
Change-Id: I7798a5b795777451f534be7d25d5f9b930f5c305
CRs-Fixed: 1117405
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
Napier is using per-PDEV tx descriptor pool until per-VDEV tx
descriptor pools are enabled.
Change-Id: I7699547fd71dec392345a186b4c34135629cd783
CRs-Fixed: 2005582
The Tx completion is an asynchronous event from hardware that
cannot be synchronized with vdev deletion. This causes issues
in the datapath which attempts to use invalid vdev pointer
(if tx complete is received after vdev delete).
Change-Id: I8b27b3a59a3674214dcd45dc621b068f7253a6c6
CRs-Fixed: 2005584
API to handle pkts received on vdev which has RAW mode
enabled. Currently supports only MPDU with single MSDU.
Change-Id: Ife00699646bd97c5de0021fc32db434a544058f6
CRs-Fixed: 1111781
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
1. Increased the sizes of following SRNGs used by WBM and also added max size
check in SRNG setup:
-idle link descriptor ring
-Tx completion ring
-Rx release ing
2. As per HW team, TP_ADDR and HP_ADDR for Idle link ring should remain 0 to avoid
some WBM stability issues. Remote head/tail pointers are not required since
this ring is completly managed by WBM HW
Change-Id: I93d70a287329dfeb08fcfb6b04306d65776b4834
Add RX HAL APIs to retrieve the mcs, sgi & tid info
from the rx TLV headers and display them on per packet
basis.
Change-Id: Ic6ced3ad0728183437014c0e6c2a8afbdbead1c2
CRs-Fixed: 1101961
Added cdp interface support for raw mode simulation code to support 4 address
frames. This function finds the fourth address of the packet.
Change-Id: Ia684cd4c8ba7be3e52283bda7a84fc612d924a38
CRs-Fixed: 2003389