The driver currently defines two different data structures to hold
Gateway Update parameters:
- legacy struct gateway_param_update_req
- unified WMI struct gateway_update_req_param
To align with the converged software architecture remove the legacy
definition and exclusively use the unified WMI definition.
Change-Id: Icc56c4d83808e3661593d2e4735533442d48eb7e
CRs-Fixed: 2404089
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
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The roam_offload_synch_ind typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.
Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.
Change-Id: Ieb91f75f4444873ab465d419409d46c05c65b091
CRs-Fixed: 2396068
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirRoamOffloadScanReq typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.
Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.
Change-Id: I3e7d5bd70618d132cc028b978583e55c729a2c21
CRs-Fixed: 2396066
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirHostOffloadReq typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.
Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.
Change-Id: I21970981e7a128f71abdd601181c596b9b32320b
CRs-Fixed: 2396064
As per new requirements to debug game latency related issues,
implement an iwpriv command which:
1) sends a bitmask to FW's Wireless Latency Manager module (WLM).
2) receives from WLM a measurement header along with measurement data.
3) converts both the header and data to a hexadecimal encoded string.
4) returns the hexadecimal encoded string to userspace
Change-Id: Ic79c4b757fe2d4e806306750250e3c102745c486
CRs-Fixed: 2388920
As part of the effort to use a single definition for the maximum number
of vdevs, replace WMA_MAX_SUPPORTED_BSS with WLAN_MAX_VDEVS.
Change-Id: I7f0bd615b65e21dc0052933d5e194ca650336b42
CRs-Fixed: 2393167
WNI CFG needn't to download since all wni cfg refactored based on new
cfg framework, so remove WNI_CFG_DNLD_REQ.
Change-Id: Icd85b7797fcbc41debe55edb6b1f68478797d726
CRs-Fixed: 2387589
Clean up CFG_MAX_SCAN_COUNT CFG CFG item.
Remove ini for max_scan_count. Use WLAN_MAX_ACTIVE_SCANS_ALLOWED
to initialize max_scan_count and send to firmware.
Change-Id: I52e07b63a82297d30f2532bc5a8e05004877b141
CRs-Fixed: 2382308
Since all wni cfg is refactored based on legacy new cfg framework, no
legacy cfg files is needed now. Cleanup related files in this change.
Change-Id: If46ae4c59f1010a655aa65e3502fc0c660e33cdc
CRs-Fixed: 2383387
Refactor firmware, serialization and command timeouts so that
HDD timeout are greater than serialization is greater than firmware
timeout.
The timeouts are defined considering below worst case delay in
firmware.
WMI_VDEV_START_REQUEST_CMDID 6 sec
WMI_VDEV_RESTART_REQUEST_CMDID 6 sec
WMI_VDEV_STOP_CMDID 2 sec
WMI_PEER_DELETE_CMDID 2 sec
WMI_PEER_ASSOC_CMDID 2 sec
WMI_PDEV_SET_HW_MODE_CMDID 2 sec
WMI_PDEV_SET_MAC_CONFIG_CMDID 2 sec
Change-Id: I270e980ed1cf2aee55a1fa4e88ff8ddc845a203b
CRs-Fixed: 2384389
If FW supports thermal throttling feature, add iwpriv and wmi
interface for configuring thermal throttle params.
Disable throttling in driver if FW supports thermal throttling.
Send Thermal configuration controls via WMI commands to fw
Added iwpriv command for user to control throttling
Added code under flag FW_THERMAL_THROTTLE_SUPPORT
CRs-Fixed: 2367015
Change-Id: Ie18016d23d151873e28781d3fac6e6d60245191d
In wmi_process_fw_event_default_ctx, Use same call
signature for MCL as WIN for wma_process_fw_event_handler
Change-Id: Ie361dd762c97667f4ee5bc3bb67fd0d39fbcae94
CRS-Fixed: 2372982
It set roam offload flag to FW when vdev type is sta in
wma_vdev_attach, FW team think this isn't reasonable since it wastes
FW memory if sta isn't disconnected. And required to set this flag
when connected to AP, remove this flag after disconnect from AP.
Change-Id: I5edfb8d5a2cec0e2ffdf34349c99d477860f1339
CRs-Fixed: 2367135
iwpriv interface is added for configuring Motion detection
feature specific parameters
Added under flag WLAN_FEATURE_MOTION_DETECTION
Change-Id: Ic20c8c43782cf037317f412962fab4a6928eb0b9
CRs-Fixed: 2376722
In the scenario where vdev response is not received for
SAP start, HDD timer of 10secs expires ahead of vdev
response timer, which is of 12secs due to slub debug
factor. This can result in change interface to be
triggered by supplicant before fw down indication is
received. Vdev is logically deleted and peer removal
in objmgr fails due to vdev get_ref failure resulting
in peer leak on wlan shutdown.
Fix is to remove slub debug factor for vdev response
timeouts.
Change-Id: Id0741226ccaebbabb817853246c7b116bd447128
CRs-Fixed: 2376610
Change I414269abb5a5c616cc890dab450a7782e6829d0e ("qcacld-3.0:
Management MGMT TXRX component over HTT") removed all usage of the
legacy umac_ota_ack_cb[] array in t_wma_handle. However it left behind
the actual unused array, so remove it.
Change-Id: Ia909360edefeb413025e8d437199a3f21c808030
CRs-Fixed: 2378329
Make changes to the legacy code to support the
new SET KEY converged infrastructure.
Change-Id: Ic5359e3a9035ac5f2a937a9a1013fa92764cda9d
CRs-Fixed: 2358795
The following macros are unused, so remove them:
- WMA_DEFAULT_QPOWER_MAX_PSPOLL_BEFORE_WAKE
- WMA_DEFAULT_QPOWER_TX_WAKE_THRESHOLD
Change-Id: I9b0f760ebbadbdecf9549a813a9b72e07a97a9e8
CRs-Fixed: 2375433
Change I654e53fa2441e03723f150d973c124985c67f2b4 ("qcacld-3.0: Add new
params in ACS calc process") introduced macros WMA_CHAN_START_RESP and
WMA_CHAN_END_RESP, but did not add any code which uses them. Since
they are unused, remove them.
Change-Id: I7a5f20cb8e72c19f52d5a44afb3b480eaa84c06b
CRs-Fixed: 2375431
Change I840c6a5f83c6cdc479e6746f36a29c2a7970c964 ("qcacld-3.0: Remove
wma_get_buf_extscan_start_cmd()") removed the only usage of macro
WMA_SCAN_NPROBES_DEFAULT. Since it is now obsolete, remove it.
Change-Id: If4907fcc397ba77bd58d8423b1695896a7197597
CRs-Fixed: 2375430
Change I33b56bb627ac914ca6fe96949de373b015853fc9 ("qcacld-3.0:
Decrease tx drain wait time during del bss") removed the only
usage of macro WMA_TX_Q_RECHECK_TIMER_MAX_WAIT. Since it is
obsolete, remove it.
Change-Id: Iec4ad45efcd7bc407f639226f7aa21ed39d753e9
CRs-Fixed: 2375429
The enable_mhf_offload and last_mhf_entries_timestamp fields of
t_wma_handle are unused, so remove them.
Change-Id: If07fa52f93caa0c2f2bb191603c6a96830dad469
CRs-Fixed: 2374844
Make sure to initialize global target_if before soc create
as part of this psoc notifications are registered.
Change-Id: Id5491a2aac49450774532fe69ee24e18c9a7c594
CRs-Fixed: 2351426
Add host support for db2dbm RSSI changes. Firmware
indicates this capability when underlying hardware
has RSSI reporting feature. Based on this capability
host will know if firmware sends SNR or RSSI. If no
capablity is present then host will convert SNR to
rssi using a fixed offset of -96. If capability is
present host will directly use the rssi as it is.
Change-Id: I9058f16c6280d466feb96cf88a8a0d8cd7b02032
CRs-Fixed: 2364023
Change Ib9cdaf7e8aa019002b9fc02d8ffacfcdb28fc121 ("qcacld-3.0:
Remove sme_ipa_uc_stat_request()") removed the last client of
wma_ipa_uc_stat_request(). Since this function is now obsolete,
remove it.
Change-Id: I965ccad2e94246c0d7d57e85c1fa433eeb5c136e
CRs-Fixed: 2371196
The is_nan_enabled flag in wma_handle_t is written but never read.
Since it is unused, remove it along with the logic that writes it.
Change-Id: I3e7d09ac1ab77427d37a8a45ca5f1612b05c5339
CRs-Fixed: 2370875
Previously change I5828002d2363e01f63b0a643a0c59abd52bc4f19
("qcacld-3.0: NAN datapath cleanup") removed the code that uses
the pe_ndp_event_handler but did not remove the field from the
t_wma_handle structure, so remove it now.
Change-Id: I4b23e55fcdb8178d6a272fd46094af5505b94cc7
CRs-Fixed: 2365061
The file cds_ieee80211_common.h contains a large number of macros that
are used to describe most fields in IEEE 802.11 frames. Despite that,
currently WMA has an enum ds_mode to represent the Distribution System
Mode settings. In order to avoid unnecessary duplicate definitions
remove enum ds_mode and instead use the cds_ieee80211_common macros.
Change-Id: I0dc722009e063a1eac0da4afbe77f96772c583b2
CRs-Fixed: 2365060
Previously change I750870ccbe84e817954a3ee1a50e2e8daa5ab661
("qcacld-3.0: Remove obsolete P2P Listen Offload from WMA") removed
the only code that used the p2p_lo_in_progress field in struct
wma_txrx_node. Since it is now obsolete, remove it.
Change-Id: I9e9247a578fb07ef8089f2b5eb544e4e6595244a
CRs-Fixed: 2365059
Previously change Iba16643adf1cbd997138c740345e40c00c8e81f6
("qcacld-3.0: Add Suspend and Resume support in PMO") relocated
Suspend/Resume support from WMA to PMO. However that change left
behind in WMA some remnants that are no longer useful such as the
wma_resume_event, so remove them.
Change-Id: Icf35bafd8fdacdbdc71cfb4309a8bd15bfb1a244
CRs-Fixed: 2365057
Previously change Id965dd8ee0fbddfa563335fd2fe225dcd20cd162
("qcacld-3.0: Port modulated dtim and override listen interval")
relocated support for configuring Modulated DTIM and Listen Offload
from WMA to PMO. The associated enumerations in enum GEN_PARAM are now
obsolete, so remove them, along with their default value macros.
Change-Id: Iac88c4b5578c24b6fcaefb935459f6e988892a1a
CRs-Fixed: 2365055
Although the implementation has been removed, the prototype for
wma_update_vdev_tbl() is still present, so remove it as well.
Change-Id: Ifcf10e97d0bc24bdf88c69f936e998b228ec945b
CRs-Fixed: 2361930
Do not unmap mgmt_tx nbuf for HL as the mgmt_tx nbuf is not mapped
in case of HL.
Change-Id: I1e7bf3af09dea357075d897974d3a59e0b439ae4
CRs-Fixed: 2349234
The primary data structure used within the protocol stack is currently
named sAniSirGlobal. This naming is problematic for two reasons.
First, the "Ani" and "Sir" are archaic references that should be
replaced throughout the driver. Second, camelCase is frowned upon by
the Linux coding style. In order to address these issues, rename
sAniSirGlobal to mac_context.
Change-Id: Ibaaeb5296e42a24c66d4adf4f720d32a9ae41888
CRs-Fixed: 2345128
When SSR is in progress, when trying to remove self peer, if
wma_remove_peer() is failed then wma_vdev_detach() doesn't send del sta
response and wma_self_peer_remove() can still proceed to start vdev
hold request timer. This can lead to skip of vdev reference count
release by wma acquired during vdev attach.
To address this, release vdev reference count when self peer remove is
failed and when del self sta request is timed-out.
Change-Id: I2703261a848983b10798cb8ec74d1cec5a393ce5
CRs-Fixed: 2342453
In error cases of set hw mode, set dual config etc are not handled
in all scenarios and thus the active cmd is not removed in this case
resulting in active cmd timeout.
Fix this by handling and sending failure resp for all the error
scenarios.
Change-Id: I21151798f58bf9816458430d96c7fd1d5f0ee07f
CRs-Fixed: 2341816
Protocol stack supposed to be HLOS-agnostic, but there is some use of
Linux fixed-width types u8, u16, and u32. These should be replaced with
C99 fixed-width types uint8_t, uint16_t, and uint32_t so that they will
correctly be HLOS-agnostic and work on non-Linux targets.
CRs-Fixed: 2326407
Change-Id: I8f9099a0170e4f94a54cdd6cc6c2e321a29af717
Featurize MCL only WMI APIs by compiling them as a separate source.
It enables profiles/configs to selectively compile the WMI APIs
based on whether the feature is required or not.
Featurize WMI APIs and TLVs that are specific to MCL -
- DSRC
- NAN
- P2P
- PMO
- roaming
- concurrency
- STA
- Generic MCL specific WMI (STA)
Change-Id: I3b005b8f60491c7d27cf221b7505116e1b9c1a38
CRs-Fixed: 2333916
Since refined PMO configures based on converged cfg component, apply
PMO configurations, remove related legacy codes.
Change-Id: I2cdf18c1000d8cc923c80c00bf530b2b0c60563e
CRs-Fixed: 2322185
Restrict the band of PCL to the connected band if
intra band roaming is enabled
Change-Id: I78e9a29d7f8eb226e899e944e4d2980629c52a01
CRs-Fixed: 2302607