Commit Graph

6674 Commits

Author SHA1 Message Date
Naga
65fad66752 qcacmn: Add change to skip monitor ring cfg
Add change to skip monitor ring configuration
for smart and lite monitor through dp_set_monitor_mode
API instead will be handled to configure
cdp_txrx_set_pdev_param from caller as required
during restart, stop and up path.

Change-Id: If842399c64601049efdf9233a83ede5ce368802c
CRs-Fixed: 2421573
2019-03-24 22:26:30 -07:00
Jeff Johnson
dcb2769793 qcacmn: obj_mgr: Replace explicit comparison to NULL
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within umac obj_mgr replace any such comparisons with
logical operations performed on the pointer itself.

Change-Id: I0f556e8baa9126511420a8d4c1b1a5e4ee220bab
CRs-Fixed: 2420149
2019-03-24 19:27:05 -07:00
Kiran Venkatappa
4b50f33d5b qcacmn: Use size of CDP rx ind struct in ppdu stats handler
cdp_rx_indication_ppdu structure is used to indicate ppdu stats to upper
layer. Use the size of this struct instead of hal_rx_ppdu_info struct
while allocating SKB for notifying this event to upper layer.
hal_rx_ppdu_info struct is smaller sized structure and this can cause
invalid access.

Change-Id: I0db5a04f6e8ca8d8d38ddc83bcb7859292b45ba1
CRs-Fixed: 2419923
2019-03-24 19:27:02 -07:00
Santosh Anbu
e0f17e57bb qcacmn: Add object manager API to iterate psoc list
Add object manager to iterate through all the psoc in
the system and call the provided callback with relevant
arguments

Change-Id: I92f4c1248447ce14413b666076e515c0569385a0
CRs-Fixed: 2413775
2019-03-24 14:55:04 -07:00
Manjunathappa Prakash
8f70862cd8 qcacmn: Detect dp_rx_process reo descriptor paddr corruption
Compare REO ring descriptor paddr with rx_desc->nbuf->cb->paddr,
possible corruption if they differ.

Change-Id: I064df12495a9934fe2396305a7a4a8cdeacdfd4f
CRs-Fixed: 2398155
2019-03-24 14:55:01 -07:00
Nachiket Kukade
dace806a9d qcacmn: Move wlan utility modules due to layering violation
Modules wlan_util_get_vdev_by_ifname/wlan_util_vdev_get_if_name,
which are part of wlan utility under UMAC, are accessing OS IF
private structure that points to the interface name. This is a
layering violation since OS IF private structure should only be
accessed from OS IF layer. Move these modules in NAN OS IF files
in CLD where they are more appropriate.

Move modules that access os if priv to NAN OS IF files in CLD.

Change-Id: Ie4c2f51cddf3abfccbaa6a80580f38345697cfd1
CRs-Fixed: 2384474
2019-03-24 14:54:58 -07:00
Mohit Khanna
3d1e1b7602 qcacmn: Prevent rate stats from printing in kmsg
Do not print rate statistics on the console or kernel logs. Excessive
logging in kernel messages can lead to kernel panic.

Change DP_PRINT_STATS to not print in kernel logs.

Note that this is an interim solution. Ideally these prints from DP
module should be QDF_TRACE_LEVEL_DEBUG and logged to QXDM. Currently
DEBUG trace level is disabled for DP module.

Change-Id: I54af98eda0dd4ea53ae20f25ced6b03287d8b4e4
CRs-Fixed: 2414635
2019-03-24 12:58:12 -07:00
Jeff Johnson
cba07b4883 qcacmn: dfs: Replace explicit comparison to NULL
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within umac dfs replace any such comparisons with
logical operations performed on the pointer itself.

Change-Id: Ib67c0ebda22f93a353f8f3f1be1e1ab10b15db4a
CRs-Fixed: 2420151
2019-03-22 08:47:30 -07:00
Aniruddha Paul
1b2672426c qcacmn: Increase the NSS Tx comp ring size to 48k from 8k
The max limit of Tx comp ring is changed to 48K from
8k such that it can be dynamically changed based on
the INI.

