Commit Graph

346 Commits

Author SHA1 Message Date
nobelj
f74583b2be qcacmn: Add support for chan_nf noise floor
Add function for extract_nfcal_power_ev_param and
register wmi_pdev_nfcal_power_all_channels_event_id event
to support noise floor in HK.

Change-Id: I6eef823b507be94c65df026664244eec7fc07e24
CRs-Fixed: 2157972
2018-03-02 16:34:27 -08:00
Varun Reddy Yeturu
e6f8be37e2 qcacmn: Fix NULL pointer dereference issues in scan and power debug
get_pdev_wmi_handle() can return a NULL pointer in some cases.
Perform a NULL check before using the returned pointer.

target_psoc_get_service_ext_param() can return NULL pointer in
some cases. Perform a NULL check before using the pointer.

The power debug command can  take a maximum of WMI_MAX_POWER_DBG_ARGS
arguments. Check for the limit before indexing the array to avoid
illegal access of memory or overflow the array.

Change-Id: I264475e9f86c7a7e78b17b7a1fa025718a7c5af6
CRs-Fixed: 2196063
2018-03-02 16:30:44 -08:00
Himanshu Agarwal
f06d9e3c0f qcacmn: Unmap tx frame in error scenario in send_mgmt_cmd_tlv()
Unmap tx frame in error scenario in send_mgmt_cmd_tlv().

Change-Id: Ie16ca466fd3c1e6af5d65fec51b7dac2ef74f003
CRs-Fixed: 2188444
2018-03-01 07:16:52 -08:00
wadesong
b8bf4defb4 qcacmn: Suppress verbose debug printing
The debug print in function send_beacon_tmpl_send_cmd_tlv
is too verbose and doesn't exhibit anything meaningful.

Remove it to make sure meaningful logs will not get
overwritten during SnS tests.

Change-Id: I4564ac83715f0003ad53aa73f0fb859cc5cbec1c
CRs-Fixed: 2197209
2018-03-01 01:35:36 -08:00
gaurank kathpalia
cdfb4450d5 qcacmn: Add qdf time api to get time of the day in millisec
qcacld-2.0 to qcacmn propagation

Adds qdf time api to get time of the day in millisec

Also send host timestamp to firmware, so that firmware can print the
logs timestamp in sync with host via the wmi interface,with
api wmi_send_time_stamp_sync_cmd_tlv()

Change-Id: Id6acfc5227fdca2fbf8d266998fdfc4046adc5f4
CRs-Fixed: 2193978
2018-02-28 23:35:53 -08:00
Padma, Santhosh Kumar
5e751d4906 qcacmn: Add support for GMAC offload
Add support for GMAC offload capability wmi_service_gmac_offload_support

Change-Id: I4a2e5c52aae630f82294dcaea6cc7c23886dcd8a
CRs-Fixed: 2185825
2018-02-28 01:30:00 -08:00
Rhythm Patwa
8cdcf67521 qcacmn: Add command to not send ADDBA REQs
Add command support to not send ADDBA REQs.
The corresponding WMI VDEV param ID to set the
VDEV param has been added.

Change-Id: Id53f8101a61ccc0aba2a9a6735d1c6942ba3592d
CRs-fixed: 2188560
2018-02-27 16:04:43 -08:00
gaurank kathpalia
6a51f2b914 qcacmn: Send per chain rssi to upper layer
Add support to send the per chain rssi to upper layer
for each beacon and probe responses.

Change-Id: Ife6cb9e8e65591baf485c54a985f84d842400321
CRs-Fixed: 2177638
2018-02-27 01:57:52 -08:00
Shaakir Mohamed
75208c31ec qcacmn: Add TLV support for WMI command to get tpc config
Adds tlv support to get TPC config WMI command.

Change-Id: I4f465ae03c00df8f741288361c4579d911b68906
CRs-Fixed: 2187552
2018-02-26 15:57:56 -08:00
Shiva Krishna Pittala
42a466129b qcacmn: Provide a configuration to enable/disable CCK Tx
Firmware will use this configuration to enable/disable the
CCK transmission. By default, the CCK Tx is enabled.

