Commit Graph

1016 Commits

Author SHA1 Message Date
Kapil Gupta
cb984f5b33 qcacmn: Reduce gscan priority
qcacld-2.0 to qcacmn propagation

gscan priority should not cross normal scan.

Add changes to reduce gscan priority.

CRs-Fixed: 1066785
Change-Id: I7459367cfed5d932f07f8c846265c448b9a84555
2016-10-10 03:10:33 -07:00
Nitesh Shah
5ae75ca0c5 qcacmn: Move certain logs to appropriate log levels
Propagation from qcacld-2.0 to qcacld-3.0

Some of the logs are printing quite often and spamming the kernel logs.
Hence move them to appropriate log levels and remove the useless debug
messages.

Change-Id: If38d7a6a3cf13a5879f6a628d3d7eb4f5156a95b
CRs-Fixed: 1001441
2016-10-10 01:27:54 -07:00
Houston Hoffman
fe0694f65b qcacmn: Replace A_OK with QDF_STATUS_SUCCESS in wmi_unified_non_tlv.c
A_OK status is deprecated.  Use QDF_STATUS_SUCCESS.  Needed since
wmi_unified_cmd_send returns QDF_STATUS not A_STATUS.
see change: Ib9b0a60976dedcf8fcd4184083a9948892791621

Change-Id: I91209002c0a84a8353541c84cdc2e49ffdcc6654
CRs-Fixed: 1072077
2016-10-07 18:12:17 -07:00
Houston Hoffman
e007aed7cd qcacmn: Initialize ret in send_pdev_utf_cmd_tlv
If param->len was 0, ret would be returned without being initialized.
param->len of 0 is unexpected, so return an error.

Change-Id: Ib9b0a60976dedcf8fcd4184083a9948892791621
CRs-Fixed: 1072077
2016-10-07 18:12:09 -07:00
Sathish Kumar
39a5657e3f qcacmn: Fix issue in green AP feature
Green AP feature for WIN allows the AP to go into power save mode
and leads to only a single chain being active.

In the current code, it is seen that the WMI API for enabling Green
AP feature is under "FEATURE_GREEN_AP" flag that is not defined for
WIN. This leads to trigger of dummy API that does no operation.

Replace "FEATURE_GREEN_AP" with proper flag "ATH_SUPPORT_GREEN_AP"
defined on WIN to enable Green AP feature.

Change-Id: I344e74c3753f1ef3b6d5d5a2bb1086c84f2ab84c
CRs-Fixed: 1074036
2016-10-07 09:17:13 -07:00
Padma, Santhosh Kumar
94e34bb262 qcacmn: Add changes for DISA certification
Add TLV changes to pass DISA parameters received from
WMA and pass them to firmware for firmware
to encrypt data and send back to driver.

Change-Id: Ic6928a93f799c47518fbbad96564062f595287dd
CRs-Fixed: 1072545
2016-10-03 12:48:34 +05:30
Sathish Kumar
90cb4608b0 qcacmn: Fix crash observed on issuing iwpriv wifiX dl_loglevel <Val> command
On issuing iwpriv wifiX dl_loglevel <Val> command, there is a NULL pointer
dereference crash observed. It is root caused due to improper reference
to module_id_bitmap field, that needs to be corrected.

Change-Id: I59ff4455c74452bb00caff125f84213a2e9d7742
CRs-Fixed: 1066323
2016-09-30 05:47:59 -07:00
Sathish Kumar
5149c237b0 qcacmn: Fix issues in mcast_group_update and fips WMI cmd
Fix following issues in wmi_unified_non_tlv.c file
->Move allocation of WMI buffer in FIPS WMI cmd
->Change dummymask variable to static in mcast_group_update cmd

Change-Id: I0a0d0e68820905ad543175abed1a812639b3dbf1
CRs-Fixed: 1069863
2016-09-30 03:49:30 -07:00
Sathish Kumar
46af87ba9c qcacmn: Fix key installation issue for BE offload radios
For big endian based offload radios, key installed using
WMI_VDEV_INSTALL_KEY_CMDID requires to be code swapped as the copy engine
for big endian platform does byte swap operation on the received key before
sending it down to FW.

It is observed that the big endian conversion is carried out in WIN Wi-Fi driver
for big endian platform specific radios in the driver, that takes care of
converting the key data to the byte swapped form. However, it is observed
that an additional copy is carried out in the WMI layer that is overwriting
the converted key with old key, in the non-swapped form.

We move the byte swapping operation to the converged component and do a single
memory copy using the macro that carries out its operation based on big or
little endian platform.

