Commit Graph

1016 Commits

Author SHA1 Message Date
Kiran Kumar Lokere
edabc98fad qcacmn: Add support for NSS configurability
qcacld-2.0 to qcacld-3.0 propagation

Add support for NSS configurability per vdev type.
- Configure the 2g and 5g NSS with the INI value of
each vdev type
- Program the HT and VHT IE to FW for 1x1 and 2x2 mode,
FW will include them in scan probe request frames

Change-Id: I5cbf17a14ab6becad6cf5765ae5039fc284dc309
CRs-Fixed: 869026
2016-06-24 16:48:20 -07:00
Houston Hoffman
aa8b2366ee qcacmn: Reduce logging for wmi messaging
Stop logging wmi message send and completion data to kernel log.

Change-Id: Ie61e6984f0f97e595ff5c4d2a34aa5b9eb2e9a9a
CRs-Fixed: 1026520
2016-06-23 12:33:14 -07:00
Poddar, Siddarth
1f21bbbd68 qcacmn: Add wma apis for High Latency systems (Part 4 - HL Datapath)
Initialize bad peer tx control data structure in WMA,
send down the initial configuration info to fw and
configure the peer status update setting in the tx_rx module.

CRs-Fixed: 975526
Change-Id: Ib380e10a0b343b6a8f9c2c0bf6d6dd602d2601c5
2016-06-23 12:33:06 -07:00
Himanshu Agarwal
0f1038d24d qcacmn: CL 1519524 – update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0.

P2P listed offload WMI messages

Change-Id: I0f591f9a620587ef77be09e3714c7156d4189172
CRs-Fixed: 865207
2016-06-23 12:33:01 -07:00
Govind Singh
8f788f4491 qcacmn: Fix compilation issue for WMI Recording feature
Fix compilation issues when WMI_INTERFACE_EVENT_LOGGING
feature is disabled.

Change-Id: I30e9b96cc8d387a7fbe94ae786f9d36ea58b8c21
CRs-Fixed: 1019979
2016-06-23 12:32:58 -07:00
Himanshu Agarwal
8134019bae qcacmn: CL 1507516 – update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Add dbglog IDs for ARP and DHCP packets
WMI CMDID for dbglog time stamp sync
Move reason code from wmi to nan_msg.h

Change-Id: I2e6e837fade375ef86c0c4247490b44ec502be1b
CRs-Fixed: 865207
2016-06-23 12:32:54 -07:00
Himanshu Agarwal
bb9f83ec61 qcacmn: CL 1506155 – update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

WMI bandwidth fairness peer configuration command message
definition.

Change-Id: I8023e8a4f9758d6003a3f666cc45c1e98265c01a
CRs-Fixed: 865207
2016-06-23 12:32:52 -07:00
Gupta, Kapil
86ab171ae4 qcacmn: Add support for adaptive dwell scan time
Dwell time can be modify based on channel congestion per scan
request.
Add changes to enable firmware to use scan control flag and select
dwell time optimization algorithm based on ini values.

Change-Id: Iea3de57c1b7d087442e4b8984b4184d24bb8c930
CRs-Fixed: 994443
2016-06-23 12:32:48 -07:00
Govind Singh
d5320a9658 Revert "qcacmn: Remove WMA header file dependency to fix WIN compilation"
This change reverts Change-Id: I48978e51ca6bd4416420ee66746d5bfe7adae3c9

Change-Id: I8113e233b3477c7b35a5c35a1a1c6f5f32936d8c
CRs-Fixed: 1008872
2016-06-14 13:48:46 -07:00
Manikandan Mohan
8330485de6 qcacmn: Fix compilation error in 4.4v Kernel
Fix compilation errors in Kernel 4.4 version. seq_printf function
syntax is changed in v4.4 Linux kernel

Change-Id: I013171e5bbd4e5641c1a74d22003271c88c63232
CRs-fixed: 1026152
2016-06-14 13:48:44 -07:00
Govind Singh
6bc771707b qcacmn: Remove WMA header file dependency to fix WIN compilation
Remove dependency of WMA header files in common wmi layer.

