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
pdev id should be numbered as 1,2,3 for MAC 0,1,2 while
communicating with firmware.The pdev->pdev_id variable
holds 0,1,2 during init. Add 1 to the variable while
programming the ring metadata.
Change-Id: I2de7ef2c63d2bd59581d25ad2e45daaabdb579b6
Added cdp support for external tx completion. In case of mesh mode per
packet tx completion stats has to be filled in the meta header and external
function has to be called for updating these stats. It is the responsibility
of external function to free the buffer after reading the stats
Change-Id: I45ba800acf9b4d6091cc3f9aafc67c1f1f00f379
CRs-Fixed: 2003389
peer meta-data is copied across TLVs of individual MSDUs
of A-MSDU, This has to be saved and used till last msdu
of the MPDU.
Change-Id: Id30938eebd8f98716bf9625553aea2cd774104d0
CRs-Fixed: 2002766
We should always ensure memory allocation for rx nbufs
should always happen from phy address 0x50000000 and above
else drop the nbuf and try for a new nbuf.
Change-Id: I675a0f1289e04f720949ad9b6917bbb733270a78
CRs-Fixed: 2003174
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
Introduce new file cdp_txrx_handle.h to hold the
abstract structure handles for pdev and vdev
Change-Id: Ia8c0a5b1591c630390e7b367e1eceee2bd0517ba
CRs-Fixed: 1109835
Include Hawkeye emulation PCI device ids in probe list to enable
PCI based emulation platform to support multiple nodes.
Change-Id: I539c099912e5e7fa4865f57a139f5e75c1b06462
CRs-Fixed: 1090092
This patch adds support of new WMI command WMI_COEX_VERSION_CFG_CMID
for 4-wire coex configuration in non_tlv_ops.
Change-Id: I63da2c7ae99c38d297f7f13a8086611263f7fc5b
Acked-by: Daniel Kim <kimdan@codeaurora.org>
CRs-Fixed: 1081065
Firmware expects the following:
- mac id for the refill ring configuration should be 0 (soc)
- mac id for the rx dma rings should be 1, 2 (mac 0 and mac 1)
Change-Id: I23c652e2e1f8e2fca69647906321e4d867a42609
CRs-Fixed: 2003050
Hold additional reference to BSS node during node allocation, and free
it in delete response. This ensures BSS Node Freed event is sent to MLME
only after receving peer delete response for BSS node.
Change-Id: I384eac54f437000a1c09eb53751ad8b8e26617ad
CRs-Fixed: 1112381
Change the return type of get_vdev_rx_decap_type to htt_cmn_pkt_type
which is defined inside the cdp_if layer.
Change-Id: Ie931952e3618f8e52a5b8839648a0516132ede1f
CRs-fixed: 1075597
qcacld-2.0 to qcacmn propagation
Add below four keys to allow user to tune WRR TX scheduler params.
Each key is mapping to one AC defined in data path module through
OL_TX_SCHED_WRR_ADV_CAT_CFG_SPEC.
gEnableTxSchedWrrBE
gEnableTxSchedWrrBK
gEnableTxSchedWrrVI
gEnableTxSchedWrrVO
Change-Id: I5c34b604297d83673ea065243cc58c3f2180ff3e
CRs-Fixed: 1020141
- Ensure the head and tail pointers are reset after
processing the packets on each vdev
- Ensure the network buffer is null terminated when
processing the null queue
Change-Id: I7bfab46b7fc6054e782f7f1fc09dd56a58e46a4d
CRs-Fixed: 2001835
Add Tx completion status value to the logging
of Tx completions. In addition dump Rx meta-data
and first few bytes of Rx packet only on NAPIER
EMULATION platform. This is only to facilitate
faster debug from the logs, and will be disabled,
once we have more stability.
Change-Id: I69d9e2fd6ad32efe01b8e56f355db5ed6d4d2e70
CRs-Fixed: 1116939
Add NULL termination to the list of rx frames
before passing them to the high level OS.
Change-Id: Ibc51f14b8b9ef2a8dff7147f4072910e11540093
CRs-Fixed: 1116939
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
Update peer delete sequence in dp_peer_delete_wifi3(). Currently
local peer id is freed and peer_info_spinlock is destroyed after peer
is deleted. This is resulting in OOPS error. Call dp_unref_peer_delete
only after cleaning other peer information.
Change-Id: I58cd7114d07c7d7addc941e8509661f050c23a9c
CRs-Fixed: 1116647
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