提交線圖

239 次程式碼提交

作者 SHA1 備註 日期
Sathish Kumar
617535c365 qcacmn: Add extract API for UTF event to support TLV and Non-TLV targets
Add extract API for handling UTF event data received from the target
for both TLV and non-TLV cases.

Change-Id: I62525d7c8663fe90e0e3e76cf5286bb9dc86acd0
CRs-Fixed: 1115293
2017-01-30 03:20:38 -08:00
Kiran Venkatappa
176fe6cbc2 qcacmn: Fix wmi extended service ready handling APIs
Add hw_mode_id. HW mode is received in extended service ready.
This will be used to determine FW capability to support multiple radio.
This is used on host to create multiple instantces of pdev on host.
Change mac_phy_cap extract API to get mac_phy_cap based on hw_mode_id
and phy_id

Change-Id: I9a6abdac8799d167828f13bef61b1a1d8c3e9769
CRs-Fixed: 1113888
2017-01-23 16:03:21 -08:00
Sandeep Puligilla
82b95caf5f qcacmn: Move defination of WMI_DBG_PARAM to host wmi file
Defination of enum WMI_DBG_PARAM is used only in host
so moved to host private wmi file.

Change-Id: I42a529b343e4e6e81b570c505385cfc8dbf9f017
CRs-Fixed: 1107600
2017-01-17 16:29:59 -08:00
Pratik Gandhi
74ff2e52d8 qcacmn: Convert wireless modes to host internal values
Convert the wireless_modes HALPHY capability from FW defined REGDMN_MODE
values to host internal WMI_HOST_REGDMN_MODE values. This will help make
host code independent of target specific definitions.

Change-Id: I6d325f76959b35a3f854ade680f4d058c9d4bfcb
CRs-Fixed: 1061096
2017-01-17 10:38:14 -08:00
Sarada Prasanna Garnayak
d49444cf6f qcacmn: Runtime PM packets tagging after wow suspend
qcacld-2.0 to qcacmn propagation.

Don't Tag Non-WoW packets as Runtime PM packets after
wow suspend. Some WMI Commands can be send in Runtime
PM context and MC thread context. Packets coming via
MC Thread Context can be tagged as Runtime PM packets
when runtime pm in progress.

Packets should be tagged in the same caller context to
avoid any race condition. Being stability issue, addressing
this issue by not tagging any non-wow commands as runtime pm
after wow suspend. This will ensure all the non-wow packets
coming after wow_suspend flag is set as non runtime pm packets
and will trigger a runtime resume.

Git-commit: 4a396d80c5cc2ded75098c61426521b9b2762c17
Git-commit: 2ee4bf4791cc5db30ec03eceaf591367deffe39a

CRs-Fixed: 1106496
Change-Id: I4e55733ad8403581aca0b49ce9442fc5591335c0
2017-01-12 05:26:11 -08:00
Sathish Kumar
990089f898 qcacmn: Fix CTL power configuration issued through acfg tool
When CTL array is configured using acfg_tool, the CTL values are not
impacting powers due to incorrect band value passed to the FW. It is
found that the memory copy for band and CTL array are done together
in a single operation.

However, with convergence, both acfg_tool and wifitool will call the same
underlying WMI API to set the CTL table. In order for concurrent working,
we need to copy the band value separately for acfg_tool, before copying
the CTL array. This fixes memory corruption that is currently seen
as evident from the garbage value for CTL band.

CRs-Fixed: 1087168
Change-Id: I42f6bc39eb3930e8c995ff76294b7d77676f2299
2017-01-05 04:09:37 -08:00
Paul Zhang
a9ec943d9f qcacmn: Drop Action frame in FW config by host
Propagation from qcacld-2.0 to qcacmn.