Change-Id: I48978e51ca6bd4416420ee66746d5bfe7adae3c9
CRs-Fixed: 1008872
2016-06-14 13:48:28 -07:00
Govind Singh
26d120b3a7 qcacmn: Add WIN changes to wmi_unified_tlv.c
Add changes made in wmi_unified_tlv.c to get basic control path
working with WIN driver on a tlv platform

Change-Id: I2044df3d452cd5f1c8659a8e61e343494c6228fb
Acked-by: kiranv@qti.qualcomm.com
CRs-Fixed: 1005778
2016-06-14 13:48:26 -07:00
Rajeev Kumar
2990bdc28f qcacmn: Remove redundant null check for wmi_handle
In WMI detach caller routine already has null check for
wmi_handle so remove redundant null check.

Change-Id: I764a91a6050ffc93613b82008f5df2529a056e70
CRs-Fixed: 1027177
2016-06-10 15:26:22 -07:00
Govind Singh
89298eaabc qcacmn: Destroy WMI eventq_lock in WMI detach
eventq_lock is not destroyed in WMI detach.
Destroy WMI eventq_lock in WMI detach.

Change-Id: Ia60ec83cf776a3ceef75274b1bcb5dcca2594763
CRs-Fixed: 1021376
2016-06-06 18:52:34 -07:00
Rajeev Kumar
177f621440 qcacmn: Do not call sleeping API from atomic context
WMI unified detach holds spin lock bh and calls kernel API
to remove debugfs directory. Remove debug fs kernel API uses
mutex for internal synchronization and hence kernel complains
WLAN is calling sleeping API from non sleeping context. Fix this
issue by keeping debug fs remove API call outside spin lock bh
protection.

Change-Id: I15d9a3735ed3c914af51aed9885f48f9c1d1ded2
CRs-Fixed: 1021379
2016-06-06 18:52:32 -07:00
Govind Singh
08bd3dcacb qcacmn: Changes to converge WMI Recording feature
1.Logging of all WMI activities(commands, tx complete, events)
is adapted for WIN.
2. WIN and MCL continues to use existing approach of memory
allocation and it is managed using feature flag in common code.
3. Use debugfs for WMI event debugging.

example to read buffer through debugfs interface -
- Navigate to WMI directory under debugfs (/sys/kernel/debug/WMIx)
- It will display elements/files for all command/event buffers
- "cat wmi_command_log" (desired buffer name)
- Output will display something like this:
CMD ID = 16001
CMD = d 0 d8c6de24 e1cf
CMD ID = 16001
CMD = 8 0 0 0
CMD ID = 16001
CMD = d 0 d8c6de24 e1cf
CMD ID = 16001

Change-Id: I26895b480b9eaa400183c4667b9ac6980939cab9
Acked-by: Pratik Gandhi <prgandhi@qti.qualcomm.com>
CRs-Fixed: 1019979
2016-06-06 18:52:28 -07:00
Houston Hoffman
2d75fb987b qcacmn: Remove ol_fw include from wmi_unified.c
ol_fw include was not needed.

Change-Id: I9a3a408029c00ca528a09fb92e1b1ed4a6acf8e9
CRs-Fixed: 1012824
2016-05-17 11:09:33 -07:00
Anurag Chouhan
fcc15e29a7 qcacmn: CL 1498085 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation.

WMI changes to handle action frames of different category in WoW mode

Change-Id: Icbf9ad7cac93dd75ddb976a0f781e20b60201896
CRs-Fixed: 865207
2016-05-17 11:09:33 -07:00
Anurag Chouhan
61c3aba066 qcacmn: CL 1492713 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation.

WMI changes for adaptive dwell time scan.

Change-Id: Ibdd1bdd607b3acac5d55312ee2595c32892c89b5
CRs-Fixed: 865207
2016-05-17 11:09:33 -07:00
Govind Singh
fe2c815b77 qcacmn: Add non-tlv implementation in common wmi layer( part 2)
Add non-tlv fixes for issues observed during L1 validation in WIN platform.

Change-Id: I20efe25021258137a97dc408b93c9fdc3714f367
Acked-by: Sathish Kumar <ksathis@qti.qualcomm.com>
CRs-Fixed: 1005778
2016-05-17 11:09:33 -07:00
Anurag Chouhan
7c9496b6a6 qcacmn: CL 1488100 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add support for scenario debug logging
WMI changes to control WISA features of firmware from host