CRs-Fixed: 2191524
Change-Id: I165c3ea10ea3734fc81e7d25fe8ad676afd1b2c1
2018-02-21 17:12:42 -08:00
Shaakir Mohamed
9fbf00ac00 qcacmn: Fix for dfs channel flag set if dfs_set is true
Fix for dfs channel flag set if dfs_set is true, during vdev start.

Change-Id: I33c4a72d6f23cb687069f6a5b746b149626056dc
CRs-Fixed: 2189396
2018-02-16 13:20:21 -08:00
Arif Hussain
d9978f832e qcacmn: Add extended service bit for obss offloads
Added extender service support for obss and obss color
Collision offload support.

Change-Id: Ifd249b3bbf4510297f15beb33df13d6c4f9d7d0e
CRs-Fixed: 2185238
2018-02-10 09:12:49 -08:00
Arif Hussain
ec5cd3c767 qcacmn: Add bss color collision detection support
Add support for bss color collision detection.

Change-Id: Ia3d64917518c2aa5fc4a10bb7f3f8db2d47bc5d7
CRs-Fixed: 2185238
2018-02-10 09:12:46 -08:00
Shiva Krishna Pittala
90ccf6c97b qcacmn: Use module level logging in Spectral
Current Spectral module uses qdf_print. To improve the control over
logging, use module level logging

CRs-Fixed: 2165341
Change-Id: I205991347453c4dcc424ba1958e309b7c5fb71a0
2018-02-09 09:20:56 -08:00
Arunk Khandavalli
22a7d54c7c qcacmn: use converged wmi events
As part of converged architecture wmi_service_enable is converged
and should be used instead of WMI_IS_SERVICE_AVAILABLE. The events
also need to be defined as part of array for mapping to converged
event id's.

Change-Id: I9ab342a5cf6e665a3eb90eeef6d10bf3c145049d
CRs-Fixed: 2186338
2018-02-09 06:24:36 -08:00
Pratik Gandhi
67da1bb4af qcacmn: WMI registration change to support to WIN modularization
Change WMI initialization sequence to support WMI modularization.
TLV and Non-TLV modules calls WMI module registration based on target type.
WMI attach will call respective attach routines based on registration.

Change-Id: Id56446f491d129758537913d2d5d6633f8dec918
CRs-Fixed: 2179854
2018-02-07 12:12:05 -08:00
Himanshu Agarwal
157e47813d qcacmn: Remove dependency on WMA layer for green AP component
Remove dependency on WMA layer for green AP component by registering
green AP events through target_if layer.

Change-Id: I8fe9079c6ba6b23cd5f1d98a7d1b333fde31f19b
CRs-Fixed: 2178143
2018-02-06 17:33:03 -08:00
Shaakir Mohamed
66ebecaee1 qcacmn: Increase max value of unit test arguments to 100
Increase the maximum value of unit test arguments to 100 to include
support DL OFDMA RU allocations for testing / debug.

Change-Id: I33ed8d53931e33cc00069653ea38b543339203c0
CRs-Fixed: 2175616
2018-02-05 23:42:54 -08:00
Vignesh Viswanathan
376834cdfe qcacmn: Add sanity check for WMA NDP extract TLV functions
In extract_ndp_confirm_tlv & extract_ndp_ind_tlv, ndp_cfg len &
num_ndp_app_info is from fw. If they are greater than the actual
length of buffer sent in FW, OOB access and info leak would occur.

Add sanity checks for ndp_cfg_len and num_npd_app_info with the
actual length of the buffer from TLV header in functions
extract_ndp_confirm_tlv & extract_ndp_ind_tlv to prevent OOB access.

Change-Id: I9ecf55a3606036d3e1f0916c948c4360475965fa
CRs-Fixed: 2176968
2018-02-03 07:42:18 -08:00
Zhang Qian
537fca6f66 qcacmn: Add UT framework for OCB module
Add a faked WMI layer for OCB unit test on platform does not
support OCB feature.

CRs-Fixed: 2177563
Change-Id: I35b272faa21f3b225eb036c06a15b06ab4b389ae
2018-01-30 13:40:39 -08:00
bings
fd46164587 qcacmn: Extend radar event structure for ETSI chirp radar detection
The pulse_delta_peak of chirp radar is not zero, which is one more radar
detection rule for ETSI chirp. Driver need delta peak related information
from FW for ETSI chirp radar detection.

