Commit Graph

43 Commits

Author SHA1 Message Date
Bapiraju Alla
cbef1eafad qcacld-3.0: Update default value for gFwDebugModuleLoglevel INI param
Update default value for gFwDebugModuleLoglevel to get more logs
to debug firmware issues.

Change-Id: I388f7af62b00b6af5d963e2c6f2dec90389cca18
CRs-Fixed: 2722193
2020-07-01 18:06:09 -07:00
Bapiraju Alla
cd65464616 qcacld-3.0: Add validation for wmi handle
Validate wmi handle obtained in tgt_fwol_pdev_param_send

Change-Id: I99edbdf5be4c17af7fb31b7cbdaf418e5a1150af
CRs-Fixed: 2699765
2020-06-07 17:42:25 -07:00
Bapiraju Alla
3416ac0dff qcacld-3.0: Add APIs to configure firmware params using fwol component
Currently these params are sent to fw from hdd. By design, this
should be done by fwol component. Add fwol APIs to achieve this.

Change-Id: Ifcc67fe15e76a32c28819267b0639edae1032093
CRs-Fixed: 2665749
2020-04-21 22:24:19 -07:00
Sourav Mohapatra
18bed7536f qcacld-3.0: Rectify sanity check for IE whitelisting bitmaps
Currently the sanity check present for the IE whitelisting bitmaps is
not proper. Instead of allowing the correct bitmaps to be used, it
prevents any of the bitmap to be used if a single one is zero.

Rectify the above check to allow the bitmaps to be used if atleast one
of them has a non zero value.

Change-Id: I496d6c6a1bda8c11d9bd42ea41a79ab04b539357
CRs-Fixed: 2647608
2020-04-07 22:20:53 -07:00
Bapiraju Alla
5e23b7cfd7 qcacld-3.0: Add param for OCL mode configuration
Currently there is no provision to configure OCL mode in FW during
driver bootup.

To enable this configuration add a new INI configuration parameter
gOclCfg.

Change-Id: I87c9131f5395c394f745e0170f0d9b3d1571d030
CRs-Fixed: 2644312
2020-04-02 00:11:32 -07:00
Qun Zhang
7ed7929ac0 qcacld-3.0: Make sure pointer wasn't dereferenced after being freed
Make sure pointer wasn't dereferenced after being freed, so when
fwol_obj is freed, the function should return directly.

Change-Id: I69c23d2366b2ea0ff1caca9798bdc22063221a9c
CRs-Fixed: 2642567
2020-03-26 02:00:00 -07:00
Lincoln Tran
4cb4b007a1 qcacld-3.0: Add ini to pass xLNA bypass config to FW
Add new ini CFG_SET_SAP_XLNA_BYPASS under fw_offload to allow host
to pass config to FW. WMI_PDEV_PARAM_SET_SAP_XLNA_BYPASS makes the
SAP xLNA bypass configureable.

Change-Id: Ie501005f3035f14b3f23cdd260f401a6af81b798
CRs-fixed: 2632088
2020-03-09 20:57:16 -07:00
Vevek Venkatesan
656edfa1f8 qcacld-3.0: add support to customize dscp-to-up map table
Add support to customize DSCP-to-UP map table and send the
customized map values to FW to update its corresponding
map table.

Change-Id: Ibe9704a90468c898dd2e60fdf83a271152f654ce
CRs-Fixed: 2616247
2020-02-06 22:44:57 -08:00
Pankaj Singh
50e40422d1 qcacld-3.0: Add support for WLAN thermal mitigation
As part of new requirement WLAN subsystem needs to perform thermal
mitigation action as per the thermal state of the device. The
wifi hal sends vendor command QCA_NL80211_VENDOR_SUBCMD_THERMAL_CMD
with the thermal level parameter and wlan host performs the required
appropriate action. wlan host driver maps the thermal level to
corresponding duty cycle off percent value and duty cycle value,
send WMI_THERM_THROT_SET_CONF_CMDID cmd to FW.

Make changes to perform vendor command handling, mapping thermal level
to duty cycle value and communicating the thermal information to FW.

change-ID: I77175048c817ab755cdb838018e414ef3ee0b112
CRs-Fixed: 2610395
2020-01-31 12:45:29 -08:00
Arun Kumar Khandavalli
a0bb689000 qcacld-3.0: selectively reduce the offload logs
Reduce loglevel of some logs from info to debug.