Change-Id: I01d96c423b6241248242aa2feae6887d8f202691
CRs-Fixed: 865207
2016-05-17 11:09:18 -07:00
Krunal Soni
2959c637e8 qcacmn: Fix incorrect arguments being passed in few WMI APIs
There are some WMI APIs which are using invalid arguments in
WMI interface layer. Send correct arguments.

CRs-Fixed: 1014141
Change-Id: If483a3ebcc62693be6ac6d3a767cb98e3bf064c7
2016-05-11 15:23:44 -07:00
Govind Singh
2a56c22843 qcacmn: Add support for WMI_PDEV_WAL_POWER_DEBUG_CMD
Add host support for WMI POWER DEBUG command to control mac_core power features
for run time debugging.

Change-Id: Ifc810b24222507f1445a84a54caa8aee5e815b38
CRs-Fixed: 1007598
2016-05-06 16:45:34 -07:00
Yuanyuan Liu
ae38003449 qcacmn: Clean up OS wrapper functions
Use OS standard APIs instead of CNSS wrapper functions

Change-Id: Icd048f41864c33463f4bb582d8d184816fa77c5d
CRs-Fixed: 1000797
2016-05-06 13:09:08 -07:00
Houston Hoffman
e52902c4a5 qcacmn: Remove cds_api and wma_api includes
The inclues are not needed.

Change-Id: I874a511535fded52f346201b24f6d3174334b430
CRs-Fixed: 1003804
2016-05-04 21:10:40 -07:00
Manishekar Chandrasekaran
7e21d109d2 qcacmn: Replace soc level references of set mac config
Replace the WMI command WMI_SOC_SET_DUAL_MAC_CONFIG_CMDID
and event WMI_SOC_SET_DUAL_MAC_CONFIG_RESP_EVENTID with
WMI_PDEV_SET_MAC_CONFIG_CMDID and
WMI_PDEV_SET_MAC_CONFIG_RESP_EVENTID respectively since
the former are obsolete. The new WMI commands and events
additionally carry the pdev id.

Change-Id: I77eab3ead005bbb7f951ce7e077cd661813cb628
CRs-Fixed: 989502
2016-05-04 21:09:56 -07:00
Manishekar Chandrasekaran
0d0cff8182 qcacmn: Replace soc level references of set hw request and response
Replace the obsolete WMI command WMI_SOC_SET_HW_MODE_CMDID with
WMI_PDEV_SET_HW_MODE_CMDID and event WMI_SOC_SET_HW_MODE_RESP_EVENTID
with WMI_PDEV_SET_HW_MODE_RESP_EVENTID respectively. These new WMI
commands and events additionally carry the pdev id and all mac id
references are replaced with pdev id.

Change-Id: If2a3f93dcd1947eedce8d4eac8ed936166f7e078
CRs-Fixed: 989502
2016-05-04 21:07:32 -07:00
Govind Singh
01d950eb71 qcacmn: Replace mac_id with pdev_id in WMI PDEV commands
Replace mac_id with pdev_id for WMI pdev commands and
vdev start response handler to support multi-radio in
converged firmware. In order to maintain backward
compatibility with old fw, host needs to check
WMI_SERVICE_DEPRECATED_REPLACE service id in service
bitmap and needs to fill pdev id or mac id accordingly.

Change-Id: I7e6b40b4c0bd20e967dc0a383b480068e256486f
CRs-Fixed: 994415
2016-05-03 07:52:17 +05:30
Govind Singh
a5e18c4829 qcacmn: Add non-tlv implementation in common wmi layer
WIN platform uses non-tlv implementation for host to
target wmi commands. Add support for non-tlv
implementation in common wmi layer.

Change-Id: I1f832695b0d41b521be6b18df0cad31aae11b6c9
Acked-by: Kiran Venkatappa <kiranv@qti.qualcomm.com>
CRs-Fixed: 1005778
2016-04-26 04:01:18 -07:00
Manishekar Chandrasekaran
b3a3073ae7 qcacmn: Replace WMI_SOC_SET_PCL_CMDID with WMI_PDEV_SET_PCL_CMDID
Replace the obsolete WMI command WMI_SOC_SET_PCL_CMDID with
WMI_PDEV_SET_PCL_CMDID. WMI_PDEV_SET_PCL_CMDID carries the weightage
for all the channels (preferred and non-preferred) in the same order
and length as that of the command WMI_SCAN_CHAN_LIST_CMDID. This is
in contrast to the command WMI_SOC_SET_PCL_CMDID which carries only
the preferred channel list.