Change-Id: I69ca62c33d538a669a3417dba749a818ca0bce07
2019-03-22 08:47:26 -07:00
Tallapragada Kalyan
f990490712 qcacmn: Fix msdu link descriptor leak in fragment handler
msdu link desctriptor leak got introduced because two
gerrits got merged at the same time.

Change-Id: I65dbbab016e2e31c0943c37d614e6613193a56fd
2019-03-21 23:04:46 -07:00
Amir Patel
468bded892 qcacmn: Add RDK statistics changes for Hawkeye
Add RDK statistics changes to collect below stats
a. Tx rate statistics
b. Tx sojourn statistics
c. Rx rate statistics

CRs-Fixed: 2416141
Change-Id: I0c8127cd387b7665a76847f4125977bbb8c5a57a
2019-03-21 23:04:43 -07:00
Dustin Brown
d48a842b4b qcacmn: Add qdf_delayed_work
Add a new deferred work type, qdf_delayed_work, which executes a
callback after a delay. This type is meant to supersede
qdf_delayed_work_t, with a more consistent API and without typedefs.

Change-Id: I76bc59dcd4222643d70c6a763e5bc4ee9f0a487c
CRs-Fixed: 2419155
2019-03-21 16:15:22 -07:00
Dustin Brown
5e919958d2 qcacmn: Add qdf_periodic_work
Add a new deferred work type, qdf_periodic_work, which executes a
callback periodically until stopped.

Change-Id: Iedf5486474fccadb35e146e6d289c27a7c1002d3
CRs-Fixed: 2410005
2019-03-21 13:02:30 -07:00
Harprit Chhabada
67817953c1 qcacmn: Remove range validation check for Boolean type
BOOLEAN is native c type so external range validation
is not needed.

Change-Id: I38f72938ffb282a42ea175a11435c629ea3d9194
CRs-Fixed: 2410988
2019-03-21 05:12:11 -07:00
Dustin Brown
02d3f5423e qcacmn: Refactor qdf platform op start/stop
The original implementation intended to back the qdf_psoc_op_start/stop
callbacks has evolved somewhat since the qdf_psoc_op interface was
added. Refactor this interface to better reflect the evolved
implementation.

Change-Id: Ia18949fc75bdc52313bc81976f79d3a76e9760ec
CRs-Fixed: 2418426
2019-03-21 05:12:06 -07:00
Rathees kumar Chinannan
a8e7ec3d1c qcacmn: Add API to delete multiple WDS entries
Added a new API to delete multiple WDS entries.

Change-Id: Ie07bf9aa34334b5b7cf28374e78c25a5cc35dd00
CRs-Fixed: 2404435
2019-03-21 05:12:00 -07:00
Akshay Kosigi
ce1e21c209 qcacmn: Add change to send listen interval value to FW
Add code to support host sending listen interval value to FW

Change-Id: Ibd0134f5045ab289065214e6485f2dd261abf4a3
CRs-Fixed: 2419185
2019-03-20 22:10:40 -07:00
Tallapragada Kalyan
c741308260 qcacmn: Increase AST table size to 4k
As fw has doubled the skid length we need to increase
the table size from 2k to 4k

Change-Id: Iaf46c9451220ce8e890cdf1909841917029ce32f
2019-03-20 22:10:36 -07:00
Santosh Anbu
5b58d0b368 qcacmn: Enable notifier chain registration API
The qca wifi driver requires to register
with the Linux notifier chain
for handling panic events.

Enable build for QAL API's
for registration with Linux panic notifier chain

Change-Id: Ibe5376613b66cb90bcb1e84dfeb28365ab19cfb7
CRs-Fixed: 2413782
2019-03-20 22:10:32 -07:00
Santosh Anbu
a1b16bf326 qcacmn: Update log level of debug print
Add change to decrease the log level of debug print from info
to debug as these prints were seen flooding the console in
multi vap scenario