Change-Id: I7026cd376015de62d71ffd0b4eb2e79e13e2e4f0
CRs-Fixed:  2607973
2020-01-24 05:09:18 -08:00
Sourav Mohapatra
2a03074fae qcacld-3.0: Rectify max values for TSF pin inis
The max values of the ini's CFG_SET_TSF_GPIO_PIN and
CFG_SET_TSF_IRQ_HOST_GPIO_PIN are set wrong. The default value for those
is higher than the max value.

Increase the max value to accommodate the correct range.

Change-Id: I7d5528801c3b0fc2480e00b28ab4eb8f0385930a
CRs-Fixed: 2570044
2019-11-22 02:22:03 -08:00
Alan Chen
d77099006c qcacld-3.0: Remove arp_ac_category INI item
The mechanism of overriding ARP frames with AC will not work since
firmware always defaults to BE. Since this overriding is not going to
be supported, remove the arp_ac_category INI and all areas that use it.

Change-Id: I8bff251ded5842f3d0c95bb916eb98a051696ae0
CRs-Fixed: 2555459
2019-11-07 09:20:25 -08:00
Paul Zhang
c9dbaeea18 qcacld-3.0: Add interface to get / set eLNA bypass
Add interface to get / set eLNA bypass from / to firmware

Change-Id: Idf5d6a838d2596767a1fb00040457af721fba69d
CRs-Fixed: 2498525
2019-09-21 02:46:53 -07:00
Qun Zhang
1b3c85c2eb qcacld-3.0: Add INI to configure SIFS burst mode
To pass WFA 11N 4.2.25 case, it's needed to enable legacy mode
SIFS burst. So add INI to make SIFS burst mode configurable.

Change-Id: I740fe33a7ae0d9b558aa3b3aeee434f482ed24cb
CRs-Fixed: 2486171
2019-09-10 01:02:49 -07:00
Subrat Dash
b1e61b2083 qcacld-3.0: Add support for gpio based strobe to capture tsf
Add configuration for gpio pin used to send strobe to wlan hw.

The host driver will latch the current time and toggle the gpio
to generate a strobe to wlan hw.

The tsf will be latched on detecting the strobe and it will be
made available in a register for sw access.
The wlan fw will read this tsf and report it to driver using tsf event.

Change-Id: I4365d97d22836ddbbd2bf9913d4f723e5a870369
CRs-Fixed: 2495152
2019-08-21 00:06:01 -07:00
guangde
963710d6e8 qcacld-3.0: enable legacy coex feature
Because newest firmware codes already been changed, the previous
coex configure command are invalid. Firmware need host driver
to enable WMI_SERVICE_THREE_WAY_COEX_CONFIG_LEGACY service during
wlan init. Add a new parameter "gThreeWayCoexConfigLegacyEnable" to
initial config file. If this parameter value is zero,set coex
priorities command will return error.

Change-Id: Ief1617e2ba5363e276c55135198613a0e54b71d5
CRs-Fixed: 2482734
2019-08-04 06:23:09 -07:00
hqu
1dd504ae34 qcacld-3.0: Add ini to support BT SCO-WLAN coex
Add ini gBtScoAllowWlan2GScan to support BT SCO-WLAN coex.
Using this ini can control whether allow wlan 2g scan or not
when BT SCO connection is on.

Change-Id: Ia63b1ff92e75937487827c34bca1d2e1c289962d
CRs-Fixed: 2464679
2019-07-04 07:26:51 -07:00
Nirav Shah
0b33219e88 qcacld-3.0: Add logging macros without function/line info
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.

Change-Id: I0bd9248122b4f49274ee05a225ce6f880fede0cb
CRs-Fixed: 2468414
2019-06-11 17:37:28 -07:00
Jiani Liu
6d3b6a16ab qcacld-3.0: Add PTP timestamp socket options TX support
Host need to fill netbuf with qtime instead of tsf. So
host need to add tsf64 enable/disable related functions
and definitions to sync with FW.

The tsf64_time is new added to fw/host structure, so host
need to add parse functions to get tsf64_time from tx_desc.

Change-Id: Ieea0d8f905eb57629d279f8da0e811857b760b1f
CRs-Fixed: 2444456
2019-05-23 22:57:27 -07:00
Subrat Dash
5f36fbef77 qcacld-3.0: Add gettime of PTP for NON-QC platform
Implement NON-QC platform TSF and TSF PLUS.
Implement gettime of PTP.
Implement TSF PLUS for SAP/GO