Two more fields pulse_delta_peak and pulse_delta_diff are added in
wmi_dfs_radar_event_fixed_param.

Change-Id: Ief8dbea1c1336f45a24195853d5e1356bf3cad27
CRs-Fixed: 2179933
2018-01-30 09:25:49 -08:00
Zhang Qian
11c0de3c9f qcacmn: Add wmi APIs to extract OCB events data
Add APIs to extract data from wmi event buffer for tlv interface.

CRs-Fixed: 2177557
Change-Id: I538c0a9ed4a1d8a4bd8845ab337b16370737ce44
2018-01-29 23:40:45 -08:00
bings
1ea1253df7 qcacmn: Restore WMI_DFS_RADAR_EVENTID for Rome FW
Currently WMI handler for WMI_PHYERR_EVENTID is used to handle DFS and
spectral scan phy errors; but Rome FW still uses WMI_PHYERR_EVENTID
and WMI_DFS_RADAR_EVENTID and does not have spectral scan phy errors.

Restore WMI_PHYERR_EVENTID and WMI_DFS_RADAR_EVENTID as Rome FW
requirement.

Change-Id: I23ca4ff6c9be0ba6a0f21f0e0ef9161b1942f629
CRs-Fixed: 2160431
2018-01-27 00:10:28 -08:00
Venkateswara Swamy Bandaru
094bc7a163 qcacmn: Add WMI Support for 11ax FW Scheduler API and Stats Per Peer
Add WMI support for enabling/disabling the FW scheduler APIs and stats
per peer for MU and OFDMA

Change-Id: I185ca6ff5b564fc9b83007fd4e37da82b5c9976e
CRs-Fixed: 2169179
2018-01-26 23:26:17 -08:00
nobelj
f1b1c42cb2 qcacmn: Add support for sending bigger chunk CTL table bin file
removing Length check temporarily
as existing length check is not applicable for HK.
In HK, CTL bin file size for 5G is 26556 bytes and
for 2G is 5852 bytes. 1.7K is the maximum payload size supported by TLV.
To support, we add header info: seq, endflag, total_len
before each chunks. Total bin files are transferred
as multiple chunks with header info on the top.

Change-Id: I7aedf85d6ee66a99cb4b6dca464dbe02caec371b
2018-01-26 19:25:40 -08:00
Venkateswara Swamy Bandaru
65745ba3f2 qcacmn: Add WMI Support for Setting SU, MU TXBF Sounding Interval
Add WMI support to set SU and MU TX beamforming sounding interval on
host driver in addition to enabling/disabling the above ability.

Change-Id: Ic3ea109e47c0df13db2c919bbcdf5fc7d6164698
CRs-Fixed: 2169176
2018-01-25 15:25:43 -08:00
Kai Chen
4710d46bce qcacmn: Add min, max, reg max, antenna gain and max tx power
Add min, max, reg max, antenna gain and max tx power to channel
field of WMI command for scan, vdev start. Max tx power is set
to reg max power. It is set to TPC on IE for MCL STA case.

Change-Id: I416b94f68a9c5db925a9ef8c731350ba27caa7a1
2018-01-25 15:25:41 -08:00
Vignesh Viswanathan
7f05777520 qcacmn: Add support for 11k offload related WMI commands
Add WMI TLV functions for 11k offload command and neighbor
report request invoke command.

Change-Id: If37cace93d4f719eed6abfabcd878879d804161e
CRs-Fixed: 2162030
2018-01-25 09:25:38 -08:00
Sourav Mohapatra
a7b454df56 qcacmn: Converge on wmi service/ext service is enable
Converge on wmi service/ext service is enable

Change-Id: Ib246befa72cce927bee157394cd22c7d1562d341
CRs-Fixed: 2152751
2018-01-24 13:19:48 -08:00
wadesong
94c7ce6864 qcacmn: Fix coding errors detected by gcc 5+
With gcc 5+ utilized for driver building, more coding errors are
detected, some of which are valid issues.

Fix all those errors in one shot.