Change-Id: I040f4307491d3242d2e9409dbbe8005c4b307bf5
CRs-Fixed: 989502
2016-04-25 23:00:58 -07:00
Krishna Kumaar Natarajan
854f69e39f qcacmn: Fix compilation error in WMA
qcacld-2.0 to qcacld-3.0 propagation.

Fix compilation error introduced due to change in WMI
interface structure definition changed by CL 1479065.

Change-Id: I83d50bc046961ab90bcfbb164d5d64296ff95d9f
CRs-Fixed: 865207
2016-04-20 15:48:44 -07:00
Krishna Kumaar Natarajan
e6b6f42c5c qcacmn: CL 1479065 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation.

Add Qboost dbglog IDs and module ID, add pdev_id to WMI cmds,
wal_power_debug framework to handle WMI cmd for LP features.

Change-Id: I815e29284ab21086f75197c2ce1319e13074e00f
CRs-Fixed: 865207
2016-04-20 15:48:40 -07:00
Krishna Kumaar Natarajan
9a4af54f3e qcacmn: CL 1476371 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation.

WMI change to enable Custom aggregation size for ADDBA request and
response through WMI command WMI_VDEV_SET_CUSTOM_AGGR_SIZE_CMDID.

Change-Id: I0fb54e8f32344b209787239ed64d7ecb13ea56fb
CRs-Fixed: 865207
2016-04-20 15:48:37 -07:00
Sandeep Puligilla
83a228e9e4 qcacmn: CL 1470160 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0.

Periodic channel stats and WMI chan info extension
Define a flag which indicates the packet responsible
for wake up the host from suspend mode

Change-Id: Ieb5f47f16c5f55790511e02d97db57f4fdf6de97
CRs-Fixed: 865207
2016-04-20 15:48:35 -07:00
Naveen Rawat
9eb124d274 qcacmn: CL 1469034 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

add a wmi command to enable/disable channel
avoidance report event from firmware

Change-Id: Ic84728b315b4729470238098a91ef6bb629b3f7b
CRs-Fixed: 865207
2016-04-17 15:19:14 -07:00
Naveen Rawat
32a8dc6fb2 qcacmn: Remove FEATURE_WLAN_ESE_UPLOAD compile macro
At present and going forward ESE and ESE_UPLOAD will be the
de-facto approach supporting ESE. Hence there is no need of two compile macros
FEATURE_WLAN_ESE and FEATURE_WLAN_ESE_UPLOAD.

Instead Remove FEATURE_WLAN_ESE_UPLOAD and Keep only FEATURE_WLAN_ESE.

Change-Id: If1a04e95211a0d639db7b60a57a6d5f215d26f4e
CRs-Fixed: 950762
2016-04-17 15:19:10 -07:00
Sreelakshmi Konamki
9a2518da77 qcacmn: CL 1466376 update fw common interface files
qcacld-3.0 to qcacmn propagation

Enhanced mcast filtering for incoming packets that have
multicast IP but unicast mac

Change-Id: Id50d9130f050ec9a948fdba9931c88b9111bb6ad
CRs-Fixed: 865207
2016-04-17 15:18:39 -07:00
Sreelakshmi Konamki
1aae997fb3 qcacmn: CL 1463814 update fw common interface files
adding wmi cmd for setting BT paging and WLAN P2P/STA/SAP sched interval

Change-Id: I07b885d726c12d8a9e7e8b179ad427b24a2f5db8
CRs-Fixed: 865207
2016-04-17 15:17:16 -07:00
Houston Hoffman
c7636aca07 qcacmn: Enable station SMPS only if the session supported NSS > 1
If HT SMPS is enabled and if the session supported NSS > 1
then include SMPS IE in the HT capabilities of the association
and the reassociation management frame.Enabling SMPS with an AP
whose capability is only 1x1 will result in association/reassociation
request being rejected or an unexpected behavior. Send SMPS force mode
to FW to trigger SMPS action frame only if SMPS is enabled in the
INI. For dynamic antenna switch, the chain mask manager will send
the SMPS action frames.

