نمودار کامیت

821 کامیت‌ها

مولف SHA1 پیام تاریخ
Krunal Soni
07215e8082 qcacmn: Define int_ctx variable to resolve compilation error
int_ctx variable is not defined but it is being used which creates
compilation error. Define this variable as part of the fix.

CRs-Fixed: 2359507
Change-Id: I17e57663eb8daa449616ee99d5eb9455e3b7cee2
2018-12-03 16:41:55 -08:00
chenguo
5fc91d835e qcacmn: Safely cleanup reorder frag list during RX defrag flush
Need to use tid_lock to protect the rx_tid data structure in the
dp_rx_reorder_flush_frag function. Or else there will be race
condition issues.

CRs-Fixed: 2357226
Change-Id: I860a64b529f0548eced7b537c4180a2c57175a56
2018-12-03 11:01:30 -08:00
Amir Patel
4cf16d6d96 qcacmn: Fix tx_stbc stat print issue
set str_buf index to zero before parsing stbc stats from tlv

CRs-Fixed: 2354728
Change-Id: I9100a762a1f40e0ef2fc76ad4a9286b4002a9a82
2018-12-03 04:15:15 -08:00
Mohit Khanna
40f76b57f8 qcacmn: Fix regression from DP init-deinit path changes
MCL DP initialization path is running into issues due to change
I5732453f617bdc16995fda916b645c41845c3ecb. Fix the same.

Move flow control lock variables to re-use region. This is needed since
flow control deinit happens in dp_soc_detach, while in dp_soc_deinit, the
soc memory is being partially reset.

De-init HTT memory in dp_soc_deinit and free HTT handle
in dp_soc_detach. The existing code was not freeing HTT
packets for MCL case and freeing the HTT handle twice.

CRs-Fixed: 2359409
Change-Id: I52dcccc0444d4ce139a29ffcb884598bbacda88f
2018-12-02 13:31:08 -08:00
Pamidipati, Vijay
7d6957294f qcacmn: fix for nbuf leak issue
Fix a nbuf leak issue in htt tx completion path for
invalid peer frames

Change-Id: I7818bd2cfe8144e1ea8b1d43e5e5c1de929f91cc
2018-11-30 14:36:54 -08:00
Krunal Soni
d3eb8bcff8 qcacmn: Initialize the PN and plumb it to HW
Initialize the PN to the value which is given by upper layer
and plumb it to HW.

Change-Id: If6b14d2b9b92e4571a85cb20dc445608d5f56961
CRs-Fixed: 2350954
2018-11-30 08:28:28 -08:00
Anish Nataraj
e9d4c3bf33 qcacmn: Reorganise DP init-deinit path to reuse memory
Avoid memory fragmentation that happens during
attach-detach flow.
- Reuse transmit allocated static pool memory across soc up/down.
 These memories are allocated during soc attach.
- Reuse DP source ring memory, DP soc context, DP pdev context
  across soc up/down.
- Reorganise structure members of DP soc and DP pdev so that
  we can zero out structure members across soc up/down
- Add cdp soc init/deinit and cdp pdev init/deinit that
  will be active across soc up/down

Change-Id: I5732453f617bdc16995fda916b645c41845c3ecb
2018-11-30 03:40:43 -08:00
jiad
5eb6276a46 qcacmn: Fix misleading-indentation build error
This change fixes build errors with compiler option
-Werror=misleading-indentation.

Change-Id: I56e0921b1319852109d978cf239b54c2941a0e8e
CRs-Fixed: 2353199
2018-11-30 03:40:41 -08:00
Chaitanya Kiran Godavarthi
f6c061252f qcacmn: Reduce ASE aging for MEC entry type
ASE entry aging for MEC entry type was same as
WDS type for 120 secs, this creates an issue when
device roams from MEC to WDS connection by not
aging out till 120secs. So now we reduce the MEC
aging time to 1sec

Change-Id: I6ab3b095a85c6d09f9fcd95b3b39f7152064d297
2018-11-29 18:12:33 -08:00
chenguo
2a73379e03 qcacmn: Add new cdp API to get vdev in monitor mode
After gerrit#2436786, vdev in monitor mode is removed from vdev
list of pdev. So it is needed to add one more cdp API to get vdev
in monitor mode.