CRs-Fixed: 2399624
Change-Id: Id4f41a94256a8f035ae408c168c246569185c534
2019-04-09 11:56:39 -07:00
Srinivas Girigowda
d462f3b993 qcacld-3.0: Multiple cleanup regarding access category
1. Replace TX_WMM_AC_NUM/OL_TX_NUM_WMM_AC with QCA_WLAN_AC_ALL
2. Replace SIR_QOS_NUM_AC_MAX with QCA_WLAN_AC_ALL
3. Replace WME_NUM_AC with QCA_WLAN_AC_ALL
4. Fix the typo sme_qos_u_pto_ac_map

CRs-Fixed: 2430527
Change-Id: Id2b4624d60a2bd7dd1471c65699ef0de1b88aecf
2019-04-06 00:15:56 -07:00
Srinivas Girigowda
167ea82cab qcacld-3.0: Replace WME_AC_* macros with QCA_WLAN_AC_*
Replace WME_AC_* macros with QCA_WLAN_AC_*.

Change-Id: I359a8afa48ae6697df41d8f832195c918d57e0ae
CRs-Fixed: 2421732
2019-03-24 17:55:00 -07:00
stonez
c9936cb3ed qcacld-3.0: Add INI parameter to enable/disable MPTA helper
Due to PTA master limitation, zigbee joining network success rate
is low while wlan is working. Wlan host driver need to configure
some parameters including Zigbee state and specific WLAN period to
enhance PTA master. This mechanism is called MPTA helper. The INI
parameter gMPTAHelperEnable is used to enable/disable this feature.

Change-Id: I070c06a00ec2c405540cc40251f5cb7fec211cbd
CRs-Fixed: 2407801
2019-03-15 07:46:55 -07:00
Wu Gao
814ce703b4 qcacld-3.0: Format ini descriptions
Some ini descriptions are different to common, and some of them
include wrong information, so correct them and use unified form.

Change-Id: I36348fb26a03cab254fd309d792125b8a21ad02f
CRs-Fixed: 2402446
2019-02-24 21:34:47 -08:00
Pragaspathi Thilagaraj
a07b727e75 qcacld-3.0: Fix 11k neighbor report parameters copy from fwol component
11k offload params bitmask is sent over the wmi command
WMI_11K_OFFLOAD_REPORT_CMDID. Its value is controlled by the ini
value "nr_offload_params_bitmask". The ini value got from the cfg
component during initialization is not correctly populated to the
sme layer resulting in zero values sent to firmware. This results
in 11k functionality failure.

Populate the 11k values to sme with values stored into fwol
component from ucfg_fwol_get_neighbor_report_cfg.

Change-Id: I8615745083cdab677bca8cbb76eb0902758a8a75
CRs-Fixed: 2397328
2019-02-20 19:02:04 -08:00
Manikandan Mohan
66df7fcdf4 qcacld-3.0: Fix fw offload ucfg APIs for wiphy features
WIPHY features are populated before FW offload object is
initialized. Thus use direct config values for SAE and GCMP
WIPHY features.

Change-Id: Ic1b84c8709a0347fa22773786c0d5af32426e8fc
CRs-fixed: 2376983
2019-01-16 17:09:44 -08:00
Harprit Chhabada
d59ae7648e qcacld-3.0: Clean up adaptive dwell time params CFG
Clean following adapative dwell time params
CFG/INI item.
CFG_ADAPTIVE_DWELL_MODE_ENABLED
CFG_GLOBAL_ADAPTIVE_DWELL_MODE
CFG_ADAPT_DWELL_LPF_WEIGHT
CFG_ADAPT_DWELL_PASMON_INTVAL
CFG_ADAPT_DWELL_WIFI_THRESH

Change-Id: Iebc8507b0eefe52969f928d98473f99d69095480
CRs-Fixed: 2378488
2019-01-15 21:02:09 -08:00
Manikandan Mohan
5dba1c70c3 qcacld-3.0: Use default value of ini items if not initialized
If FW offload cfg object is not initialized before invoking
the ucfg APIs use the cfg defaults for the values.