CRs-Fixed: 931250
Change-Id: Ifff2ef2c8790994a68e676b8bba2fb03c21370d4
2016-04-15 15:04:43 -07:00
Gupta, Kapil
8093bc42d5 qcacmn: Add support for dense roam params in wmi layer
qcacld-2.0 to qcacmn propagation

In High dense environment roaming should be triggered early
at dense RSSI threshold which provide better throughput result.
Add support for dense roaming parameters to read from ini file
and send to FW with other roaming parameters

CRs-Fixed: 953579
Change-Id: Ia63bfdd1248b4507d988b019f07164a7c75566af
2016-04-14 18:27:09 -07:00
Siddarth Poddar
c28ab7b4bc qcacmn: Fix tlv formation of gtk offload command
Add gtk offload enable/disable macros and use them
while copy keys and replay counter.

Change-Id: Ifdd776bc0c567d6c815ab5cb3eb212a43889b5a5
CRs-Fixed: 987362
2016-04-04 09:50:25 -07:00
Govind Singh
3f14f6f9d4 qcacmn: Use QDF_STATUS instead of Linux return type in wmi layer
Replace Linux return type with QDF_STATUS to have uniformity
across common wmi layer.

Change-Id: I74730602c6b20fb240182afd7c6e5ec6b3fcfd55
CRs-Fixed: 987362
2016-04-04 09:50:14 -07:00
Govind Singh
e6fc2e1941 qcacmn: Fix tlv formation of pno start command
Fix tlv formation of pno start command by adding the pno channel
prediction parameter in variable length tlv of pno start command.

Change-Id: I10274519eedf3d3cbcebfdc5e308fcf86bc2a804
CRs-Fixed: 987362
2016-04-04 09:49:57 -07:00
Himanshu Agarwal
a41da1d50f qcacmn: Add tlv formation of key installation commands in common wmi layer
Move tlv formation of wmi setup key installation commands from umac to
common wmi layer.

Change-Id: I51250a9b1b6bb5aed06657b9f88f4659430f4c74
CRs-Fixed: 987362
2016-03-30 12:06:53 -07:00
Siddarth Poddar
7e30287bde qcacmn: Fix tlv formation of vdev start command
Add channel info in tlv formation of vdev start command

Change-Id: I83164934978f6cac179e1e66c576549a732e356d
CRs-Fixed: 987362
2016-03-30 23:13:11 +05:30
Govind Singh
0609ff776b qcacmn: Use IEEE80211_ADDR_LEN macro for size of mac address
Use IEEE80211_ADDR_LEN macro consistently for size of
802.11 address.

Change-Id: I799433a6dc509f98d723f8d8c09d9ba348d9f07e
CRs-Fixed: 987362
2016-03-30 10:40:06 -07:00
Govind Singh
210485e9b7 qcacmn: Fix tlv formation of arp ns offload command
Fix arp ns offload command formation by removing the double
free of arp ns offload parameter structure.

Change-Id: I38d11c770f8e79d39f7593bcea3712ab07d34660
CRs-Fixed: 987362
2016-03-30 18:54:27 +05:30
Govind Singh
3fdb3a5761 qcacmn: Fix tlv formation of Peer assoc wmi command
Fix TLV header length calculation and pass peer mac address in
wmi peer assoc command.

Change-Id: I025ad7564901cba583bd78bddf0ccfa5e894c751
CRs-Fixed: 987362
2016-03-29 15:20:30 +05:30
Himanshu Agarwal
915c270701 qcacmn: Add tlv formation of some wmi vdev commands in common wmi layer
Move tlv formation of wmi vdev start/restart commands from umac to
common wmi layer.

Change-Id: Id040983068ff610e68880dd5f503edf9b9c8cff9
CRs-Fixed: 987362
2016-03-17 11:22:37 -07:00
Himanshu Agarwal
e2082f28fd qcacmn: Add tlv formation of wmi roam scan commands in common wmi layer
Move tlv formation of roam scan related commands from umac to
common wmi layer

Change-Id: Ib582f09ccc90e29eeace1af1bfcd43e0ff1e5203
CRs-Fixed: 987362
2016-03-17 11:22:23 -07:00