CRs-Fixed: 2343290
Change-Id: I9d74302a464280881ce0cf25dbc8c4f9d8b8d48d
2018-11-28 03:57:17 -08:00
Jinwei Chen
40fafaf4b6 qcacmn: fix REO2SW ring full issue
When reap data from REO2SW ring and if the TP catches up to cached
HP, current logic will update HP again and give a second chance to
reap data. but the TP is not updated to ring register, if more data
is received on this ring then HP easily catches up to TP and the ring
is full.
Update TP as well if HP get chance be updated.

Change-Id: I92f381d2a31f3be987866a829e05b5578098649a
CRs-Fixed: 2334435
2018-11-27 23:54:50 -08:00
Viyom Mittal
27fe1239d3 qcacmn: Set ack_rssi_valid to 1 for successful TX
The ack_rssi_valid flag to set to 1 only when completion_status
value is 0 which shows that the TX was successful.

Change-Id: I9e520422995e374d7d35b9db0c060d1fce2f9067
2018-11-27 11:20:21 -08:00
Basamma Yakkanahalli
5f7cfd49c2 qcacmn: Device and Target type support for qca6018
Added target and device type support for qca6018.

Change-Id: I85382bf053d0a5f34cfaf0cca78a4b66b4265989
CRs-Fixed: 2323023
2018-11-27 00:32:00 -08:00
Jinwei Chen
1adbd73547 qcacmn: fix excessive logging about rx defrag
Change rx defrag related log level from info to debug,
it's not necessary to print normal rx defrag operation related
log default, this can avoid panic caused by excessive logging
when receive lot of fragment data.

Change-Id: Id712d546a760377a6f59b321f73d7ae5ca4af564
CRs-Fixed: 2353869
2018-11-26 15:52:48 -08:00
Kiran Venkatappa
74e6d8b510 qcacmn: Enable AST workaround only for HKV1
HKV1 does not have support to maintain per pdev AST table.
Hence workaround is required to ensure that AST entry is deleted before
adding an entry with same MAC. This syncronization needs to done across
pdev. This workaround in required on for HKV1, add changes to enable
workaround only for HKV1 and disabled for other platforms.

Change-Id: I9aa43ea51fdff2f02cdcc8ff7e906c7305446317
CRs-Fixed: 2344921
2018-11-22 00:43:47 -08:00
sumedh baikady
61cbe85a14 qcacmn: Per tid BA window size enhancement for HKv2
For HKv2, BA window size can be configured on per tid
basis as opposed to per peer basis on Hkv1. This per
peer per tid configuration on Hkv2 is for Tid 0 to 7.

Change-Id: Ic4afee92792af829a9ad8fdfc211625743b9d052
2018-11-21 22:59:19 -08:00
Aniruddha Paul
c34164e97e qcacmn: Add support for NSS DBTC mode
Add dbtc support for NSS offload mode.

Change-Id: I3673c0a42071f7d7767e086618c0171658e8a6f0
CRs-Fixed: 2330655
2018-11-21 22:59:16 -08:00
Chaithanya Garrepalli
0a5f71bca1 qcacmn: remove the QDF_BUG in src port learn when peer found
Remove the QDF_BUG in sa valid case when AST entry is not found
and peer is found as this can be a valid case in DBDC repeater

In DBDC repeater case we may receive the L2UF frame sent on 5G
radio on 2G interface

In this case SA will be valid and peer will be found for 5G VAP
mac address, but ast entry will not be found in ast_table as we
dont receive peer map events for STA vaps

Change-Id: I22e8582605f59a8691d8fcbb43627655d1a6500c
2018-11-20 12:19:12 -08:00
chenguo
420a4425dc qcacmn: Fix peer ref_cnt unmatch issue in TQM bypass mode
The reference counter will be increased after using peer find by
id API. So the unreference operation must be performed whenever
the peer which is returned by this API is released. Fix one peer
ref_cnt unmatch issue in TQM bypass mode.

