Commit graph

4,702 commits

Author SHA1 Message Date
Krunal Soni
c61d48d886 qcacmn: Add NULL pointer check in tgt_scan_pno_start() API
Add NULL pointer check in tgt_scan_pno_start() API.

CRs-Fixed: 2232784
Change-Id: Ie63ac4eea9d45e9bf8ea305fd26abed1361a03f8
2018-05-07 06:36:59 -07:00
Kiran Venkatappa
bc1c547b8e qcacmn: Add timekeeping.h inclusion under correct kernel version
timekeeping.h is available from kernel version 3.17. Add header
inclusion and ktime_get_boot_ns call under correct version check flag.

Change-Id: I2a1a127e1716b52af56d14c39e2e646e34b05fa3
CRs-Fixed: 2230949
2018-05-07 01:29:30 -07:00
Chaithanya Garrepalli
2faa46fbfb qcacmn: avoid vdev stats aggregate for every ppdu stats event
Avoid vdev aggregate stats for every ppdu stats event as it is
consuming high CPU in veriwave max clients testcase. Instead
aggregate the stats when ifconfig athX command is issued. Add
CDP API to aggregate and update stats called when needed

Change-Id: I801d5f8fab0c275942b77a9975293f95bd4026b0
CRs-Fixed: 2220704
2018-05-05 21:34:38 -07:00
Tushnim Bhattacharyya
46ffb86105 qcacmn: Add range check for mode param in cds_get_pcl
Add range check for mode parameter in cds_get_pcl.

Change-Id: I049bebc5ec62f925e164517d59f94d122dbc5dc2
CRs-Fixed: 2234351
2018-05-04 20:43:14 -07:00
psimha
0e8a2c6558 qcacmn: Get NSS info from SS bitmap
Get NSS info from a the MIMO SS bitmap within msdu_start info

Change-Id: I794b093783b5f1ffc7faf335da84cbc07375d520
CRs-Fixed: 2215660
2018-05-04 20:43:12 -07:00
Manjunathappa Prakash
56023f5649 qcacmn: Add GRO support to NAPI+Rx_thread processing model
GRO aggregations are hanging out of NAPI instance and we cannot use the
hif NAPI instance in Rx thread as gro_list inside NAPI is flushed out
at the start and end of NAPI poll, this will corrupt the gro_list on
which rx_thread is working. Address this concern by creating dummy
NAPI instances mapping to each hif NAPI and by not scheduling them.

Change-Id: I517c4c6158ed3ac073f5f617afde46c7ed07ff3e
CRs-Fixed: 2128457
2018-05-04 20:43:09 -07:00
Pramod Simha
848fc04585 qcacmn: Fix DSCP-TID mapping configuration recipe
Enable/Disable the DSCP TID map program bit before
writing the mapping configuration into HW registers.
This is a new recipe for NPR AX & HK 2.0

Change-Id: I0af968dab507b32167909dbfa8ecc7a946e4af84
CRs-Fixed: 2221226
2018-05-04 20:43:07 -07:00
Kai Liu
d7bfcdf520 qcacmn: Refine API wlan_log_to_user
Remove redundant message length check.
Truncate message immediately if its length is over MAX_LOGMSG_LENGTH,
so that can remove min check between true length and max available length.

Change-Id: I7e6c61021316a727e04dbb9671947b6413c27af3
CRs-fixed: 2229210
2018-05-04 00:48:04 -07:00
Amar Singhal
c8d0614f8d qcacmn: Update Japan regulatory domains
Change Tx Power for 2G regdomains MKKA and MKKC to 23 dBm.
Also change TX power for 5G regdomain sub-bands for MKK5 and
MKK11.

Change-Id: I32337fea35f350b2171b6d0a242934f0668d4f5e
CRs-Fixed: 2229597
2018-05-03 18:33:16 -07:00
Akshay Kosigi
0f345aee16 qcacmn: Fix for NULL check reference in hif_get_hal_handle()
Fixe for Null check dereferencing pointers