Change-Id: I455d381547b58307a0c6fa9b7b9fa46283fb8485
CRs-Fixed: 2417472
2019-03-20 22:10:28 -07:00
Debasis Das
017bc12dc3 qcacmn: Enhancement of OS abstraction API's
The API's added in qal & qdf for abstracting the
OS calls are inlined and moved to the OS-specific
src directories.

Change-Id: I9c9c2cbba7702c97fbe343ceb63b330c2296084d
2019-03-20 22:10:24 -07:00
Debasis Das
238555bcd8 qcacmn: Enhancement of OS abstraction API's
The OS abstraction API's have been inlined and
moved to the header files.Hence, the respective
source files should be deleted.

Change-Id: I4335cab55b53d33e122443bb9d58dc7615fc0ba4
2019-03-20 22:10:21 -07:00
Edayilliam Jayadev
2675a77901 qcacmn: change few Spectral logs to info
Change the levels of few spectral logs to
INFO so that it won't result in flood of
prints.

CRs-Fixed: 2418342 2418856
Change-Id: Id6a8eed0d5f01f7f44f3caef326b18dc5abcd959
2019-03-20 22:10:17 -07:00
Jeff Johnson
2e42a9e61c qcacmn: wlan_cfg: Replace explicit comparison to NULL
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within wlan_cfg replace any such comparisons with
logical operations performed on the pointer itself.

Change-Id: I45c4869708d81fd484a5b05196d274cc648f8e7b
CRs-Fixed: 2418260
2019-03-20 22:10:13 -07:00
Abhinav Kumar
a211a9dada qcacmn: Add new config for BTM offload
Currently, whenever roaming is triggered after a successful roam scan
firmware sends a BTM query to current connected AP when it is 11v
capable. Driver completes roaming with candidates received as part of
BTM request from AP. STA respond to AP with BTM response after
successful initiation of roaming.

Now the requirement is driver could send "BTM query with a preferred
candidate list" after a successful roam scan for some roam scan reasons
like PER, LOW_RSSI, HIGH_RSSI, MAWC, DENSE etc. Preferred candidate list
is obtained as part of roam scan based on firmware bss scoring logic.

New ini "btm_query_bitmask" is introduced to configure the bitmask for
roam scan reasons which is sent to firmware as part of RSO start via
wmi btm config cmd. Fw sends "BTM query with preferred candidate
list" only for those roam scans which are enabled through this bitmask.

New INI: btm_query_bitmask
Min: 0
Max: 0xFFFFFFFF
Default: 0x8
Bitmask : 0x8 (LOW_RSSI) refer enum WMI_ROAM_TRIGGER_REASON_ID.

Add a new parameter "btm_query_bitmask" into wmi btm config
command in order to pass a value of btm_query_bitmask to fw while
BTM offload

Change-Id: I1b0a973bc5b2b50773aa82c7f8cc1dd080d66d86
CRs-Fixed: 2408112
2019-03-20 10:10:32 -07:00
Jeff Johnson
ab5b78df17 qcacmn: wmi: Replace explicit comparison to NULL
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within wmi replace any such comparisons with logical
operations performed on the pointer itself.

Change-Id: Ida6b1b32330d97392bd879f84929782a64f4fc85
CRs-Fixed: 2418250
2019-03-20 10:10:28 -07:00
Lin Bai
fb19a22340 qcacmn: Fix compiler issue with DISABLE_MON_CONFIG
Compiler threw error 'defined but not used [-Werror=unused-function]'
when macro DISABLE_MON_CONFIG defined.

Wrap those functions by DISABLE_MON_CONFIG, which used only
within DISABLE_MON_CONFIG.

Change-Id: Idd92b9c481d580a6ca3df39963fa98e11d9d0753
CRs-Fixed: 2418584
2019-03-19 21:17:11 -07:00
Jingxiang Ge
434105d7a5 qcacmn: Get wlan op mode from vdev for pktlog
To avoid using qcacld code in cmn, when getting
wlan op mode, using op mode info from vdev rather
adapter.