Change-Id: Ic6b7cc667d0f505d1d1daeacec72f54d41554038
CRs-Fixed: 1067206
2016-09-30 02:47:34 -07:00
Sathish Kumar
fd25fb92e1 qcacmn: Populate composite RSSI info received as part of phy error event
Extraction API for phy error event handling does not populate composite
RSSI info for DFS radar event, but was populating the value in case of
spectral event. Composite RSSI info is required for both DFS and Spectral
operations. As a result of this change, composite RSSI info is updated
on receiving DFS event as well.

Change-Id: Ia77779251ccf230f7ca4242ee0851790305d2fbc
CRs-Fixed: 1066136
2016-09-30 01:09:53 -07:00
Deepak Dhamdhere
cece18d0b2 qcacmn: Enable EXTSCAN cycle start and completed events
qcacld-2.0 to qcacld-3.0 propagation

Enable firmware to send WMI_EXTSCAN_CYCLE_STARTED_EVENT and
WMI_EXTSCAN_CYCLE_COMPLETED_EVENT instead of
WMI_EXTSCAN_BUCKET_COMPLETED_EVENT as per Android N requirements.
This change is required to complete the propagation of
earlier change I399204261fa3d8515146c590630a3bb663ee801c

CRs-Fixed: 1062739
Change-Id: I5c801912828844aa3d8e2aa4f022cb184aa771c4
2016-09-29 17:51:12 -07:00
Sathish Kumar
55047e66ef qcacmn: Add non-tlv registrations for atf_peer, atf_group and lcr WMI cmd
Non-TLV registrations for atf_peer, atf_group and lcr WMI command were
missed out during the WMI convergence implementation. This change adds
the missed out registrations.

Change-Id: I384c27709e088c06ee73f17b7dc1a52bb5c63370
CRs-Fixed: 1069863
2016-09-29 13:50:52 -07:00
Sandeep Puligilla
62ae0a9e2f qcacmn: Correct the peer assoc command TLV length
PEER assoc command failed in the tlv validation check.
Tlv length sent in the TLV header is different from
the length used to fill the tlv buffer which caused
failure at tlv validation.

Modified code to use the aligned length while
filling the tlv buffer.

Change-Id: I9ad2009315dd3cf37308ef44360d566035344950
CRs-Fixed: 1069008
2016-09-26 16:07:30 -07:00
Mukul Sharma
fbf6ce182c qcacmn: Cache ARP/NS offload request at wma layer
qcacld-2.0 to qcacmn propagation

As Current WMI interface need both the ARP/NS configuration
in single command. To support active offload host need to
cache the ARP/NS at wma layer so host can fill the other
request and configure down to firmware complete request
(ARP+NS).

Change-Id: Ie0a57d216379817ff0ae48f4f582c9108e8ecca1
CRs-Fixed: 1067683
2016-09-24 13:03:59 -07:00
Kiran Venkatappa
068d22da62 qcacmn: Add WMI fixes made for TLV bringup on WIN
These fixes are made during qca8074 VP control path bringup.
Add fixes in tlv.c and enable TLV helper routines for WIN.
Fixed some inconsistencies in wmi API params by adding compiler flags.
This needs to be cleaned up so that API and params have common interface
between WIN and MCL.

Change-Id: I0821daa58df86ad0b394a7846a982a9e3577cd14
CRs-Fixed: 1063252
2016-09-20 07:59:33 -07:00
Pratik Gandhi
424c62e877 qcacmn: Address compilation issues for WIN new fw headers
Address compilation issues for WIN with new Lithium Firmware headers.
Also removed dependency on htt.h from header files, which may need to
add explicit dependency on htt.h in .c files.

Change-Id: Ia5027963837e645bc3f81a3db98c2ea06789aea8
CRs-Fixed: 1061096
2016-09-19 01:19:28 -07:00
Himanshu Agarwal
cf0b41853f qcacmn: Add support to get per chain rssi stats
Propagation from qcacld-2.0 to qcacmn.

Add support to get per chain rssi from fw through the
already existing WMI command WMI_REQUEST_STATS_CMDID
and then store it in the station_info structure defined
by cfg80211.

Change-Id: Id50c96dd322b5ca4db34cf2df901730d8b103251
CRs-Fixed: 1005367
2016-09-16 05:50:15 -07:00
Himanshu Agarwal
87f80ed6d0 qcacmn: CL 1641391 – update fw common interface files
Propagation from qcacld-2.0 to qcacmn.

WMI modification for DISA feature