Change-Id: I706b5959a85ab381594d7cab7e7dba95435f85f5
CRs-Fixed: 2230161
2018-05-03 12:55:05 -07:00
Yun Park
538a3a6e3d qcacmn: Remove ipa_reset_hdr from QDF
Remove unused IPA API ipa_reset_hdr form QDF.

Change-Id: I749e891b74b0adb45a5c3b9dbe7ad638d62c4459
CRs-Fixed: 2233616
2018-05-03 12:55:02 -07:00
Abhijit Pradhan
231d7df5d3 qcacmn: Add Radartable related changes for ETSI14_WORLD
Adjust radartable start offset for ETSI14_WORLD

Change-Id: I8d8f1019248c184b4e2a92a3b544be4358793812
CRs-Fixed: 2233349
2018-05-03 09:12:57 -07:00
Kiran Venkatappa
4200acb550 qcacmn: Update target resorce config with TWT params
Number of AP TWT and AP TWT stations are added in
target_resource_config to provide the configuration for TWT.
Add support in WMI to provide appropriate defaults for TWT.

Change-Id: Ica91f981d59a015b0b4cda41ba951b6ba22e8120
CRs-Fixed: 2212667
2018-05-03 09:12:54 -07:00
chenguo
04d38d67ae qcacmn: Correct RX NSS statistics counter for txrx_stats commands
While doing RX NSS statistics counting, only MU_MIMO and MU_OFDMA_
MIMO frames are taken into consideration. So all NSS counter for
SU frames are missed.

Add RX NSS statistics counting for SU frames.

CRs-Fixed: 2228332
Change-Id: I5ee9b8f03177d31f5891a2e4e616b5740fec35f6
2018-05-03 04:43:41 -07:00
Paul Zhang
41bd701ee7 qcacmn: Correct the alpha2 for Netherlands
Netherlands country code is NL.

Change-Id: I4e71a96c4f46798f0473effeb52681276d79557a
CRs-Fixed: 2207119
2018-05-03 03:36:09 -07:00
Manjunathappa Prakash
38ff9e3bb1 qcacmn: clear the tx_desc flags in V2 flow_ctrl dp_tx_desc_free
Make sure to clear the tx_desc->flags field before putting the tx_desc to
free pool. This was not takencare in V2 flow_control implementation.

Change-Id: I666b9b09de62d52cffc45e2b6db3a6be06d688e8
CRs-Fixed: 2186884
2018-05-02 19:48:03 -07:00
Naveen Rawat
caca8b01fd qcacmn: Add get channel width from phy mode API
Add get channel width from phy mode API which will be used by
ndp schedule update event.

Change-Id: I13d00c0b818eb0da434c8a5372b2ab7b6693f22a
CRs-Fixed: 2216801
2018-05-02 18:46:16 -07:00
Naveen Rawat
9fdd4f55e6 qcacmn: Re-factor buffer len calculation for NDP events
Re-factor vendor event buffer length calculation for NDP events
to a separate function call.

Change-Id: I6828067d0e81987d7c903fd7f7df05b3a4eadbe3
CRs-Fixed: 2183658
2018-05-02 18:46:14 -07:00
Shaakir Mohamed
4e30c9aba0 qcacmn: Avoid null pointer dereference
Check to prevent null pointer dereference.

Change-Id: Iec0f7d7738aa99994e2cf7b0dae2e6cd4a34c709
CRs-Fixed: 2220175
2018-05-02 14:29:24 -07:00
Yun Park
bcffecb07e qcacmn: Add QDF abstraction for IPA_CLIENT_WLAN1_CONS
Add QDF abstraction for IPA_CLIENT_WLAN1_CONS.