Several Action frame categories are not processed in host and they
are not forwarded to supplicant either, but they are dropped in host.
These unprocessed action frames are forwarded to host by FW and
wake up host unnecessarily which leads to battery drain. With this fix,
host conveys FW the disallowed action frames list at HDD startup
so that the remaining frames can be dropped in FW itself thereafter
when under WoW mode.

Change-Id: I40b49d42df94085784c8f1d8321de0ee61473ae0
CRs-Fixed: 999114
2017-01-04 18:09:31 -08:00
Kiran Venkatappa
4110f0ad84 qcacmn: Add cal data version check status enums in host
Add WMI host defines to check cal data status and use appropriate copy
macros to take care of big-endian conversion.

Change-Id: I4358761e807ac584c638b6e36229dbbbb85bf651
CRs-Fixed: 1105756
2017-01-02 14:58:58 +05:30
Soumya Bhat
c09518b91e qcacmn: Add wrapper for WMI event registration
Add wrapper to make WMI layer agnostic to the context in
which the WMI registered event handler should execute.

Change-Id: I3b8b4621cfa8d816188fdc5c688bce94528eca59
CRs-Fixed: 1096016
2016-12-22 15:26:30 -08:00
Manikandan Mohan
7e5ad48619 qcacmn: Add SAR power limit configuration
There is a regulatory requirement for Specific Absorption
Rate (SAR) whereby the phone transmit power is reduced
when it is determined that the phone is in close
proximity to the body.
Implement a vendor command interface to set SAR power
limts dynamically.

Change-Id: I0a214a2af780e9dd8c381c4e9eaa7d8cab6ef853
CRs-Fixed: 1098102
2016-12-16 16:44:57 -08:00
Nandha Kishore Easwaran
3f1115a8de qcacmn: change name for ZeroCACDFS
The term "agile" is used by hardware for swift/fast channel change.
Use precac for the zeroCACDFS instead.

Change-Id: I35f4d61cc93b3542feb8b286cbdf3a4474df5a75
Crs-fixed: 1073945
2016-11-30 12:40:45 -08:00
Sathish Kumar
7e566c5364 qcacmn: Add wmi support for btcoex duty cycle command
A new iwpriv command has been added to configure the period
and wlan duration for a btcoex duty cycle.

As a part of this registring the wmi_service_btcoex_duty_cycle
for WMI_SERVICE_BTCOEX_DUTY_CYCLE.

Also send_btcoex_wlan_priority_cmd registrtaion for btcoex
duty cycle command in non_tlv_ops.

Change-Id: I7f3bfdfd9804566d6d0b7cce7025e99db57d0e23
Acked-by: Basamma Yakkanahalli <ybasamma@qti.qualcomm.com>
CRs-Fixed: 1064437
2016-11-30 12:40:43 -08:00
Nandha Kishore Easwaran
5bee143df7 qcacmn: Change DFS agile flag
Agile flag WMI_CHAN_FLAG_AGILE_MODE added. When this flag is set,
the primary VHT80 will not be affected when channel change is done.

Change-Id: Ie6bce12ec955c0c8a79246dda57092808611803d
CRs-Fixed: 1072504
2016-11-30 12:40:41 -08:00
Sathish Kumar
7e2eaed490 qcacmn: Add non-tlv APIs for new WMI commands and support for old commands
Implement following WMI commands and corresponding event extraction
APIs added for WIN release-
WMI_PEER_GID_USERPOS_LIST_CMDID
WMI_PEER_TX_MU_TXMIT_RSTCNT_CMDID
WMI_PEER_TX_MU_TXMIT_COUNT_CMDID
WMI_PDEV_CHECK_CAL_VERSION_CMDID
WMI_BTCOEX_CFG_CMDID

Additions to following existing WMI commands-
WMI_MU_CAL_START_CMDID
WMI_SET_LTEU_CONFIG_CMDID
WMI_PDEV_GET_TPC_CONFIG_CMDID
WMI_START_SCAN_CMDID