Change-Id: I263c70d4bff9ec0c3076103001cd7f2ccc8e0d1a
CRs-Fixed: 2176076
2018-01-24 04:26:08 -08:00
jiad
36c94d2d50 qcacmn: Fix WMI mgmt cmd tx comp record
wmi_mgmt_cmd_record is used to add WMI mgmt cmd record. But mgmt
cmd tx comp record is missing due to mismatch of is_management_record.
Fix is to change is_management_record WMI cmd id to match those who
call wmi_mgmt_cmd_record. In wmi_unified_cmd_send, mgmt cmd record
add is no longer needed since already added in wmi_mgmt_cmd_record.

Change-Id: I41daf428ac0848dabaf4d87e3ecb7dca5e1c2774
CRs-Fixed: 2168104
2018-01-24 01:43:33 -08:00
Jeff Johnson
4783f9092f qcacmn: Add support to retrieve SAR power limits
Recently change "qcacmn: Add SAR power limit configuration"
(Change-Id: I0a214a2af780e9dd8c381c4e9eaa7d8cab6ef853) added the
ability to dynamically configure Specific Absorption Rate (SAR) power
limits. Now add the ability to retrieve the current active power
limits.

Change-Id: I7a6071dee71300daa3a217780ff3523604a11795
CRs-Fixed: 2161451
2018-01-23 12:30:25 -08:00
Gyanranjan Hazarika
cd535f9289 qcacmn: Add support to send WMI_ADDBA_CLEAR_RESP_CMDID in HK
Support to send WMI_ADDBA_CLEAR_RESP_CMDID in tlv format is
lacking in HK. Add the necessary support.

Change-Id: Ic5bda1cd69531ce7eb6f61751b12626b788c02a1
CRs-fixed: 2174262
2018-01-20 01:45:07 -08:00
Jiachao Wu
31bd293ceb qcacmn: Add new config for BTM offload
Add new parameters into wmi btm config cmd for solicited BTM offload.

Change-Id: I24cc680bbfde3d44a57b1e1ccf644c2bed515a2c
CRs-Fixed: 2168259
2018-01-19 19:20:31 -08:00
Subrat Mishra
d7c7a5630e qcacmn: Support for SWFDA Event & FD Frame tx
Add new WMI EVENT, SW FILS Discovery Alert Event, to get
firmware trigger to transmit FILS Discovery Frames.
Add WMI command to send FD frame buffer to firwmare.
Add WMI command to set FD period interval in mili seconds.

Change-Id: I8cb6279ec4431b9236bd32c548228a0dc6598664
CRs-Fixed: 2118098
2018-01-19 17:26:23 -08:00
Kris Muthusamy
c2e5471eb4 qcacmn: Populate vdev id in WMI WDS commands
Populated the missing vdev id in all WDS based WMI commands

Change-Id: I1ab623d9efd77e83786f581657e9ff42b1db2346
2018-01-19 15:01:07 -08:00
Arif Hussain
33d9850223 qcacmn: Add obss detection info extract handler
Add hander to extract obss detection info received
from firmware.

Change-Id: I5fde304915a97d37d6cbe58e7a315e91fbac61b6
CRs-Fixed: 2170184
2018-01-17 15:56:30 -08:00
Arif Hussain
c5bfe07b50 qcacmn: Add obss detection offload support
Add support for obss detection offload support.
Sending WMI_SAP_OBSS_DETECTION_CFG_CMDID command
to firmware.

Change-Id: I56eba46e37330637c81d1a2cfa6542dd4ead8183
CRs-Fixed: 2170184
2018-01-17 15:56:28 -08:00
Gyanranjan Hazarika
3f3b471864 qcacmn: Add support for sendaddba/senddelba cmd in HK
HK needs support for sendaddba/senddelba cmds. These commands
need to be sent to the FW in tlv format. Make the necessary
changes.

Change-Id: Ia069a05dbbd710393ecab31c5bd2c1bcf28d0e1e
CRs-fixed: 2171669
2018-01-17 01:41:05 -08:00
yeshwanth sriram guntuka
07a15b8f5a qcacmn: Add config support for BTM offload
Add ini to configure BTM offload configuration
which is sent to firmware as part of RSO start
via wmi btm config cmd.

Change-Id: I69c792705b208014af8f1878f7645d957dde6c06
CRs-Fixed: 2105112
2018-01-15 17:46:19 -08:00
Himanshu Agarwal
66d4a169a9 qcacmn: Green AP UMAC componentization
Add APIs, structures for Green AP component.