Change-Id: I7b93432c5ce88d13ba9e52eb04e933238fe7c836
CRs-Fixed: 2220705
2018-05-02 14:29:22 -07:00
Manjunathappa Prakash
612594a523 qcacmn: Do not mark pool id as INVALID_FLOW_ID in unmap
In flow control V2, dp_tx_flow_pool_vdev_unmap marks flow_pool_id as
INVALID_FLOW_ID. To free descriptors inside pool dp_tx_desc_pool_free
uses flow_pool_id to get hold of pool.

Change-Id: I892052055b34638a1ba876fac6bfcd2ae3b0d5b3
CRs-Fixed: 2228943
2018-05-02 08:30:20 -07:00
Naveen Rawat
5f7085d09d qcacmn: Fix vdev ref leak in CP_STATs get_peer_rssi
Fix vdev ref leak in CP_STATs get_peer_rssi.

Change-Id: I583fe8c0c0fabd022fd52b4749a8b324c37ae5e5
CRs-Fixed: 2231395
2018-05-02 04:35:15 -07:00
Naveen Rawat
1a9ee7dc49 qcacmn: Define ucfg api to free stats_event
Define ucfg api to free stats_event, since it will be called from
osif and hdd.

Change-Id: Ifeea3e970ddca1ed508960c39a2a39f0ed755bd9
CRs-Fixed: 2231150
2018-05-02 04:35:12 -07:00
Naveen Rawat
581787f9af qcacmn: Add osif implementation of getting peer rssi
Add changes to support get peer rssi from within cp_stats
component.

Change-Id: Ic5e9d85e24b1f272df1fa7b6482a797af2aca66a
CRs-Fixed: 2222777
2018-05-02 04:35:09 -07:00
Naveen Rawat
34e15c4636 qcacmn: Add umac implementation of getting peer rssi
Add changes to support get peer rssi from within cp_stats
component.

Change-Id: I68c9c7e23dd14b515a71080b1b5fe3af15651ef9
CRs-Fixed: 2222777
2018-05-02 04:35:07 -07:00
Naveen Rawat
ddde9c16f0 qcacmn: Add target_if/wmi implementation of getting peer rssi
Add changes to support get peer rssi from within cp_stats
component.

Change-Id: Iacae9a463281c163e34b98221e21be977719ffb6
CRs-Fixed: 2222777
2018-05-02 04:35:05 -07:00
Manjunathappa Prakash
c3aeffb5e9 qcacmn: add API to get NAPI instance corresponding to NAPI ID
Add API to get NAPI instance from NAPI ID. Handle to NAPI is required
for Rx processing via GRO.

Change-Id: I15535827a03953231670d4138235c4876b16e045
CRs-Fixed: 2062180
2018-05-02 04:35:02 -07:00
Chaithanya Garrepalli
2f5727960b qcacmn: Initialize dp peer map memory after WMI service ready
Initialize the peer map and peer hash memory based on the config
received from target in service ready event

Change-Id: I8e1b62cd9586f5b2be7acb863a106d2486be1b35
CRs-Fixed: 2223428
2018-05-02 03:19:29 -07:00
nobelj
d803959826 qcacmn: Populate BeamFormed info from VHT_SIG_A and HE_SIG_A
Populate Beamformed information from VHT_SIG_A and HE_SIG_A

Change-Id: Iba108f6f9905ed02490936c5ca2f00e0e94b318f
CRs-Fixed: 2185151
2018-05-02 03:19:25 -07:00
Chaithanya Garrepalli
5142030dd9 qcacmn: add qdf API for skb_orphan
Add the qdf abstraction API for skb_orphan

Change-Id: I0fabb3fdd02e289d7bad97efebb2853e6827f458
CRs-Fixed: 2232427
2018-05-02 01:19:47 -07:00
Anish Nataraj
4c9a4edde6 qcacmn: Add locks while extracting vdev from vdev_list
Add locks while accessing vdev from vdev_list

Change-Id: I89282ebd808382b6f1dc1076a2603650c7a29bf9
2018-05-02 01:19:45 -07:00
narayan
8c93d70695 qcacmn: Implementation of some generic stats
cmn_dev changes to port FR43672 from 10.4 to 11.0.

