Currently there is no support to configure the inactivity
timeout when driver goes to wow mode or when driver resumes
from wow mode.
Add support for PMO component to configure the wow mode
inactivity timeout with ini g_wow_data_inactivity_timeout
when driver enters into wow mode and when driver resumes
from wow mode add support to configure the inactivity
timeout for non wow mode with ini gDataInactivityTimeout.
CRs-fixed: 2412866
Change-Id: I0672f22a5dfec870e5e67b23058db2729b9a0848
Per the Linux Kernel coding style, as enforced by the kernel
checkpatch script, pointers should not be explicitly compared to
NULL. Therefore within pmo replace any such comparisons with logical
operations performed on the pointer itself.
Change-Id: I3697ede27e074252017e31be23caa93fc25885c5
CRs-Fixed: 2418398
Some malformed comments were discovered when generating
the official documentation of wlan cfg ini items.
Refine the documentation text of the following items
in one batch:
gEnableDynamicDTIM
g_sap_chanswitch_mode
gVhtChannelWidth
gDataInactivityTimeout
Change-Id: I2b1455d0ea27fd35dc0cf66316c7dc3b348ee0ac
CRs-Fixed: 2416086
1) 'ssdp' in t_wma_handle structure is not used anymore,
remove this redundant field.
2) ucfg_pmo_set_sta_mod_dtim and ucfg_pmo_get_sta_mod_dtim
should have been accessing 'sta_mod_dtim' instead of
'sta_dynamic_dtim' in struct pmo_psoc_cfg.
Change-Id: Iedd7bed1c9f637a819f97b6d8c687b784739dd62
CRs-Fixed: 2415087
Some malformed comments were discovered when generating
the official documentation of wlan cfg ini items.
Refine the documentation text of the following items
in one batch:
gEnableVendorVhtFor24GHzBand
hostArpOffload
ssdp
gEnableDynamicDTIM
gEnableModulatedDTIM
Change-Id: I3cd617e52e86e2a890e35edb33b37ba3df8f4f6e
CRs-Fixed: 2414259
Allow SSR during driver resume. Assume firmware goes down during driver
is in suspend state. Avoid get into bad state and wmi access during driver
resume.
Change-Id: Ie1689e0b080f940666fbbb19c9f0e3b0fecfe564
CRs-Fixed: 2412130
In SAP mode apps should wake up to handle the client kick out event
from fw and delete the remote peer such that remote peer is not hanging
in partial connected state when apps is in power save mode. Mark client
kick out event as wake event in SAP mode such that apps can wake up and
properly disconnect the kicked out remote client.
Change-Id: I9e2e56820be0bed8019d2fb810a12a129deadd37
CRs-Fixed: 2410124
Currently while copying the MC address list, PMO
checks for the IPv6 router solicitation address. If this
address is found in the source list then this address is
ignored but the hole is created in the destination list.
As a result of this hole, FW does not filter the packets
for the last configured MC address in the list.
To mitigate this issue, add the correct logic of copying
the MC addresses from source list to destination list when
IPv6 router solicitation address is found in the source list.
Change-Id: If9412933d30259e7260e4d9e11cc514dec964355
CRs-Fixed: 2403419
The session_id field in struct pmo_wow_add_pattern does not serve any
purpose, so remove it.
Change-Id: I477b74c1360f124fb493440a8289fb2a4382c6d5
CRs-Fixed: 2404828
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
Legacy WNI CFG items are refactored into new CFG implementation.
PMO uses a wma callback which uses cfg_get API to get listen
interval. Listen interval is now part of the MLME component's
private object. Define API's to get this value and use it instead
of the callbacks.
Remove WMA callback implementation and use new API that gets
listen interval from MLME component.
Change-Id: I797001ea14cc654f9daee3ce297e1ad0c0a08f2a
CRs-Fixed: 2386725
By design, when APF is supported by target, RA filtering need
not be configured. Legacy code handled this by passing INI value
of RA rate limit value to WMA and intersecting it with APF
enabled flag. Change Iabb75b46fce64b2c4a7a303848d7cb6b4714253b
replaced this implementation by a single check in PMO. So remove
the WMA legacy code since it has no purpose now. Also remove
unused PMO prototypes pmo_update_ra_limit and
pmo_update_target_service.
Cleaunp the WMA code that intersects RA rate limit and APF
variables.
Change-Id: I870a1271a627d47242000f5e04068e628f567216
CRs-Fixed: 2379745
Change I3b1ee6254de158ad6408dc8c61e83be571e180af refactored 3
APF related INI's into CFG framework. This was merged with a
a copying error causing INI string "gActiveMcBcBpfMode" being
replaced by "gActiveUcBpfMode". Fix this by correcting the
string name.
Fix copying error by replacing with the correct INI string.
Change-Id: I41576b1b22287f7c0fd751ce96ceddb8f7cbc62a
CRs-Fixed: 2393504
Change I1f668fff633a5e5cdfc478e7f619e9600930b333 ("qcacld-3.0: Use wma
callback to get vdev dp handle") removed the implementation of
pmo_ucfg_vdev_update_dp_handle(), but left behind the stub
implementation for use when PMO is disabled. This stub, since renamed
to ucfg_pmo_vdev_update_dp_handle(), is unused, so remove it.
Change-Id: I042ea081a4c2e5288963f7882129d06667e5b707
CRs-Fixed: 2380780
Change I47cce6123566b67d4aa0c56f1cf6738f4fdbf77d ("qcacmn: Initial
power manager offload skeleton") included a prototype for function
pmo_dump_wow_ptrn(), but not an implementation. Since subsequently
an implementation was never added, remove the unused prototype.
Change-Id: I4fda06ef5cabdbff069e542319a9d5296a0e932a
CRs-Fixed: 2380102
Fields nlo_in_progress and nlo_match_received in struct
pmo_vdev_priv_obj are unused, so remove them.
Change-Id: I4152e55e407628bbcc32118aa702770a401cfe3b
CRs-Fixed: 2379076
Update the PMO packet filter APIs to make sure the parameter names
in the prototypes match the ones in the implementations and in the
documentation.
Change-Id: I7fd924d17edb54c690e8ef5b85d4829a4a165edc
CRs-Fixed: 2379075
Based on new cfg framework, refactor below WNI and INI cfg items:
- WNI_CFG_PS_WOW_DATA_INACTIVITY_TIMEOUT
- g_wow_data_inactivity_timeout
- gDisablePacketFilter
Change-Id: I9a975263021ba4fd5ccea19ed1147a661f73317f
CRs-Fixed: 2375866
Use qdf_trigger_self_recovery instead of QDF_BUG for runtime PM
resume failure case as qdf_trigger_self_recovery can handle more
scenarios gracefully.
Change-Id: Iff0348fafb1be82f46400099e3cd551c079eea74
CRs-fixed: 2377677
RA filter is getting configured while APF is supported.
Since APF implementation internally handles RA filtering,
this is not needed. Therefore if APF is enabled in INI
and target supports it, do not configure RA filtering.
Don't configure RA filtering when APF is supported.
Change-Id: Iabb75b46fce64b2c4a7a303848d7cb6b4714253b
CRs-Fixed: 2352248
LPASS is driver specific feature which is controlled by INI item
and similarly NAN is also driver specific and not vdev specific
hence decouple PMO lpass and nan feature get APIs from vdev to
psoc.
Change-Id: I152f8b909cf85e412c2fa72a2e7147a1505e60e1
CRs-Fixed: 2361991
Currently if a vdev is destroyed, wow patterns are not
getting cleared for that vdev, so when a new vdev is
created, host tries to configure new wow patterns for
this new vdev but due to FW limitations on number of
wow patterns that can be maintained at FW, FW is not
able to act on this filter and will not maintain this
new wow filter.
To resolve this issue, clear the wow patterns for the
vdev before it gets destroyed.
Change-Id: Iae7ad8b683c95d8eaf11355bc0e36b91cece2202
CRs-Fixed: 2344337
To keep names of PMO ucfg APIs consistent, change some of them from
"pmo_ucfg_xxx" to "ucfg_pmo_xxx".
Change-Id: I77165be8c5c408c3f91f84a477c15be1c6ea15e8
CRs-Fixed: 2334109
PMO returns failure codes for enable/disable of NS and MC List offloads
when their respective configurations are disabled. As this is expected
behavior, return success instead.
Change-Id: I91b00da9b4026f5975c14f5889cd913b13e1347b
CRs-Fixed: 2323312
Based on cfg component, define PMO configures and add APIs to get or
set configures.
Change-Id: I9b9ff1f8701168787985cbcb219361a3f63c787f
CRs-Fixed: 2322176
This change Removes legacy APIs to modify vdev state machine and
add use new API to get vdev state.
Change-Id: I48aa3744dafc6d13a43a14e48de821c7dadf3a37
CRs-Fixed: 2314730
Add debugfs entry to get offload info (mc addr list, arp, ns etc.,)
for STA interface.
Change-Id: I8bf4491929b5ef04ed5ce19f4b0030945f0eb0c0
CRs-Fixed: 2203786
Update driver to use NAN config params based converged CFG
component. Cleanup hdd config references to nan ini params.
Change-Id: I5af85d68ee53ad557e64523f7a1719e328536926
CRs-fixed: 2290360
Add per module logging macros without function/line info
to avoid adding function/line info where it is not required.
Change-Id: Id808fef623b82cec38fc31071ef384f3ff0c92da
CRs-Fixed: 2278874
Map all enter/exit log macros to enter/exit QDF TRACE macro
to provide option to compile out enter/exit logs if required.
Change-Id: I0c6cd633705e820fcfeb47e3f81a3522c9ef1974
CRs-Fixed: 2274850
Currently, errors are logged if a given offload feature is disabled
while suspending the wlan driver. Instead, simply return success for the
configuration of those features which are disabled, since nothing needs
to be done. This also has the side effect of avoiding meaningless error
logs for situations which are not error conditions.
Change-Id: I1d897d8db066e642e1cc6e77daff0f44172cefe8
CRs-Fixed: 2282040
Multicast address filtering only makes sense if the interface is
connected and capable of receiving traffic. Avoid enabling/disabling
the multicast address filter list on an interface that is disconnected.
Change-Id: Id8aff136e920bb726b8c7dd539d477ff44f080d4
CRs-Fixed: 2282003
Currently the host sends the fixed gtk offload params
and the FILS TLV params, even when the FILS feature is disabled
in the host, which force firmware to pick the KEK from the
FILS TLV structure rather than from the fixed param structure,
which further leads to GTK re-keying feature fail.
Fix is to send only the fixed params in case when host doesnt
supports FILS.
Change-Id: I5b3b3fd503c7cb9c4d7933074fd483086b113204
CRs-Fixed: 2244725
QDF_DEBUG_PANIC has recently gained a reason parameter. Move instance of
logging followed immediately by QDF_DEBUG_PANIC to single calls.
Change-Id: I6633296fb1c82a3945cedc967de222410b9f5d9b
CRs-Fixed: 2274413
User can override the Listen Interval value set during association
by using wifi config set vendor command. Since there is no limit
check in host, a very high value causes an assert in the Firmware.
Add an upper limit check on the user Listen Interval value.
Change-Id: I8128ccbb875adf57c95a15d0391fb442d3dbbbc3
CRs-Fixed: 2256334
Currently while going to suspend, dtim parameters are not
correctly getting configured. Some other parameters to config
like the inactivity timeout are completely skipped as well.
Cleanly port the setting of dtim and other parameters during
suspend and resume.
Change-Id: Ic41a8ace3f5650e53f2dcaa416bfe241b87aa88d
CRs-Fixed: 2248160
The tSirRetStatus definitions are obsolete, so replace them with
QDF_STATUS definitions in the pmo component.
Change-Id: Ia23e1d0eed5a88b0cb1caf4feebd535d36ca2690
CRs-Fixed: 2261705