Change-Id: I57441642986ecfb6d3ee42d602810f6b22f83c46
CRs-Fixed: 865207
2016-09-14 20:43:24 +05:30
Manjeet Singh
99f7d6ef03 qcacmn: CL 1614559 - update fw common interface files
qcacld-2.0 to qcacmn propagation.

Add support for WLAN counters and stats

Change-Id: I5601a9207529060c6c97e70f067c8e43ca45488a
CRs-fixed: 865207
2016-09-14 19:45:22 +05:30
Manjeet Singh
9347f94f95 qcacmn: CL 1613065 - update fw common interface files
qcacld-2.0 to qcacmn propagation.

Add WMI types and macros definitions for antenna isolation detect

Change-Id: I69b715c224d30b40e37d4a6a6e780b1980b490e0
CRs-fixed: 865207
2016-09-14 19:45:10 +05:30
Naveen Rawat
24eb14ce29 qcacmn: Send HT/VHT CAPs IE to firmware per band
Send HT/VHT CAPs IE to firmware per band. This will allow certain
features like LDPC to be configured per band.

Change-Id: I21c83af984f9be3ade46121ef148b52568c3ad0f
CRs-Fixed: 1059454
2016-09-12 18:02:28 -07:00
Selvaraj, Sridhar
83ac1bd294 qcacmn: Add support to provide default scan IE's to FW
As part of MBO(MultiBand Operations), host driver need to supply
the default scan IEs to firmware at wifi init time using existing
VDEV SET IE command. FW uses these Scan IE's in subsequent scans
.i.e. FW initiated Probe Requests.

This Fix updates the vdev_ie_info_param struct with ie_source.
ie_source will be set with zero for VDEV SET IE commands from
host driver

Change-Id: Ie2e87da8aa94b76aef431e25d9974b8fed63eba9
CRs-Fixed: 1039969
2016-09-08 18:22:27 -07:00
Abhishek Singh
53b478ce4e qcacmn: Fix mismatch in mem alloc and mem free API
qcacld-2.0 to qcacmn propagation

In some cases wmi_buf_alloc is used to allocate memory, while
adf_os_mem_free(vos_mem_free) is used to free the memory.
vos_mem_free checks if memory is present in vosMemList to detect
double free.

Now as wmi_buf_alloc doesnot add the allocated memory to
vosMemList, vos_mem_free assume it to be double free case and cause
kernel panic.

Use proper corresponding API to free memory

Change-Id: I3602887d2bfdb407e5805aedd7a97a57440a4567
CRs-Fixed: 1004079
2016-09-08 18:22:27 -07:00
Deepak Dhamdhere
1ad591fef7 qcacmn: Modify LFR3 firmware OKC flag
Enable or disable OKC flag in WMI roam scan offload request based on
okc_enabled parameter in roam request from CSR.

Change-Id: I19ad7ea2171532f2417742e205d408bdd52682c0
CRs-Fixed: 1057181
2016-09-02 21:27:06 -07:00
Anurag Chouhan
e6d4b28499 qcacmn: Add fwtest interface
Add wmi fw test interface to support generic fw test command.

Change-Id: Ic2dc113e3a698555c0fdcbafb30df154f6deb97d
CRs-Fixed: 1045265
2016-09-02 16:07:21 -07:00
Sathish Kumar
50a5518cd6 qcacmn: Fixing incorrect qdf_mem_set API usage in wmi_unified_non_tlv.c
The qdf_mem_set API is used incorrectly in a few instances inside
wmi_unified_non_tlv.c

The argument list is - <pointer to address, size, value>

However, some places, it is sent as - <pointer to addr, value, size>

This change fixes such incorrect function calls to qdf_mem_set().

Change-Id: Id50136f630022b1fdeaddbdefcad9f637f917e9e
CRs-Fixed: 1048504
2016-09-01 13:27:54 -07:00
Govind Singh
cc277f9791 qcacmn: Free WMI HB command buffer in case of errors
WMI HB command buffer is not freed in case of tx error,
Free WMI HB command buffer in case of errors.

Propagation from qcacld-2.0 to qcacmn.

Change-Id: I15577c50cefc0cc2e9129f175cf874f17acc430e
CRs-Fixed: 1001068
2016-08-31 07:06:47 -07:00
Sathish Kumar
7252e43048 qcacmn: Add WMI API for setting bandwidth fairness
This change implements the Non-TLV WMI API for setting bandwidth
fairness. This WMI command was implemented as part of the recent WIN SW
release. This change ensures it is adapted to convergence code structure.