Change-Id: Ic7ec9ac7875139fd5a2909738e1f0ff0d37a65a3
CRs-Fixed: 2153764
2018-05-02 01:19:43 -07:00
nobelj
1c31fee00e qcacmn: Configure RXDMA_MONITOR_STATUS on set mon rx filter
a) Configure RXDMA_MONITOR_STATUS to support mpdu_start.
b) Need Monitor other filter in RXDMA_MONITOR_STATUS
to support monitor vap.

Change-Id: I7ac90203f085850906f8c55209a57bb6a5464098
2018-05-02 01:19:40 -07:00
Tallapragada Kalyan
70539512de qcacmn: chain nbufs using phy_ppdu_id for peer invalid case
nbufs received on wbm_release ring were chained based on
first_msdu and last_msdu bits if the peer is invalid for these
frames, but these fields in the rx tlv header were in-correct as
hardware does not decap these msdu's.
Based on inputs from firmware we now changed this logic to
using phy_ppdu_id field from the rx_mpdu_start tlv & rx_attention tlv.

Change-Id: Ifc7faa2d1b0585bcc226e5cb2045fcb29d152273
2018-05-01 21:37:40 -07:00
Shaakir Mohamed
41323bb65c qcacmn: Avoid scatter buffer from going out of bounds
Check to prevent scatter buffer overflow, limit to
MAX_IDLE_SCATTER_BUFS.

Change-Id: I8092e250eeafb22c1ff4f609e495345a4f31426a
CRs-Fixed: 2213708
2018-05-01 21:37:37 -07:00
Mohit Khanna
0425280d73 qcacmn: add DPTRACE Enhancements - Phase 2
Change data packets printing to one line
Add msdu-id to TX packets
Increase data packets size to include the complete IP packets
Indication/print when the throttling occurs

Change-Id: I07fc664ea08bc8746e31260599c5892701ae52e7
CRs-Fixed: 2157769
2018-05-01 21:37:34 -07:00
Arif Hussain
083d9da267 qcacmn: Add kernel backport versions
Add kernel backport versions for below kernel flag
- CFG80211_REPORT_BETTER_BSS_IN_SCHED_SCAN

Change-Id: Ie89b8c639070ffe25c4410088c0e154801f5f07d
CRs-Fixed: 2232251
2018-05-01 21:37:31 -07:00
jitiphil
e5515b01bf qcacmn: Validate nbuf in dp trace function
This reverts commit Idb59f83edc09f9be8bf0bd231b8eb6ff28f37fd4.

nbuf was set to NULL and then deferenced.

To address the issue validate nbuf before processing in dp trace function.

Change-Id: I464c0dea36c0288c4bb01d6fba5255169d7ec255
CRs-Fixed: 2220892
2018-05-01 06:20:44 -07:00
Venkata Sharath Chandra Manchala
f5e2570abe qcacmn: Fill htt message length correctly
Fill htt msg length before the htt stats response
handler so that the wifistats tool can read the
htt msg data correctly.

Change-Id: I544d1b97c8d74a0115a4a5a509780a6e9c273ab7
CRs-Fixed: 2231948
2018-04-30 15:29:34 -07:00
Disha Das
55b86c274b qcacmn: Fix crypto KW issues
Add buffer overflow check for setkey, delkey and
mmie.
Initialize ret before use on add mmie.

Change-Id: I4c6529464a02c67433984dc37a027cf44cc90f5f
2018-04-30 13:18:40 -07:00
Vinay Adella
940d1d3c34 qcacmn: Support to enable/disable SWBA events in beacon offload
When SWBA event is enabled, the FW will sent an event to the
host on every TBTT beacon.
Note that, unlike the legacy offload chips, this event is not
used by the host to send out the beacon frame itself.