Change-Id: Ibbfe22a833ab217f670058e504ec80971c98e049
CRs-fixed: 2376983
2019-01-08 05:17:08 -08:00
Manikandan Mohan
d350c194b4 qcacld-3.0: Move offload ini params to converged CFG
Move misc offload ini params to converged CFG component and
cleanup HDD ini config.

Change-Id: I14b3d95dc1577d02230168d305d1d1c4c7fef2fd
CRs-fixed: 2358489
2018-12-28 02:22:55 -08:00
Manikandan Mohan
06d38d8c48 qcacld-3.0: Add 11K offload param to converged CFG component
Update driver to move 11K offload params to converged CFG component
and remove redundant entries from HDD config.

Change-Id: I7703ca5b23d5fa95a3b5dc5ccd9690771a4bf43d
CRs-fixed: 2357708
2018-12-27 01:05:06 -08:00
lifeng
faa83cb69c qcacld-3.0: Refine gFwDebugModuleLoglevel configurations
Refine gFwDebugModuleLoglevel configurations based on converged cfg
component. Remove related legacy codes.

Change-Id: I5a1099872163bdcf0fc2e08478c4b608529db736
CRs-Fixed: 2355599
2018-12-14 07:15:06 -08:00
Manikandan Mohan
9045e2e664 qcacld-3.0: Update for converged thermal throttle params
Update qcacld driver to use converged CFG component for thermal
mitigation throttle offload feature config params. Also cleanup
hdd ini config based redundant entries.

Change-Id: I9c94d1cd7bf9f630ed92ebe0f9f6d6233a216ee5
CRs-fixed: 2358492
2018-12-13 23:21:21 -08:00
Sourav Mohapatra
0dfe5550e0 qcacld-3.0: Relocate HDD ini items (1)
Relocate below HDD ini items as per converged infrastructure.
1. CFG_ENABLE_RUNTIME_PM
2. CFG_STA_KEEPALIVE_METHOD_NAME
3. CFG_ENABLE_MCC_ENABLED_NAME
4. CFG_ENABLE_SAP_SUSPEND
5. CFG_ENABLE_DEAUTH_TO_DISASSOC_MAP_NAME
6. CFG_INFORM_BSS_RSSI_RAW_NAME
7. CFG_AP_ENABLE_RANDOM_BSSID_NAME
8. CFG_VC_MODE_BITMAP

Change-Id: I881c87f9ca73804d03af358163c9a043b3193c81
CRs-Fixed: 2357174
2018-12-06 13:43:56 -08:00
wadesong
3777915910 qcacld-3.0: Add missing CFG INI comment text - wave 2
1) Some CFG INI options' comment text are missing.
   Add them so automation script can parse and retrieve the
   correct comment text.
2) Fix some discrepancies in existing CFG INI comments.
3) Delete some INI items that are not used any more.

Change-Id: Ia2fc4fab70f78e99d14fd1f7f2b4248e6484ee32
CRs-Fixed: 2350612
2018-11-16 05:10:01 -08:00
wadesong
cc2e216a57 qcacld-3.0: Fix some discrepancies in CFG INI comments
Discrepancies between some of the CFG INI names and their comment
text were discovered during reviewing.

Fix them by making all comment text aligning with the real CFG
INI names.

Change-Id: I1bf5417ea79727da451d0d6ca1a5cd100523e49a
CRs-Fixed: 2348140
2018-11-13 08:28:08 -08:00
Pragaspathi Thilagaraj
3cf0f65518 qcacld-3.0: Remove legacy cfg items
Remove legacy cfg items definitions and related macros for the
converged CFG items.

Change-Id: I12944f50d68dafe989417dda777f29a6233c97a4
CRs-Fixed: 2340856
2018-10-29 15:19:08 -07:00
Dundi Raviteja
9ab4e7b4f1 qcacld-3.0: Relocate gProbeReqOUIs ini to FW offload component
Relocate gProbeReqOUIs ini parameter to FW offload component.

Change-Id: Ie3764cfaf3625911a14cc43fb7eaab415f54ece1
CRs-Fixed: 2324746
2018-10-05 11:37:40 +05:30
Sourav Mohapatra
0f3b857e8c qcacld-3.0: Add FW offload INI items (2)
Add the following fw param ini items to the fw offload component