Change-Id: Ib9984c43b91b105bfb4687a7591f4fab509febc4
CRs-Fixed: 1060577
2016-08-31 06:28:05 -07:00
Govind Singh
a0e147431b qcacmn: Fix compilation errors in WMI for Big Endian platform
This change fixes the compilation issues faced due to WMI convergence
changes on the big endian platform.

Change-Id: I18bae4fb7884683d8621ce9a862dc1a51ef84f82
CRs-Fixed: 1039318
2016-08-30 16:02:14 -07:00
Sravan Kumar Kairam
80f7246bfb qcacmn: Send anycast addresses for NS offload
Propagation from qcacld-2.0 to qcacld-3.0

Current implementation has support for IPv6 addresses of type
unicast for NS offload to firmware.

As part of this change add anycast addresses for NS offload.

CRs-Fixed: 954880
2016-08-24 06:56:18 -07:00
Selvaraj, Sridhar
020997beda qcacmn: Add support to provide assoc IEs to FW in RSO command
As part of MBO(Multiband Operations), host driver need to supply
the Assoc IEs to FW after initial connection. FW uses these Assoc
IE's in subsequent roaming.i.e Reassociation requests.
This Fix updates the WMI interface to provide support for passing
Assoc IEs to FW.

Change-Id: Ida3d2947714002233090a3f9075dd8d674a3c224
CRs-Fixed: 1039969
2016-08-24 04:42:24 -07:00
Nirav Shah
cb11756463 qcacmn: Add support to enable/disable packetlog using iwpriv
Add support to enable/disable packetlog using
iwpriv wlan0 pktlog command.

CRs-Fixed: 970647
Change-Id: I4f7c64332e971591b7a08020a412e6f3979b718d
2016-08-19 20:20:38 -07:00
Himanshu Agarwal
810141a664 qcacmn: Add changes for coexistence of WIN/ MCL TLV implementation
Add changes to allow coexistence of WIN/ MCL TLV implementation
through use of CONFIG_MCL flag and change of MACRO names.

Change-Id: I6868c288a43fd3afb19c84b8a9d4ef0dfbee5c94
Acked-by: prgandhi@qti.qualcomm.com
CRs-Fixed: 1008872
2016-08-19 18:52:55 -07:00
Govind Singh
77aa5857fa qcacmn: Add WIN compilation fixes for TLV
Compilation fixes made to compile TLV on WIN code base.
Also, Previous gerrits used WMI_NON_TLV_SUPPORT for all
compilation fixes of WIN vs MCL, using CONFIG_MCL and
CONFIG_WIN wherever it is found appropriate to keep it
consistent with other modules.

Change-Id: I1c129d736746556210c46f3122e2739d233e1d6b
Acked-by: prgandhi@qti.qualcomm.com
CRs-Fixed: 1008872
2016-08-19 18:52:53 -07:00
Anurag Chouhan
cfeb14de34 qcacmn: CL 1605795 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

WMI pdev POWER_STATS request and report message defs
pktlog flag in HTT_T2H RX_IN_ORD_PADDR_IND
New release of Hawkeye HW header files

Change-Id: If2f122a6879b60052849b7efb738e7fc1a4c23f3
CRs-fixed: 865207
2016-08-18 13:51:50 +05:30
Anurag Chouhan
18e43ddc1b qcacmn: CL 1598475 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Adding defined weightage values for WMI_PDEV_SET_PCL_CMDID
Add filter configure interface in fwcommon for sniffer mode

Change-Id: Ic822863cbbaffe7303dedf7f6c16ba92c2d0a5d3
CRs-fixed: 865207
2016-08-18 13:45:15 +05:30
Sandeep Puligilla
489c7193ec qcacmn: Fix compilation with WMI_INTERFACE_EVENT_LOGGING disabled
Compilation error occurs due to undefined struct when
WMI_INTERFACE_EVENT_LOGGING disabled.

Use void pointer as argument to wmi_mgmt_cmd_record() and cast as header
struct inside logging function to avoid casting as undeclared type.

Change-Id: I7d0922ee2009b235473febdbcbc3317e432a1386
CRs-Fixed: 1043597
2016-08-03 02:28:04 -07:00
Govind Singh
66597e4cc5 qcacmn: Remove unnecessary locking during WMI detach
HOST driver unload sequence does following
   1) Kill WLAN tasklet
   2) Disable CE interrupts
   3) Flush WMI RX work
Hence its unncessory to acquire eventq_lock as no one
will be using the shared resource during wmi detach.