Change-Id: Icf4440d79f7dbfb544f9d98c4de0e84bdb150459
CRs-Fixed: 2200805
2018-04-30 05:56:24 -07:00
Tallapragada Kalyan
1f49bffd64 qcacmn: Initialize ast_list during peer create
ast_list should be initialized during peer create
even for cases where peer exists

Change-Id: Iea48714166e7aead064c2879f6bf5f1cadf1589f
2018-04-30 03:23:20 -07:00
Kiran Venkatappa
d1a16871a3 qcacmn: Fix compiler error with WDI_EVENT_ENABLE disabled
Update function prototype of dp_ppdu_stats_ind_handler. It should be
same when WDI_EVENT_ENABLE is defined and not defined.

Change-Id: I390d35b3b9f5f283fc3b960f00563fb997ef7f95
CRs-Fixed: 2230955
2018-04-29 23:44:09 -07:00
Om Prakash Tripathi
8e9beaef6b qcacmn: Change IE parse failure prints to debug level
In some environments its found that IE's received are not
as expected and console gets flooded with pare failure prints.
Move these prints to debug level.

Change-Id: Ic25bdff65f340f47179a7ac6dd79731b80c805ff
CRs-Fixed: 2232553
2018-04-29 23:44:07 -07:00
Himanshu Agarwal
909eb2e46f qcacmn: Change ce_service_max_yield_time ini to us granularity
Change ce_service_max_yield_time ini to us granularity to have
yield time of us order as well.

Change-Id: Iae31be810dd42273a4f0546ba2b76e89e23b9329
CRs-fixed: 2086190
2018-04-28 12:57:34 -07:00
Poddar, Siddarth
1ea8292209 qcacmn: Add API to set ce service max rx indication flush
Add API to set ce service max rx indication flush num
during load time for handling of messages in CE based on
ini configured one.

Change-Id: I49c3d6ebac34076cd5ad5e352e78d2fec7c8ee89
CRs-Fixed: 2068375
2018-04-28 12:57:31 -07:00
Edayilliam Jayadev
2874cca041 qcacmn: Adjust RSSI values for Spectral HW gen III
RSSI values are reported in 1/2 dBm steps for spectral HW gen III.
Convert the RSSI values to 1dBm scale.

CRs-Fixed: 2231546
Change-Id: I30962a95ba7a5f759d933e373c2b8708a98712fc
2018-04-27 09:47:37 -07:00
Sathish Kumar
77f3c438f0 qcacmn: Fix memory leaks in direct buffer receive(DBR) module
Module param capabilities stored per module per pdev and overall
target dbr ring capabilities allocated and stored during service ready
are not freed during detach.

Fix above mentioned memory leaks through below changes
1. Free module param capabilities allocated per pdev during ring deinit
2. Free DBR ring capabilities allocated during service ready event
   as part of target psoc info free.
3. Free DBR entries allocated per event received from target

Change-Id: I93d5126063d3fa0094e15d57a75f03cf63b3c494
CRs-Fixed: 2228428
2018-04-27 05:26:39 -07:00
Himanshu Agarwal
80a3da4f57 qcacmn: Add macros for GCMP header and MIC length
CCMP and GCMP both have different lengths of their MIC part. MIC
length for CCMP is 8 bytes whereas it is 16 bytes for GCMP. When
encryption type is GCMP/GCMP-256, sending packets with CCMP MIC
length causes fw to drop the GCMP encrypted management packets
leading to connection issues.

Add macros for GCMP header and MIC length

Change-Id: Ib768319d38dca90d92ff99ad3318a70f5a6ae474
CRs-Fixed: 2226978
2018-04-26 21:39:07 -07:00
Aditya Sathish
0e6b17aeb3 qcacmn: Add NL80211 Testmode Conditional Directives
Added NL80211 testmode if directives to enable compilation when not
supporting the feature.

Change-Id: I00b8d982035b78f5893bd1bec79309c7ffa48d05
CRs-Fixed: 2231059
2018-04-26 21:39:05 -07:00