CRs-Fixed: 2348316
Change-Id: Icae09b351315f38d9b7521b29c0e930339c9f83a
2018-11-19 08:04:11 -08:00
Karunakar Dasineni
700ad73754 qcacmn: WAR for duplicate buffers in monitor mode
WAR to discard duplicate indications (buffers and link descriptors)
from monitor DMA seen sometimes on RXDMA2SW ring.

Change-Id: I687b782f54fbbf85ae932ee833ac9263b5879ca6
2018-11-17 10:48:13 -08:00
Om Prakash Tripathi
f8ccc18f6a qcacmn: Check delete in progress before adding wds entry
In Repeater configuration when a STA first associates to Root AP
on some radio and then roams quickly to repeater AP on other radio,
some times target assert is observed due to below race condition.
1. Root AP sends peer delete command to FW on radio X and clears
   its AST entry. This peer delete command not processed by FW yet.
2. STA roames to repeater AP and starts ping traffic to Root AP.
3. Root AP receives the ping frame and tries to add wds entry on
   radio Y as AST entry was not found.
4. FW receives add wds entry on radio Y while on radio X an
   direct peer ast entry for same mac was present.
5. FW asserts.

Change-Id: I02ac409f2b4f6b2ea307d99c5f1fdab7776ca938
CRs-Fixed: 2347818
2018-11-16 05:10:27 -08:00
Amir Patel
3c60631d7c qcacmn: Add support for last_per
Calculate last_per based on unicast packets and success packets
in last one second

Change-Id: I8b469e5d9c1e40498b3267bf7bdf3149159bdc31
CRs-Fixed: 2343479
2018-11-15 03:38:29 -08:00
Pavankumar Nandeshwar
2a2b7fecb0 qcacmn: remove the host ast_entry after deleting in FW
Removet the host ast_entry after sending delete ast_entry
to the firmware. This will handle the situation where we
might receive an add request for the same ast_entry,
while we are waiting for delete response from the firmware.

Change-Id: I105504a9c6a1e8e53bef9f3d011c10f846fd098e
CRs-Fixed: 2347989
2018-11-15 01:38:36 -08:00
phadiman
4213e9ca61 qcacmn: Separate MEC, DA and WDS Enable Flags
Add new flags for MEC and DA enable/disable
and keep it independent of WDS enable flag

Change-Id: Idb49c45ebb34a38f876dbdb293806c4e96d49b5d
CRs-Fixed: 2336332
2018-11-15 01:38:27 -08:00
Pamidipati, Vijay
a59b5607c6 qcacmn: Split Tx and Rx indication handling
Add support to handle Tx completion processing and Rx processing into
different NAPI threads/contexts for Lithium DP

Change-Id: I4f5c6ef3ce969ce457e26cf3e8305df1ae782f09
2018-11-14 12:20:34 -08:00
Shashikala Prabhu
8f6703be71 qcacmn: Add support to override tid value
Add support to configure a specific tid for unicast packets derived from
multicast packets.

Set the user provided tid value when both multicast enhancement and
tid_override_en flag is set.

Change-Id: I770166a37c920a7e642c6649f918456846fb5f90
Acked-by: Shashikala Prabhu <pshashik@codeaurora.org>
CRs-Fixed: 2342717
2018-11-14 02:35:14 -08:00
Ruchi, Agrawal
93bcf1292f qcacmn: Take reference for peer before adding ast
Add reference for peer before adding ast entry
Reference is taken to avoid any synchronization
issue wrt to peer when adding ast entry.

Change-Id: Id3116daed84ad15eba515fedddb1146845542742
CRs-Fixed: 2335943
2018-11-13 22:44:40 -08:00
Venkata Sharath Chandra Manchala
443b9b4da2 qcacmn: Print HP/TP Stats
Extend txrx_stats to print current HP/TP
Status for UMAC rings.

Change-Id: I50332f7507fdf1841dee51f0b1e97ef4ea68f04f
CRs-Fixed: 2332191
2018-11-13 06:56:15 -08:00
jiad
095729006f qcacmn: Fix switch-unreachable build error
This change fixes build errors with compiler option
-Werror=switch-unreachable.

Change-Id: I731267648689a4c68fe1822c7b5f89918923cdcf
CRs-Fixed: 2346023
2018-11-13 01:11:43 -08:00
jiad
5728624cee qcacmn: Fix misleading-indentation build error
This change fixes build errors with compiler option
-Werror=misleading-indentation.