Change-Id: I5c549358aeefc460c794c35659915d3b966c7350
CRs-Fixed: 1021376
2016-08-01 23:42:25 -07:00
Nitesh Shah
9ff543f7db qcacmn: CL 1597848 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Adding WMI defs for pdev and peer GET_ANTDIV_STATUS_CMD,
ANTDIV_INFO_EVENT msgs.

Change-Id: Iad3c57f0b4e10e68c86cef175b8cadcfd9e7fe1e
CRs-fixed: 865207
2016-08-01 16:31:48 -07:00
Krishna Kumaar Natarajan
edc1f370b3 qcacmn: Correct len size of oem data request
qcacld-2.0 to qcacmn propagation.

oem data request len size should be of 4 byte instead of
1 byte.
Add changes to correct len size in wmi unified API.

Change-Id: I9b377420c50ff1160964f94be5eaa0072df0f63d
CRs-Fixed: 1013488
2016-07-29 18:15:29 -07:00
Nitesh Shah
4e47333bde qcacmn: CL 1546483 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Add WMI command to set GPIO numbers that are used to wakeup host
and wakeup target.
Changes to disable dynamic bandwidth RTS.
Add swol_assist_enable field to WMI extwow_set_app_type1_params
cmd to enable IoT mode WMI enums for CCK and OFDM max tx rates.

Change-Id: I26873873d7a355c179babaa7cc56e187e9771c92
CRs-fixed: 865207
2016-07-19 03:07:41 -07:00
Varun Reddy Yeturu
f99241ec66 qcacmn: Fix incorrect channel list passed to the firmware
Fix the occupied channel list that is being passed from CSR to
WMA to WMI to firmware.There is a conversion happening in
WMA from channel number to frequency which is the root of the
issue.

Change-Id: I8a2f8c9d31897b38086df26ebd386ec59d0f3540
CRs-Fixed: 1039020
2016-07-14 12:36:11 -07:00
Nitesh Shah
26ca070efa qcacmn: CL 1534810 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Define WMI messages for per-AC rx reorder timeouts
and A-MPDU aggregation limits.

Change-Id: I19d96379a93e2d860cce249704834f06f271efb0
CRs-fixed: 865207
2016-07-12 22:57:51 -07:00
Pradeep Reddy POTTETI
7e42ae0c63 qcacmn: CL 1529540 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Tufello USB Wlan Adapter - Flash Read

Change-Id: Ib90306a871febe43a076ae8b104442bbc3a4960c
CRs-fixed: 865207
2016-07-12 22:57:49 -07:00
Pradeep Reddy POTTETI
df7dfefed6 qcacmn: CL 1527207 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Add mcast filter set/delete command that can take multiple
filters in a list.
Fix HTT typos to make MACROS consistent with the field name.

Change-Id: I97ca72f102faecfc3d20409b0d4819a09968417c
CRs-fixed: 865207
2016-07-12 22:57:47 -07:00
Pradeep Reddy POTTETI
a364739a6d qcacmn: CL 1524945 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0.

New WMI command for reorder queue setup/removal

Change-Id: I31ad0432a0d5f49eed55603ae7d9eeedbdd19876
CRs-Fixed: 865207
2016-07-12 22:57:46 -07:00
Sandeep Puligilla
ac71f152d4 qcacmn: Enhance MGMT frame logging in WMI
More detailed logging needed for mgmt frames

Add vdev_id, frame type, subtype, and channel to logs by defining wrapper
function around logging macro and calling it from send_mgmt_cmd_tlv

Change-Id: I0c8c26e3194d97be7d903f64c5c5909c2d4b9799
CRs-Fixed: 1011346
2016-07-08 18:59:51 -07:00
Arif Hussain
0b6da577e8 qcacmn: SAP DFS: Fix dfs_phyerr_filter_offload
Correct the logic based on phyerr filter offload INI value.

Change-Id: Ie4722eba7d7476fc7c445e9e9a026827231552eb
CRs-Fixed: 1036629
2016-07-01 16:19:14 -07:00
Himanshu Agarwal
2a92459208 qcacmn: Add NULL checks before dereferencing
Add NULL checks before dereferencing in:
1) HIF layer
2) WMI layer.

Change-Id: I47c5d18ae7841826d958d742283edb0bd6d246b7
CRs-Fixed: 1036390
2016-07-01 10:36:19 -07:00
Govind Singh
921fb0059e qcacmn: Remove WMA header file dependency to fix WIN compilation
Remove dependency of WMA header files in common wmi layer.

Change-Id: I705e3b8cbe048f846c819dc028667061a0ce3ce2
CRs-Fixed: 1008872
2016-06-29 12:17:36 -07:00