Change-Id: Ida5a7aa6c793e955122a4bbf3bf0fa1fa5cbf7a3
CRs-Fixed: 2412317
2019-03-19 21:17:07 -07:00
Akshay Kosigi
c5d48d06c6 qcacmn: Add code to send correct AMDPU command to FW
Change to send correct WMI command for AMPDU configurations.

Change-Id: Ic139bd088996389227e4493e053436b0d4f38586
CRs-Fixed: 2415352
2019-03-19 02:24:52 -07:00
Sandeep Puligilla
949faf5f4d qcacmn: Add mbssid information to scan entry
Add MBSSID information to scan entry.

Change-Id: Icf1a61f37db4991c5ad8f8e5dc2d5f55252c98aa
CRs-Fixed: 2399996
2019-03-18 17:07:10 -07:00
Jiani Liu
19f4cb0b6e qcacmn: Set Coex priorities among WLAN/BT/ZB
Customers need to config the coex priority on some scenarios.
qca_vendor_attr_coex_config_three_way will specifies the
vendor coex config attributes. Host will transfer these
attributs by WMI command.

Change-Id: I6aefcfc3ab13cb982e21ca68701b50731f00ca4d
CRs-Fixed: 2410486
2019-03-18 13:07:25 -07:00
Akshay Kosigi
658d712ace qcacmn: Add code to send rate mask info to FW
Add support to send rate mask information to FW using utils API

Change-Id: Ibb62e4f92b0c3e656cc11ae941c58723a43fbf12
2019-03-18 13:07:21 -07:00
Om Prakash Tripathi
b3a341bb6f qcacmn: Fix possible null pointer dereference
Fix possible null pointer dereference glagged by static analysis

Change-Id: I100619888318182c19300bcbbcd95e9c68efe8a5
CRs-Fixed: 2417910
2019-03-18 11:16:52 -07:00
Sourav Mohapatra
d768fd9e1e qcacmn: Extract and populate peer_extd2 stats from fw
Presently, the driver doesnot extract the peer extended2 stats
(rx_bytes, rx_count, fcs_err) that are received from firmware.

Provide the support to extract and populate the peer extended stats2 at
the driver level.

Change-Id: If1f1bb1ef2d1202581744dd509d0da1da718d8c1
CRs-Fixed: 2397638
2019-03-18 09:53:02 -07:00
Sourav Mohapatra
9a6ee7d0ce qcacmn: Add WMI support for peer_extd2 stats
Add the necessary support for peer_extd2 stats in the WMI layer. The
stats contain rx_bytes, rx_err and rx_mpdus

Change-Id: I9f787e28a8e128471489c8f47ac03fef77dae930
CRs-Fixed: 2395636
2019-03-18 09:52:59 -07:00
Vivek
90f688d589 qcacmn: Fix error in check against max vdev for a pdev
The current implementation allows one extra vdev
to be created than the max vdevs allowed for a pdev.

Correct the check to allow only max vdevs to be created
for a pdev.

Change-Id: I589ae204abe87f5a727489494a34807a45d501fa
CRs-Fixed: 2415783
2019-03-17 10:43:29 -07:00
Debasis Das
daec45f472 qcacmn: Enhancement of OS abstraction framework
The OS abstraction API's have been inlined.Necessary
changes in the build scripts are needed for using
the new framework.

Change-Id: I2b78a994be6edfea2253037f8de99ba6b6a3c80d
2019-03-17 08:46:02 -07:00
Subhranil Choudhury
9bcfecf548 qcacmn: Add vdev_id argument to peer-delete
Add vdev-id as argument to peer-delete callback
function.

Change-Id: I8a43ed53c5f7ad64f1f4cb7aeb925e285752b7b5
2019-03-16 14:28:31 -07:00
Shashikala Prabhu
550e69c726 qcacmn: Restrict the tx descriptors for low mem config
For low mem config, use user configured max tx descriptors to limit the
allocation of software tx descriptors.

Use dp_txrx_pflow_update_pdev_params function to print stats and to update
pdev param.