Change-Id: I7dbafdc60f0e143c33e4abe12dfd2dbc2d7756cd
CRs-Fixed: 2346027
2018-11-12 21:23:05 -08:00
Venkata Sharath Chandra Manchala
0ce469e330 qcacmn: Add pktlog handler to process rate events
Add dp_msg_pktlog_handler to handle
rate events from the firmware.

Change-Id: I24776caa3b78ec38d94421f243ec72d81ee3102d
CRs-Fixed: 2340639
2018-11-11 09:27:32 -08:00
Pranita Solanke
58e34a3e10 qcacmn: Check non-zero Rx RSSI during vdev/pdev aggregate
Do not update vap level rssi value if rx rssi is zero.

CRs-Fixed: 2339560
Change-Id: I91409903f29c41fb17aaca77dc1ab266077c58bf
2018-11-11 04:47:50 -08:00
chenguo
5f7f131a9d qcacmn: Fix double destroy operation about mon_lock
mon_lock is created only once for each PDEV, but is destroyed
according to the RXDMA number. Need to ensure this lock is freed
only once.

CRs-Fixed: 2338573
Change-Id: I3630dd0a3aaf808fa910cd40864042bf23ecc79e
2018-11-09 19:43:35 -08:00
Pamidipati, Vijay
b75e8108a1 qcacmn: Fix the buffer replenish ring for REO errors
Currently buffers reaped in REO exception ring handler are being
replenished into 5G MAC ring always.
Fix this by using appropriate MAC ring for replenish

Change-Id: I04f5a1179a7df4b018b6a0b435e2a0421ef534e5
2018-11-09 13:11:27 -08:00
jiad
4320219982 qcacmn: Fix format build error
This change fixes build errors with compiler option
-Werror=format=.

Change-Id: I98b93f776c7d58a12d93e1be3a6acf34486ddfab
CRs-Fixed: 2344756
2018-11-08 09:40:18 -08:00
Venkata Sharath Chandra Manchala
f0b7fdb82e qcacmn: Remove excessive logging in tx path
Invalid status completions have already been accounted
in the counters. Remove error message for every
invalid status completion as it would lead to excessive logging.

Change-Id: I4af025f3a8731e8488d1d49799c65399a6cc9e37
CRs-Fixed: 2342963
2018-11-07 10:52:25 -08:00
Lin Bai
2a78c0054c qcacmn: Avoid excessive defrag log in spinlock
The excessive/unnecessary ERROR level log during defrag_flush will
cause WDOG timeout on MSM platform. Also, it will lead to the
spinlock be held too long.
Move them out of spinlock, and de-priority/remove unnecessary one.

Change-Id: I3501e0e40a268f073c80ab36abfe762a007e5672
CRs-Fixed: 2342065
2018-11-07 01:35:55 -08:00
Tallapragada Kalyan
887fb5d580 qcacmn: dp_peer use after free condition
there is a use after free case observed with the
recent changes to wait for a WMI WDS delete response
Basically the peer got deleted by the time we got
response for WDS delete and we are trying to access this
peer when trying to delete the AST entry from host.

Change-Id: I78215345ccd12d5bdd801fccf8d9f5cd196466de
2018-11-06 21:07:50 -08:00
Aditya Sathish
dc949c59be qcacmn: Add CDP support for resolving RA from DA for ME6
Add support for parsing AST entries to resolve the RA for
multicast enhancement (mode 6) and enabling access of the API to
the higher layers through the use of the CDP framework.

Change-Id: I909bea86b90c22f311484c0b2653dd7623971c24
CRs-Fixed: 2333014
2018-11-06 00:22:24 -08:00
Karunakar Dasineni
2b7628c863 qcacmn: Fix interrupt batch count initialization
Interrupt batch count configuration "dp_int_batch_threshold_other"
was initialized to wrong values, which was causing missed interrupts
from REO status ring.
Also remove the extra RXDMA2SW ring handling, which is currently
done in both UMAC and LMAC interrupt processing loops.

