Commit Graph

71 Commits

Author SHA1 Message Date
Divyajyothi Goparaju
bce9e688e7 qcacld-3.0: Add firmware_default mode support for elna_bypass
Previously elna_bypass is of type bool, which check for
elna_bypass enabled or disabled with en_dis

Change en_dis to elna_mode of enum extlna_mode
to support extra mode of firmware_default

Change-Id: I12dfe3a07e04b102562b11c8235d56bd3e2a7059
CRs-Fixed: 3169266
2022-04-15 05:11:35 -07:00
Alan Chen
34e8c569ca qcacld-3.0: Enable pci gen switch feature by default
Enable pci gen switch feature by default since the ini will not take
effect unless the feature flag is enabled in FW too.

Change-Id: I4170ddc84e994829e1f8144d3a90deddfe71f280
CRs-Fixed: 3162231
2022-03-29 21:56:18 -07:00
Subrat Dash
19e3d0b415 qcacld-3.0: Add support for WDS repeater feature
Enable source port learning for SAP to add AST entry for the
remote stations with next hop. The SAP should use 4-address
frame format for the remote destinations.

Add support to handle data packets for WDS destination.

Change-Id: I6002e6dd9c9bb2c7b2e4f85bf06156dbb7feebee
CRs-Fixed: 2997812
2022-03-24 01:44:27 -07:00
Sachin Ahuja
b7dae4ffb4 qcacld-3.0: Check Thermal throttle service caps for get temp
Currently when get temperature is queried, both
gThermalMitigationEnable ini and WMI_SERVICE_THERM_THROT service caps are
checked in the driver.
gThermalMitigationEnable ini means the thermal throttling will be done
by driver if enabled and will be done by FW if disabled.

So, set this ini as 0 by default in the driver as thermal throttling
is done by FW and check only WMI_SERVICE_THERM_THROT service while
get temperature is queried.

CRs-Fixed: 3139693
Change-Id: I28e2b6cfca6ea7bf60d81045ba267e019143f3a8
2022-03-15 12:15:03 -07:00
chunquan
03c551de67 qcacld-3.0: Rename files with blacklist/whitelist
Rename files with blacklist/whitelist to denylist/whitelist.
Rename files with blm to dlm.

Change-Id: Ief7ce0a797f74460c9708f8d2dd440412af5b7eb
CRs-Fixed: 3099864
2022-03-14 08:50:05 -07:00
chunquan
f07969a044 qcacld-3.0: Replace blacklist/whitelist for denylist/allowlist
Replace blacklist/whitelist with denylist/allowlist in
qcacld3.0. and replace blm with dlm.

Change-Id: I9ba61dde3b3ea008ca3777448d1f8dab83d33ec1
CRs-Fixed: 3091211
2022-03-05 07:10:49 -08:00
VIJAY RAJ
3d11cb41da qcacld-3.0: Add OFDM Scrambler seed ini support
Add "gEnableUpdateScramSeed" ini support to send
WMI_PDEV_PARAM_EN_UPDATE_SCRAM_SEED command to firmware
to enable OFDM scrambler seed.

Change-Id: Ie5c244a7ea418eec0af1f576e8521804ee85a665
CRs-Fixed: 3106348
2022-02-03 09:29:06 -08:00
Ashish
86ceade63b qcacld-3.0: Enable Thermal mitigation control by default
Based on new requirement enable gThermalMitigationEnable
by default from code.

Change-Id: Ib353b75c18d13cea9982061558f1d125b0b3d411
CRs-Fixed: 3080737
2021-11-26 15:08:25 -08:00
Alan Chen
fb87ff490c qcacld-3.0: Enable more WoW logging modules
Enable more WoW logging modules to help with debugging by changing ini
gFwDebugWowModuleLoglevel=1,3,5,3,18,1,19,3,31,1,36,1,57,3.

Change-Id: Ib42e16188c2572d04971be0e28836797286faeac
CRs-Fixed: 3042611
2021-09-30 15:14:53 -07:00
Utkarsh Bhatnagar
ac66479f44 qcacld-3.0: Add support to get thermal throttle stats
Add support for sending WMI_REQUEST_THERMAL_STATS_CMDID
to request for the thermal stats via vendor cmd:
QCA_WLAN_VENDOR_ATTR_THERMAL_CMD_TYPE_GET_THERMAL_STATS
This vendor cmd can either be used to clear the thermal
stats or to request for the thermal stats.
Added ini gThermalStatsTempOffset, which can
configure thermal temperature offset value for capturing
thermal stats in  thermal range such as Thermal STATS
starts capturing from temperature threshold to temperature
threshold + offset.
If this ini is set to 0, then the events are disabled.
Also, add support for the FW event where the requested
thermal stats are sent in FW event
WMI_THERM_THROT_STATS_EVENTID().
The following attributes are sent in the events for every
level:
	STATS_MIN_TEMPERATURE
	STATS_MAX_TEMPERATURE
	STATS_DWELL_TIME
	STATS_TEMP_LEVEL_COUNTER