Change-Id: Ifd43addf196f2bc3cbff33671ef66202b8b0b487
CRs-Fixed: 1059400
2016-11-30 12:40:40 -08:00
Dustin Brown
dee95c757a qcacmn: Pass WOW enable flags to FW
For WOW Enable, firmware accepts a bitmap of flags, but passing them
to firmware is not exposed by WMI. Modify WMI to allow passing WOW
Enable flags to firmware.

Change-Id: I458b01bc6a4e5b14b2a1dfee928136daeb70ebe9
CRs-Fixed: 1092068
2016-11-28 11:42:58 -08:00
Jeff Johnson
6b8bda4598 qcacmn: Fix -Wmissing-prototypes in WMI
We want to enable the compiler's -Wmissing-prototypes switch, but
there is existing code that is generating warnings. Fix all warnings
in wmi.

Change-Id: I2452ffa4e9fa1de8a7bd75d04dd4a0f94d7cf55c
CRs-Fixed: 1093298
2016-11-23 14:44:54 -08:00
Sathish Kumar
ba2b5da6dc qcacmn: Add channel noise floor and rx cycle count to DCS IM stats
Add additional stats namely channel noise floor and rx cycle count
to DCS interference stats structure maintained by WMI.

Change-Id: I0e6245c1888b5028daaa94e309ca7cc49073edc9
CRs-Fixed: 1087114
2016-11-17 20:57:42 -08:00
Kiran Venkatappa
9c71b366e9 qcacmn: Add extract routines for WMI ext service ready event
Add helper routines to extract TLV params in WMI EXT service ready
event. These helper routines abstracts all TLV related information
providing APIs to extract ext serivce ready params.

Change-Id: Ic989331856ed2f9376965bdec4b658328f9e470b
CRs-Fixed: 1079237
2016-11-09 22:57:44 -08:00
Mukul Sharma
b4ddf9c925 qcacmn: Change WMI command limit to 256 from 1024
qcacld-2.0 to qcacmn propagation

To debug the fwr stuck issue as early as possibile,
reduce the wmi max pending command threshold to 256
from 1024.

Change-Id: Ic3cbe26cca979dcaa68fca03e6fe1af397cf0c4f
CRs-FIXED: 1080761
2016-11-08 02:36:59 -08:00
Leo Chang
8184e9c15f qcacmn: add lithium rx queue setup wmi messages
WMI changes for rx reorder queue setup.

Change-Id: I4c8b1a5b8fd50cceaf754bdfdecada695871fe96
CRs-fixed: 1080338
2016-11-02 12:02:09 -07:00
Nandha Kishore Easwaran
da8e13c42d qcacmn: CTL changes for Beeliner family
For Beeliner family of chipsets, the number of values expected is 688
for 2G and 1540 for 5G

Change-Id: I2c47ed98f639c09453687fce7f713946304a7036
CRs-fixed: 1071083
2016-10-30 05:29:09 -07:00
Sathish Kumar
753eb7d88e qcacmn: Adapt WIN driver with FW abstraction changes
Recently added changes for coexistence of WIN/MCL TLV implementation
through CL I6868c288a43fd3afb19c84b8a9d4ef0dfbee5c94 require
adaptations in QCA WIN driver to successfully compile.

Add required definitions in WMI layer to adapt WIN driver to
changes made for coexistence.

Change-Id: I99550ca10553d8096b8967249c006bac4e0c62df
2016-10-26 11:19:00 -07:00
Sathish Kumar
38bf0d87b3 qcacmn: Add LOWI messages to be sent to FW
LOWI messages to register, set capability
and send RTT measurement request are not sent assuming only
LCI and LCR messages are sent out to the FW using ol_ath_lowi_data_req_to_fw.

Add code to send messages other than LCI and LCR through the API in
ol_if_lowi.c when msg subtype is not one of LCI or LCR.

