Commit Graph

51 次程式碼提交

作者 SHA1 備註 提交日期
Deepak Dhamdhere
3ae33a3a46 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
4d41be783a 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
50232d78ae 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
ec1401ae66 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
33b9549045 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
0a1427f401 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
9d1f1ac852 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
56c292fdf7 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
fa201d95d8 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
Sandeep Puligilla
20fb76b73b 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
Krishna Kumaar Natarajan
7a59ca0380 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
Varun Reddy Yeturu
b47fa40266 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
Sandeep Puligilla
38a294f178 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
Govind Singh
c7cd2d6bec 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
Kiran Kumar Lokere
0ae9fb9b80 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
Poddar, Siddarth
794b996b00 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
Gupta, Kapil
7b76800323 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
98f363ef44 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
Govind Singh
fb780d395b 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
5fed03b8d1 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
Govind Singh
41da3152b2 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
Govind Singh
c10bde875f 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
Manishekar Chandrasekaran
81d7aaa0e3 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
68430d37fd 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
608e889bf3 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
8972788adb 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
b8c59389e0 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
Naveen Rawat
d5ffe15e29 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
Gupta, Kapil
1f4a4c3390 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
d9221545a9 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
Himanshu Agarwal
9efd9bfc2c 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
466963e7cd 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
8675b8636b 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
53c7ac825f 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
7e4f4bc75e 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
5f2d048f1b 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
Govind Singh
ec0bdef398 qcacmn: Replace mac_id with pdev_id in common wmi layer
Replace mac_id with pdev_id, add vdev_id to peer commands/events
and change reserved0 to pdev_id in PDEV commands.

Change-Id: I2f659159fa2f0d023650eae68b6d3115aac379b0
CRs-Fixed: 983619
2016-03-16 16:42:02 +05:30
Govind Singh
f06948c403 qcacmn: Protect rx execution context for wmi events
wmi rx event context can be modified at runtime by
upper layers. Protect rx execution context for wmi events
to avoid race conditions.

Change-Id: I7eed7108d09f8f39432990b2ebfef29a41bfa9aa
CRs-Fixed: 983619
2016-03-16 16:42:02 +05:30
Govind Singh
d7468a5cd3 qcacmn: Adpat common wmi layer with QDF os abstraction
Adapt common wmi layer with converged os abstraction layer.
Remove references to non-converged header files from
wmi layer.

Change-Id: I3671a40604fa1a5f10a5a67106db33f382e0f335
CRs-Fixed: 983619
2016-03-16 16:42:01 +05:30
Govind Singh
2ae94377e5 qcacmn: Add tlv formation of wmi main commands in common wmi layer
Move tlv formation of wmi main commands from umac to
common wmi layer.

Change-Id: I010396bfc94020e1eee7baa3ab46b9a35b101b92
CRs-Fixed: 983619
2016-03-16 16:42:01 +05:30
Govind Singh
71ee2d71ec qcacmn: Add tlv formation of wmi init commands in common wmi layer
Move tlv formation of wmi init commands from umac to
common wmi layer.

Change-Id: I8511de51f341401b5ba64581ba0f6840cfee1590
CRs-Fixed: 983619
2016-03-16 16:42:01 +05:30
Govind Singh
229bc0ddce qcacmn: Add tlv formation of wmi feature commands in common wmi layer
Move tlv formation of wmi feature commands from umac to
common wmi layer.

Change-Id: I1674606573c9145fa235191bf1ef798bd26a63ce
CRs-Fixed: 983619
2016-03-16 16:42:01 +05:30
Govind Singh
ae85536f9e qcacmn: Add tlv formation of wmi scan roam commands in common wmi layer
Move tlv formation of wmi scan roaming and management commands from umac to
common wmi layer.

Change-Id: I99b2651c0054d03e58da697ab7b902b5629eeb4a
CRs-Fixed: 983619
2016-03-16 16:42:01 +05:30
Govind Singh
9bad000a2d qcacmn: Add tlv formation of wmi data commands in common wmi layer
Move tlv formation of wmi data-path commands from umac to
common wmi layer.

Change-Id: I6994103441997935a82464b0e195597305a09557
CRs-Fixed: 983619
2016-03-16 16:42:01 +05:30
Govind Singh
e7b800cc41 qcacmn: Add tlv formation of ocb commands in common wmi layer
Move tlv formation of wmi ocb/dsrc commands from umac to
common wmi layer.

Change-Id: I2735b40b97b8ff120e37e343fc6f3681cd0d73f9
CRs-Fixed:983606
2016-03-16 16:42:01 +05:30
Govind Singh
50988ccfbd qcacmn: Add tlv formation of wmi power commands in common wmi layer
Move tlv formation of wmi power commands from umac to
common wmi layer.

Change-Id: Ie1940d8fafad600e8c245f24beec9e33c6bb6b54
CRs-Fixed: 982337
2016-03-16 16:42:01 +05:30
Govind Singh
bffe4de070 qcacmn: Add tlv formation of scan commands
Add tlv formation of scan related commands to common wmi layer.

Change-Id: If7fd18f43cb8b7bad6779bc883bf2ba9395f7c6d
CRs-Fixed: 982330
2016-03-16 16:42:01 +05:30
Govind Singh
4ec6ff9760 qcacmn: support of common wmi rx event handling for common wmi layer
Remove hard-coded rx execution context of wmi event callbacks.
UMAC layer needs to register execution context while registering
events with wmi layer.

Execute wmi rx event callbacks in following context-
1) work queue context provided by wmi layer.
2) umac provided context, umac can choose to
   execute in thread context or default tasklet context
   based on umac implementation.

CRs-Fixed: 978619
Change-Id: Id9b1f1e5157e8a203f93a62791f85a8145cc1599
2016-03-16 16:40:55 +05:30
Govind Singh
3ddda1ff37 qcacmn: Add tlv implementation of common unified API
Add common unified API and tlv/non-tlv callback wrappers.
Add tlv implementation of common MCL/WIN API.

CRs-Fixed: 978603
Change-Id: I7e70b48ef5e1df0c0f81c639579e6eb1a6685dc3
2016-03-16 16:23:00 +05:30
Govind Singh
6ad6adac26 qcacmn: Modify wmi handle and api for common wmi layer
Modify wmi handle and wmi unified interface API
for common wmi layer.
Register UMAC callbacks using opaque callbacks.

CRs-Fixed: 978579
Change-Id: I505fe4ac339213db30bb00695234c4cfea5a5908
2016-03-16 16:23:00 +05:30