Change-Id: If8acdeec5bde33be346332ccaf39d78d0151203d
CRs-Fixed: 3016818
2021-08-27 10:23:21 -07:00
Aditya Kodukula
152f278973 qcacld-3.0: Enable WLAN_MODULE_WPM logs by default
Enable the firmware module WLAN_MODULE_WPM with error log level
in wow mode by adding default values in the ini gFwDebugWowModuleLoglevel.

Change-Id: I53a729bde6cfb6d8141864472718a2d8da9efead
CRs-Fixed: 3022434
2021-08-26 03:40:17 -07:00
Aditya Kodukula
e5d87bf5d6 qcacld-3.0: Support Multicast Domain Name Server Offload
The purpose of the multicast Domain Name System (mDNS) is to resolve
host names to IP addresses within small networks that do not include
a local name server.

It utilizes essentially the same programming interfaces, packet formats
and operating semantics as the unicast DNS, and the advantage is zero
configuration service while no need for central or global server.
Based on mDNS, the DNS-SD (Service Discovery) allows clients to discover
a named list of services by type in a specified domain using standard
DNS queries.

Here, we provide the ability to advertise the available services by
responding to mDNS queries.

Change-Id: Id2a0468d49237c21062cfd1988e34903658cdad9
CRs-Fixed: 3008549
2021-08-20 22:02:01 -07:00
Liangwei Dong
11611472b1 qcacld-3.0: Avoid duplicated thermal level change event
At present, duplicated thermal level change events are reported
on different mac with different pdev id from target. To report
the lowest pdev id's thermal level to avoid confusing the user.

Change-Id: Ia1f497ba1a1e0af946b87924de80b9fd39fe95e8
CRs-Fixed: 2976437
2021-06-29 03:54:09 -07:00
Jyoti Kumari
51ef091ec3 qcacld-3.0: Change default value of ILP profile
Change default value of ILP profile as 1

Change-Id: I3b3f39ce5c57eb4bd90456db3302482e4f87bc88
CRs-Fixed: 2968689
2021-06-15 12:22:10 -07:00
Utkarsh Bhatnagar
e649bde5af qcacld-3.0: Add ini to configure BLE scan policy
Add gConfigBleScanCoexPolicy which can be used to
control performance of ble scan case.
’0’ to place more emphasis on BLE Scan results
‘1’ to place more emphasis on WLAN performance

Change-Id: I46c735d8695523d14f6372bc5e47d1d1f51589ae
CRs-Fixed: 2935051
2021-05-07 05:05:01 -07:00
Nirav Shah
1932ac5950 qcacld-3.0: Add ini to enable/disable TSF sync feature
Add ini to enable/disable TSF sync feature.

Change-Id: I84139f14ac7d01fb2cc52e84a9a817e644a05c77
CRs-Fixed: 2932588
2021-04-30 14:46:50 -07:00
Aditya Kodukula
edfbff8b2a qcacld-3.0: Remove INI parameter gEnableLPRx
As part of WiFi ini clean-up FR, the ini parameter gEnableLPRx,
is identified as it is no longer used. Hence it can be deprecated,
and all instances of the config CFG_LPRx is removed.

Change-Id: I77f8f6839534c9a79cb3c7414582a5f31b87c561
CRs-Fixed: 2896027
2021-03-29 17:47:08 -07:00
Jyoti Kumari
b4bd50e631 qcacld-3.0: Change default value of ILP profile ini
Change default value of ILP profile ini to 2 which means max
power saving.

Change-Id: I63777b780eece065ce7c77ba455fadff223b9888
CRs-Fixed: 2895677
2021-03-09 23:21:09 -08:00
Jyoti Kumari
c56269e87a qcacld-3.0: Enhance existing ILP profiles setting
Currently, there are two ini option 0/1 to disable/enable ILP
profiles in HW.

Extend this option upto 3 where
0 indicates disable
1 indicates perf settings
2 indicates max power saving
3 indicates balanced settings

Change-Id: Iff41b92b84309a670e2ad301ee72fb3caaba3df3
CRs-Fixed: 2886526
2021-03-01 13:15:17 -08:00
Abdul Muqtadeer Ahmed
fdd65fd9ea qcacld-3.0: Add a new ini param to enable PCI gen switch
Add a new ini param to enable/disable PCI gen switch

Change-Id: Ie8c61dbfb9834aac96a95eb935521e1bc4b3b835
CRs-Fixed: 2865861
2021-01-29 20:57:06 -08:00
hqu
46d7e82b98 qcacld-3.0: Move code from csr to rso for 11k offload
Move code from csr to rso for 11k offload.