Change-Id: I8fa6f0bb8841de68e8dc205ffcb0fde264f1b0e0
CRs-Fixed: 2414452
2019-03-15 23:15:06 -07:00
Varsha Mishra
3e9d647162 qcacmn: Fixing display of Vow Stats
Adding more fields to vow stats display function.

Change-Id: Ic5227e994e55c0ebc99351051d5b409ba0c3f627
2019-03-15 23:15:02 -07:00
Arif Hussain
1d9aae09c6 qcacmn: Define new test config attribute for TWT Request support
Define new test config attribute to configure twt request.

Change-Id: Ie5f97f051923b31af89a8cc3af2d45b16626b2cf
CRs-Fixed: 2416616
2019-03-15 19:54:52 -07:00
Srinivas Girigowda
1d5ca92967 qcacmn: Move CTL value enums to reg_services_public_struct.h
The objective is to remove qcacld-3.0 redundant macros and
replace them with the converged enums exposed in
reg_services_public_struct.h

Change-Id: I3f106f7f9f8a533b1964d3ea256a2fef5e4bbd4f
CRs-Fixed: 2416532
2019-03-15 18:04:05 -07:00
Surya Prakash Raajen
80638517c2 qcacmn: Redefine pdev and vdev param to remove CONFIG_MCL
Convert pdev and vdev param conversion array to pointers
and allocate them only if conversion is required.Use run-time
NULL check of pdev and vdev param pointers for conversion
and remove CONFIG_MCL compiler flag.

CRs-Fixed: 2393422
Change-Id: Ica1c81f5f3c3a4b7e31dcb70c63471898c36933d
2019-03-15 18:04:02 -07:00
Harprit Chhabada
5d32743e83 qcacmn: Implement API to support GETBAND functionality
Add GETBAND support by implementing API, ucfg_reg_get_band

Change-Id: I91fabb367c53aed5ae13a0bb4272965f925d44bd
CRs-Fixed: 2412777
2019-03-15 15:17:13 -07:00
Venkateswara Swamy Bandaru
cf1a001281 qcacmn: Add cdp support for DCS reenable timer
Add cdp support to configure DCS re-enable timer.

Change-Id: I35fdf2fd582468e6f09cbad35c927115b4177694
CRs-Fixed: 2415368
2019-03-15 09:15:13 -07:00
stonez
a558be177d qcacmn: add vendor subcommand QCA_NL80211_VENDOR_SUBCMD_MPTA_HELPER_CONFIG
This subcommand is used to update zigbee state and specified wlan durations
to enhance success ratio of zigbee joining network.
NL attributes qca_mpta_helper_vendor_attr is used to deliver the parameters
to host driver.

Change-Id: I7ec82e11fa3aaea88f20e1c04c464153549bf44c
CRs-Fixed: 2413320
2019-03-15 09:15:09 -07:00
Sandeep Puligilla
fa3c826f3a qcacmn: Initialize connected scan cfg item
Initialize the connected scan cfg item during
scan module init.

Change-Id: I93e379c4abded42cac58b0140c9a2698dd657c24
CRs-Fixed: 2415534
2019-03-15 01:18:46 -07:00
Akshay Kosigi
181b2f52e6 qcacmn: Clean up HIF module to remove CONFIG_WIN macros
Replace CONFIG_WIN macro definitions with feature based macros
for HIF module.

Change-Id: I31a3ef0f70d19f838e2dff0db345e765a0aeb84e
CRs-Fixed: 2407222
2019-03-14 19:27:51 -07:00
Akshay Kosigi
3e7e01e645 qcacmn: Add change to send beacon rate to FW
Add support for sending beacon tx rate to FW when we are creating an
interface

Change-Id: Id48a545f154af4139541ab347eec4ce5c91c278d
CRs-Fixed: 2413314
2019-03-14 19:27:47 -07:00
Shaakir Mohamed
adfc94c17c qcacmn: Add support of Agile DFS in umac dispatcher layer
Add DFS Rx and Tx operations to support Agile DFS feature.

Change-Id: Ia91c9167d5fb4d01357e57daafc3f5a09e9c827d
CRs-Fixed: 2385536
2019-03-14 14:28:29 -07:00