Change-Id: I9a9e951780356db6b491d1301d2c08ef1ac585d5
2018-11-02 15:26:19 -07:00
Nandha Kishore Easwaran
800b18c640 qcacmn: Revert Retrieve MAC address from nbuf for MEC EVENT
This reverts change Iab8dc346b9a2108e4cb107fb61d242700a084223

Change-Id: I63826f31a7fc65518d19c8bce699e4ca789451c1
2018-10-31 23:04:37 -07:00
phadiman
e9fb5477c5 qcacmn: Add debug logs for AST
Add debug logs for AST add, delete
and update functions under debug
level trace for debugging purpose

Change-Id: I2a1728fc97cdd00dd9bdabab5a6055e9f8464e65
2018-10-31 19:20:50 -07:00
Pamidipati, Vijay
22c79d586e qcacmn: Do not use wds_en flag for ADDR search flag update
Using wds_en flag to control ADDR search flags in Transmit Descriptor was
causing DP to wrongly use ADDRY search instead of ADDRX search
on WDS repeater for DBDC repeater and SON scenarios.

Fix this by removing the use of this flag in dp_tx_vdev_update_search_flags
API

Change-Id: Id8ca40f926d58b8267e89d30c2b54cc42b4d4182
CRs-Fixed: 2335867
2018-10-31 15:00:29 -07:00
Amir Patel
756d05e9e5 qcacmn: Replace interface of dp stats updation to upper layer
Replace ol_if interface with WDI for dp stats updation to upper layer.
Define a new CDP API to get radiostats.

CRs-Fixed: 2326789
Change-Id: Ieaee2fe18fc9a0ad0e259e36f59529fe9bc4e208
2018-10-31 13:21:28 -07:00
Amir Patel
8ae687908d qcacmn: Avoid processing tx rate stats
Avoid processing tx rate stats if STATS_USR_RATE_TLV is not processed
in htt_ppdu_stats

Change-Id: Icce8ca0b351ae1ae784ba605d1d984dcdd033715
CRs-Fixed: 2316130
2018-10-30 08:47:20 -07:00
Venkata Sharath Chandra Manchala
f167af18e5 qcacmn: Extend txrx_stats command to print wlan cfg
Add iwpriv <interface> txrx_stats 29 and
iwpriv <interface> txrx_stats 30 to print wlan_cfg
parameters for both soc and pdev.

Change-Id: I666fe4fa999e82e92ea2961ab662e3e629b58bc7
CRs-Fixed: 2331949
2018-10-29 20:10:23 -07:00
Pramod Simha
068e6b92df qcacmn: Fix mic header derivation for 4 addr format packets
Extract the QoS field for 4 address format packets from the correct offset.

Change-Id: Icae4750026c2834bc84eebccbe6fa835212ccb18
CRs-Fixed: 2257255
2018-10-29 16:47:10 -07:00
Pavankumar Nandeshwar
3b67366fd2 qcacmn: For ast_entry of type DA use bss_peer
1. While saving ast_entry of type DA, use bss_peer.
2. Display the correct peer_mac_addr in ast_entry of type DA

Change-Id: Ic6150d6e3fc0b1c1274844ea6685df6b66afd811
CRs-Fixed: 2332417
2018-10-26 18:21:08 -07:00
Venkata Sharath Chandra Manchala
8747958dff qcacmn: Enable Monitor Mode for QCA6390
Support Monitor Mode for QCA6390 as RXDMA1 block is
now removed.
1. Monitor buffers are now received on rxdma_err_dst_ring
2. RXDMA1 monitor status ring is moved to RXDMA0 monitor
   status ring
3. Msdu link descriptors are now returned to WBM descriptor
   release ring.
4. Reap the Monitor buffers and return it to SW Refill ring.
5. Use the same rx descriptor pool for regular and monitor data.

Change-Id: If41e5d13f942da2b97e5aab72b88ae344925ba67
CRs-Fixed: 2297300
2018-10-26 10:39:37 -07:00
syed touqeer pasha
0050ec95b3 qcacmn: Add support for Secondary HMWDS ast entry in NSS
Add NSS Wi-Fi Offload support for Secondary HMWDS ast entry.

Change-Id: I3429356e1e20aecdbb7af5b29770c41026f3bd46
CRs-Fixed: 2332290
2018-10-25 05:32:18 -07:00