Change-Id: I2deedaa6e03e769bf802337b2ec93d9573eb1b5a
CRs-Fixed: 1079169
2016-10-23 21:05:28 -07:00
Sathish Kumar
41eca49c17 qcacmn: Fix compilation error when peerflow control for mode 0 is enabled
Change-Id: I5c6bd2668861119f9d61a2895a93deb6f7e7832b
CRs-Fixed: 1066302
Acked-by: Sahoo, Amarendra Kumar <c_aksah@qti.qualcomm.com>
2016-10-17 21:59:24 -07:00
Sathish Kumar
657402a444 qcacmn: Support for Tx data capture WMI command
Tx data capture feature needs a new WMI command.
The fw common file is already reflecting this new
command.

New enum is added to WMI_HOST_PKTLOG_EVENT for this
feature.

Change-Id: I7b8535a311033debbbee5f56c87ac4858a0aa8e1
CRs-Fixed: 1068402
Acked-by: Debasis Das <ddas@codeaurora.org>
2016-10-17 06:22:50 -07:00
Mukul Sharma
90bc73b5bf qcacmn: Enhance EPNO feature
qcacld-2.0 to qcacmn propagation

Make the following enhancements to the EPNO feature:
1) Implement the reset EPNO command handler
2) Add new parameters for candidate score calculation.

Change-Id: Iad1ff9c2b003c9e3ddbc3373366686040ccb55ca
CRs-Fixed: 1075380
2016-10-13 11:47:07 -07:00
Houston Hoffman
09f96f94b4 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
Padma, Santhosh Kumar
7352405bb9 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
Mukul Sharma
ac755cd673 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
9da7e04134 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
Naveen Rawat
71268886fa 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
ce06429bc1 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
Service qcabuildsw
effb5719a4 Merge changes I34cc7916,I19ad7ea2 into wlan-cmn.driver.lnx.1.0-dev
* changes:
  Release 5.1.0.23I
  qcacmn: Modify LFR3 firmware OKC flag
2016-09-07 21:11:42 -07:00
Service qcabuildsw
d79dfe024a Merge changes Ica6da5c6,Ic2dc113e,I45a132e8,Idcb07751 into wlan-cmn.driver.lnx.1.0-dev
* changes:
  Release 5.1.0.23H
  qcacmn: Add fwtest interface
  Release 5.1.0.23G
  qcacmn: Added a member in qca_napi_info structure
2016-09-07 21:09:52 -07:00
Service qcabuildsw
cafd9f444e Merge changes I5ec5ce2a,If129b9c7,I86daffeb,Id50136f6,Id187b8e6,I22928dea,I15577c50,Ib952643a,Ib9984c43,Ic44825f4,If23398b0,I206d3008 into wlan-cmn.driver.lnx.1.0-dev
* changes:
  qcacmn: Use suspend_noirq callback instead of disabling irqs
  Release 5.1.0.23C
  qcacmn: Implement QDF API to get queue mapping and total ram size
  qcacmn: Fixing incorrect qdf_mem_set API usage in wmi_unified_non_tlv.c
  qcacmn: Fix for kernel panic in wifi down path for peregrine
  Release 5.1.0.23B
  qcacmn: Free WMI HB command buffer in case of errors
  Release 5.1.0.23A
  qcacmn: Add WMI API for setting bandwidth fairness
  Release 5.1.0.23
  qcacmn: unmap buffer for CE destination ring en-queue error
  Release 5.1.0.22Z
2016-09-06 16:58:08 -07:00
Service qcabuildsw
336e42eb39 Merge "qcacmn: Fix compilation errors in WMI for Big Endian platform" into wlan-cmn.driver.lnx.1.0-dev 2016-09-06 13:43:58 -07:00
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
Linux Build Service Account
e38d40e3fa Merge "qcacmn: Send anycast addresses for NS offload" 2016-08-27 15:50:35 -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
Sravan Kumar Kairam
a985de4cbb 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 12:24:23 +05:30
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