Change-Id: I4a39470104c89c20eec5440b7ae251a764151fd5
CRs-Fixed: 2166428
2018-01-12 12:20:17 -08:00
Rakesh Pillai
0511046ae5 qcacmn: Unify the wmi command and event record offset
The wmi data buffer offset passed to record command and event
buffer uses different offset and type for command and event.

Change the recorded wmi data buffer type to uin8_t pointer
for both, wmi command and wmi event record.

CRs-Fixed: 2164395
Change-Id: Ie759248a6a32632dd93f751a856a0588d9a11c25
2018-01-11 03:48:45 -08:00
Shaakir Mohamed
3a72d0a4ad qcacmn: Change DFS related prints to WMI log info level
Change DFS related prints in Host side from debug level to info level.

Change-Id: Id0ec4b5ce14df6b416ae4e783e2876ac3d881dbf
CRs-fixed: 2152590
2018-01-10 13:40:21 -08:00
Nachiket Kukade
03e7ab27f7 qcacmn: Modify DISA legacy code to point to the DISA CLD component
DISA feature has been moved to a CLD component under the converged
driver model. Point the wmi API's and structures to the newly defined
files. Define new API's to extract parameters from event buffer.

Change-Id: Ia47d3682217e7ce9c021bb2db8319483c881b3b2
CRs-Fixed: 2161963
2018-01-09 13:40:08 -08:00
Nachiket Kukade
ab4cbc296c qcacmn: Add Objmgr related definitions to support DISA component
Add Objmgr ID and related definitions to support the newly
defined DISA component in CLD.

Change-Id: Ibbe5db39c01dae94cad5af5f4dccd2611c5b06d4
CRs-Fixed: 2159599
2018-01-09 13:40:06 -08:00
Naveen Rawat
4f1e2ac351 qcacmn: Avoid WMI TLV structures in NAN target_if
Refactor NAN target_if to make it wmi-type agnostic. Specifically
do not access wmi structures in NAN target_if. All the access to
wmi structures should happen in tlv and non-tlv specific wmi files.

Change-Id: I944b678fc501723d7cd26c9b21c4cc6ddb7fda4e
CRs-Fixed: 2159876
2018-01-09 06:12:48 -08:00
Kabilan Kannan
3e2b2212da qcacmn: Fix the invalid memory access in WMI cmd
Invalid memory accessed in WMI_REQUEST_STATS_CMD, and it
causes kernel panic in the system.
Fix the invalid memory access in WMI request
stats function.

Change-Id: Id838569fd5667b118aecc03f7af5e5f9f146b2a6
CRs-Fixed: 2162279
2018-01-03 14:17:02 -08:00
Hanumanth Reddy Pothula
c6ada4440c qcacmn: Remove FW memory dump feature
qcacld-2.0 to qcacmn propagation

FW memory dump feature is no longer used. Hence remove FW memory
dump feature code changes.

Change-Id: Ida655f83630c369df746e7c0c9d61a8fee2932a2
CRs-Fixed: 2140262
2017-12-29 01:42:52 -08:00
Venkateswara Swamy Bandaru
9983ac5b2d qcacmn: Add Support for Setting MSDUQ Depth Parameters
Add host support to enable setting MSDUQ depth parameters per
TID per peer.

Parameters include MAC Address, TID number, update mask and
Q depth threshold value.

CRs-Fixed: 2162460
Change-Id: Ie947fd599278a04e13d6aa6c89f840187dbf17fa
2017-12-27 23:25:04 -08:00
Sathish Kumar
f396c728ca qcacmn: Add WMI interface support for Direct Buffer Rx module
Direct Buffer Receive provides the driver with a mechanism by which target
can transfer information directly into host memory via DMA.

Add support for the following service/events/commands -
1. WMI_SERVICE_SUPPORT_DMA
2. WMI_DMA_CAPABILITIES as part of WMI_SERVICE_READY_EXT_EVENTID
3. WMI_PDEV_DMA_RING_CFG_REQ_CMDID
4. WMI_PDEV_DMA_RING_BUF_RELEASE_EVENTID
5. WMI_DMA_BUF_RELEASE_ENTRY

Change-Id: I3949026b4542565c49bb538b9545ea607690c793
CRs-Fixed: 2158304
2017-12-21 15:26:08 -08:00