CFG_ENABLE_SMART_CHAINMASK - gEnableSmartChainmask
CFG_ENABLE_FW_RTS_PROFILE - gEnableRTSProfiles
CFG_ENABLE_FW_DEBUG_LOG_LEVEL - gFwDebugLogLevel
CFG_ENABLE_FW_LOG_TYPE - gFwDebugLogType
CFG_RA_FILTER_ENABLE - gRAFilterEnable
CFG_SET_TSF_GPIO_PIN - gtsf_gpio_pin
CFG_DHCP_SERVER_OFFLOAD_SUPPORT - gEnableDeauthToDisassocMap
CFG_DHCP_SERVER_OFFLOAD_NUM_CLIENT - gDHCPMaxNumClients

Change-Id: I296e095cf2a7b83856e1ab777c7dbdcc005ee96a
CRs-Fixed: 2316269
2018-10-04 03:36:45 -07:00
Sourav Mohapatra
d9387d8a67 qcacld-3.0: Add FW offload INI items (1)
Relocate the following ini items to the FW offload component.

CFG_ENABLE_ANI - gEnableANI
CFG_SET_RTS_FOR_SIFS_BURSTING - gSetRTSForSIFSBursting
CFG_MAX_MPDUS_IN_AMPDU - gMaxMPDUsInAMPDU
CFG_ARP_AC_CATEGORY - arp_ac_category
CFG_ENABLE_PHY_REG - gEnableFastPwrTransition
CFG_UPPER_BRSSI_THRESH - gUpperBrssiThresh
CFG_LOWER_BRSSI_THRESH - gLowerBrssiThresh
CFG_DTIM_1CHRX_ENABLE - gDtim1ChRxEnable
CFG_ENABLE_COEX_ALT_CHAINMASK - gEnableAlternativeChainmask

Change-Id: I5046edec1a668e198ed4fcc997a0d24affe342ea
CRs-Fixed: 2312897
2018-10-03 11:47:57 -07:00
Dundi Raviteja
85a240a6c0 qcacld-3.0: Relocate IE whitelist cfg items
Relocate IE whitelist config items to FW offload component.

Change-Id: Idcb665f4d6069c0723b0a8ae17e54d8cbe71239d
CRs-Fixed: 2316597
2018-09-27 23:41:49 -07:00
Dundi Raviteja
47ac70974a qcacld-3.0: Relocate thermal info cfg items
Relocate thermal info config items to FW offload component.

Change-Id: If03507a44041b53aa81837f687914931e8a05ec8
CRs-Fixed: 2316595
2018-09-24 18:55:07 -07:00
Dundi Raviteja
3b63709be9 qcacld-3.0: Add ini params for three antenna BTC mode
Add below ini parameters for three antenna BTC mode and send
them to firmware using WMI command WMI_COEX_CONFIG_CMDID.
1. gSetBTCMode
2. gSetAntennaIsolation
3. gSetMaxTxPowerForBTC
4. gSetWlanLowRssiThreshold
5. gSetBtLowRssiThreshold
6. gSetBtInterferenceLowLL
7. gSetBtInterferenceLowUL
8. gSetBtInterferenceMediumLL
9. gSetBtInterferenceMediumUL
10. gSetBtInterferenceHighLL
11. gSetBtInterferenceHighUL

Change-Id: I69030b6e80ee99912e2f3baced883894d18db0b6
CRs-Fixed: 2298652
2018-09-24 18:55:03 -07:00
Sourav Mohapatra
113685f379 qcacld-3.0: Add support for FW Offload component
This is for adding support for FW offload component. It is responsible
to offload all the ini params that are needed by the firmware. To have
this component, the new files added are

components/fw_offload/dispatcher/inc/cfg_fwol.h
components/fw_offload/dispatcher/inc/wlan_fwol_ucfg_api.h
components/fw_offload/dispatcher/src/wlan_fwol_ucfg_api.c
components/fw_offload/core/inc/wlan_fw_offload_main.h
components/fw_offload/core/src/wlan_fw_offload_main.c
components/fw_offload/dispatcher/inc/wlan_fw_offload_public_struct.h

The fw_offload_main.h is to take care of the public APIs for the
component. The corresponding .c file implements the init/deinit of
the component. The fw_offload_public_struct.h is to define the public
structures needed. The ucfg files are for the APIs that can be called
from other components. The cfg_fwol stores the INIs and CFGs.

Change-Id: I4405b87e6dec15aa94146f8ec550078c3d03b1e6
CRs-Fixed: 2307837
2018-09-12 02:19:15 -07:00