Change-Id: I8930ca381a8af45e39d3ed69cb1614ccc363f766
CRs-Fixed: 2861183
2021-01-24 02:52:02 -08:00
Bapiraju Alla
3e83a3e527 qcacld-3.0: Add an INI param to configure HW assist feature in FW
HW assist is a FW feature and it is enabled by default. But there is
no provision to disable/enable this feature based on requirement.

To address this, add INI param to enable/disable HW assist feature
in FW.

Change-Id: Icdc4a842be4d5c6991a785ee270f61ba87fcfe79
CRs-Fixed: 2841346
2021-01-07 12:30:54 -08:00
hqu
4b3b2782e7 qcacld-3.0: Add ini to set init chain mode for BTC
Add ini to set init chain mode for BTC, default value should
be set to the same as macro WLAN_COEX_BTC_CHAIN_MODE_UNSETTLED
that means no need to send init chain mode for BTC to firmware
in wma_vdev_pre_start() process.

Change-Id: I3051a7f8a0c708c7df40d1b95b46e0bfa6892f6c
CRs-Fixed: 2837173
2020-12-15 19:43:22 -08:00
Abdul Muqtadeer Ahmed
70ea08a0fe qcacld-3.0: Add new INI param for SAP SHO configuration
The SHO feature is used to offload beacon/probe response to HW.
So a new  vdev param is required to enable/disable this feature.

Change-Id: I83d71d63485dee8d3433bf967a7feb56c1039f93
CRs-Fixed: 2815270
2020-11-18 01:24:57 -08:00
Aditya Kodukula
d4456eeac6 qcacld-3.0: Add INI param to configure wow-mode logging
Add an INI to configure the wow-mode logging config.

So that,the fw would use this bitmap for logging when it
is in wow mode.

Change-Id: Ib2fbd0c5c9cc573b2f5b12dcdf06682c16550cb2
CRs-Fixed: 2810372
2020-11-05 01:20:26 -08:00
Liangwei Dong
e8a9b19747 qcacld-3.0: Handle thermal stats event from target
Handle firmware thermal stats event and populate the thermal
information to upper layer with vendor command event.

Change-Id: I83286367ab542c08a205a7636f3d03189b0500e5
CRs-Fixed: 2786623
2020-10-23 10:03:04 -07:00
Alan Chen
827413768c qcacld-3.0: Remove gOclCfg ini
gOclCfg is no longer supported and is being overwritten by
FW init config. Thus, remove gOclCfg ini from code.

Change-Id: Idf4d5280043a47650a68dc2159c386d94b0be5e9
CRs-Fixed: 2791392
2020-10-12 22:11:01 -07:00
Bapiraju Alla
c14b1a5da6 qcacld-3.0: Update default value for gFwDebugModuleLoglevel INI param
Enable firmware debug logs for module ids 1 and 8 by default.

Change-Id: Ib4825d7d341614b6a1c761ed9819d0489d7e1cf7
CRs-Fixed: 2786748
2020-10-06 06:50:32 -07:00
Liangwei Dong
662bade898 qcacld-3.0: Add INI to configure thermal action
There is customer requirement that once wifi chip overheat,
we should switch the tx chain mask to 1X1 to cool down the
chip instead of halting the tx completely.
Add new INI gThermalMgmtAction to configure thermal mgmt action
with default 0. The valid thermal mgmt action INI value is defined
as enum thermal_mgmt_action_code. To set it to 3 -
THERMAL_MGMT_ACTION_CHAINSCALING to meet customer requirement.

Change-Id: I88b1237fae1f476ad9ff0e7b5a469ec314a42bf9
CRs-Fixed: 2765289
2020-09-15 11:38:26 -07:00
Arun Kumar Khandavalli
92d2e8b530 qcacld-3.0: Add thermal mitigation support for moselle
For older targets thermal mitigation is supported for the apps.
In moselle there a new processor wpps on which firmware runs,
this commit adds the support for the thermal client wpps.

Change-Id: I89896dce808807486ef56b90812369f3d5f4b270
CRs-Fixed: 2757566
2020-08-24 22:03:56 -07:00
Abdul Muqtadeer Ahmed
ca927cfcd7 qcacld-3.0: Add INI param to enable/disable ILP HW block
ILP is a new hardware block which is used for PCIe powersave but
this can effect the throughput.

So to isolate the throughput issues, add ini param to
enable/disable this ILP hardware block using the ini configuration.

Change-Id: I19825af8598bbc2623542256e873367c2f3d29bd
CRs-Fixed: 2756587
2020-08-20 15:42:08 -07:00
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
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
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
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