Add the following WLAN_REG ini configs and FE_BEAMFORM
cfg items to MLME cfg:
1. WNI_CFG_11D_ENABLED
2. WNI_CFG_11H_ENABLED
3. WNI_CFG_TX_BF_CAP
4. WNI_CFG_AS_CAP
5. WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP
Introduce the basic infra APIs related to these configs
from mlme.
In csr_roam_open_session, lim_populate_vht_mcs_set,
lim_sta_send_add_bss, populate_dot11f_tdls_ht_vht_cap,
populate_dot11f_vht_caps and sme_update_nss, local structure
is updated instead of mlme global structure for vht caps and
thus the mlme vht caps contains only the default values.
Fix this by updating mlme vht caps in mlme_update_vht_cap.
Change-Id: I1a948d7a44ad2bcc7f711c46b278971d7e4026e7
CRs-Fixed: 2354562
To align with the Linux coding style replace tpAniSirGlobal with
struct mac_context * in:
sme_qos.c
sme_qos_api.h
sme_qos_internal.h
Change-Id: Idb247cfab508543bbdaa9cd1f57a374fc8b6799e
CRs-Fixed: 2360293
To align with the Linux coding style replace tpAniSirGlobal with
struct mac_context * in:
sme_api.h
sme_api.c
Change-Id: If0264aeecf484c1adf4342a895e3449aee8f3006
CRs-Fixed: 2360291
Per the Linux coding style both mixed-case names and so-called
Hungarian notation are frowned upon. There are multiple variations of
the identifier "pSessionEntry" currently in use, so replace them with
pe_session everywhere they occur in the driver.
Change-Id: I6cc37504bf9e8821c0e1c3d99e4f97a57aaba24c
CRs-Fixed: 2360166
Add power items related CFG items in new file,
and store the respective inis in MLME component
Change-Id: Iac183da52495aca07c6270edeb9f383ab49c1ff5
CRs-Fixed: 2341900
The inline function MAC_CONTEXT() is the preferred mechanism for
converting a MAC handle into a MAC context, so replace all instances
of the legacy macro PMAC_STRUCT().
Change-Id: Ieb29696c79b729648462be699892607484c2f301
CRs-Fixed: 2357873
For STA connect/disconnect, SAP start/stop relative cmds, just
use following serialization command types:
Converged cmd types:
WLAN_SER_CMD_VDEV_START_BSS
WLAN_SER_CMD_VDEV_STOP_BSS
WLAN_SER_CMD_VDEV_CONNECT
WLAN_SER_CMD_VDEV_DISCONNECT
WLAN_SER_CMD_VDEV_RESTART
Change-Id: I533f650e1f69048d6861751ab74f75d8d5f18c83
CRs-Fixed: 2318545
Since refined second part of LFR INIs, apply these changes in
SME/MAC/WMA layer.
Change-Id: I7994a9038d5bd094ce23bcd525ef8f5282974bfc
CRs-Fixed: 2346790
Based on new cfg component, refactor CFG_TX_POWER_CTRL_NAME and clean
up related legacy codes.
Change-Id: I6dd317d5065c4111b71a9fe94d9b9af1f7d3d664
CRs-Fixed: 2355918
Connected roam profile's SSID is used to get the BSS entry from kernel
and indicate the same to kernel in cfg80211_connect_bss. If the
roam profile's SSID is NULL, the BSS entry indicated to kernel is
with NULL SSID and this result in disconnect from supplicant as
it assume that SSID of AP changed.
Fix is to fill the SSID in connected roam profile from roam profile
if SSID is NULL in beacon.
Change-Id: Ie42eceb50b6af551ac1f4ca7d37b73eff107dfbd
CRs-Fixed: 2349572
The driver fills the nss chains params in the vdev during
vdev create. The nss and chain params are filled by the user
in the ini file, but it may happen that the user filled the
nss param for that particular vdev as 2, and the number of
supported rf chains are 1, which is sent to the driver by FW,
so that would result in nss as 2, and chains as 1, which cannot
be supported.
Fix is to downgrade the nss to the number of chains supported by
the FW.
Change-Id: Ifa3ee74dbe5b8d19c6dc11ff64e42dbffadaa018
CRs-Fixed: 2354205
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
sme_api.c
Change-Id: If45f33b93230d1085ee1a3c4dbf35e1f4bfcab27
CRs-Fixed: 2356102
When host driver receives roam sync complete event, the
disable_hi_rssi to false if band is 2G and the high rssi
threshold delta needs to be sent to the firmware to take effect.
But presently the csr_roam_scan_offload exits with failure as
the driver issues start again.
Call csr_roam_scan_offload with ROAM_SCAN_OFFLOAD_UPDATE_CFG
command.
Change-Id: Ic3c9a729c290accbe9822948bc2363154db4c83f
CRs-Fixed: 2355359
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_internal.h
Change-Id: I136277d79765b63f83c4079c49a6dcc830f21e69
CRs-Fixed: 2356093
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
sme_api.h
sme_ft_api.c
sme_ft_api.h
sme_inside.h
sme_internal.h
sme_qos_internal.h
sme_trace.c
sme_trace.h
Change-Id: I24ae034a06051d2e61d6f02283b3d2ecbe376bf9
CRs-Fixed: 2355452
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
rrm_api.h
rrm_api.c
sme_rrm_api.h
sme_rrm.c
Change-Id: I7eb6e7bf6f5d921b7a8f1f4c98d6a120e104a4ea
CRs-Fixed: 2355450
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_api.h
csr_support.h
csr_host_scan_roam.c
csr_roam_preauth.c
Change-Id: I941c87e308f47162e9eddd111498cf072dbcdf81
CRs-Fixed: 2355449
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_api_scan.c
Change-Id: Ib55b211e4fdab427aff8c04c8ac99e1af56c6edc
CRs-Fixed: 2355448
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_inside_api.h
Change-Id: I18ba91ddf615e5c3ff8a025049c56587ee967289
CRs-Fixed: 2355447
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_api_roam.c
Change-Id: Ibed3be53fb911f9ccaed375ee84aa7ebdd8f5e40
CRs-Fixed: 2356080
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
sme_qos.c
Change-Id: I0cf98781992a08be0dddaa121c600ac0950c448b
CRs-Fixed: 2356084
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_util.c
Change-Id: I29e9232fb275730a79f5cd2758086ea740ca8593
CRs-Fixed: 2356091
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
For this change rename all instances of "pMac" to "mac" in:
csr_neighbor_roam.h
csr_neighbor_roam.c
Change-Id: I31fb8c8aa9d715a59c79cf041760e216d3032023
CRs-Fixed: 2356100
To align with the Linux coding style replace tpPESession with struct
pe_session * in sme.
Change-Id: I8f716b9b29fa694182c5750d40ec9bd2ddf99fd5
CRs-Fixed: 2353398
During Vdev start/restart LimProcessDefdMsgs is set to false. If
start/restart timeouts, it will initiate SSR but will not send
response to LIM and thus gLimProcessDefdMsgs will not set to true.
Thus no other commands will be processed in LIM. If any command is
queued in serialization during this time it will timeout.
This will eventually lead to timeout of the vdev destroy command as
it won't get processed until the command in active queue timeout and
it leads to peer and vdev refcount leaks.
To fix it purge all active and pending cmds during SSR, so that vdev
destroy cmd can be processed immediately and can release vdev/peer
ref count.
Change-Id: Id5c15ccb4c27dabfdd4a9e0d7ee9b765130e03bf
CRs-Fixed: 2354899
Cleanup multiple HT related CFG/INI Items which are already moved to the
MLME component.
Also move gShortSlotTimeEnabled INI from HDD to MLME component
Change-Id: Ie8c19f508401d4d72990f35ea5dcc18d45f0f16b
CRs-Fixed: 2354687
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.
One instance is the following field in typedef tCsrTimerInfo:
- tpAniSirGlobal pMac;
In order to meet the needs of the campaign all that is really needed
is to rename this field and modify all accesses to this field. However
note that the Linux coding style also objects to typedefs except in a
few cases, and the use case for tCsrTimerInfo does not apply.
Therefore to address the larger problem replace the tCsrTimerInfo
typedef with an appropriately named struct with appropriately named
fields.
Change-Id: I0bddcbe1057611d4c6e586358f64a29fb4049776
CRs-Fixed: 2354421
Refactor ini items gSapForce11NFor11AC and gGoForce11NFor11AC
into new mlme component.
Change-Id: I85e2f7f9ae14a23c322572290b095aae0f29b0ec
CRs-Fixed: 2354940
Once Driver receives APF sub-command QCA_WLAN_SET_PACKET_FILTER,
it posts the message to SME and returns the context. In case
where vdev restarts before sending the APF command to WMI,
driver will drop it since Firmware cannot accept the command
while vdev is down. Upper layer will have no knowledge of this
failure since there is no acknowledgment mechanism for a
successful APF command sent to the Firmware. Once the vdev is up
again, upper layer will send next APF instructions and driver
will allow then to the Firmware. This is problematic since
Firmware cannot operate with the partial APF instructions since
the initial part was dropped.
Hold the vendor command context till the command is successfully
sent to the Firmware. Propagate the errors to the upper layer.
Change-Id: If3cd6fbc85f83c0d78e735e96c00011cd2fd9347
CRs-Fixed: 2350640
Add the following WMM config ini configs to MLME cfg:
1. CFG_QOS_WMM_INFRA_INACTIVITY_INTERVAL_NAME
2. CFG_QOS_WMM_BURST_SIZE_DEFN_NAME
3. CFG_QOS_WMM_TS_INFO_ACK_POLICY_NAME
4. CFG_QOS_ADDTS_WHEN_ACM_IS_OFF_NAME
Introduce the basic infra APIs related to these configs
from mlme.
Change-Id: I149971768a7193099926e2778f093dcd073f0461
CRs-Fixed: 2327692
Add support to configure the FW to send the action frame in
HE trigger based PPDU.
Change-Id: Ie6df5b1cb40c7f1b18a9e86f90b4b8f44ba7bf6b
CRs-Fixed: 2311413
There are currently multiple issues with sme_send_flush_logs_cmd_to_fw()
- Although this is an SME API the prototype is exposed in a CDS header
file
- The API is defined to take a mac context parameter which is unused
- Although the function returns QDF_STATUS, the only caller treats the
return value as an int errno
To address these issues
- Relocate the prototype to SME
- Remove the unused parameter
- Properly treat the return value as QDF_STATUS
Change-Id: Ia511565ee0b77148ee7cb1bf221e99a5b26ed446
CRs-Fixed: 2353530
The signature for sme_get_bss_transition_status() indicates it returns
an int errno, and that is what the only caller is currently expecting,
but in reality it returns QDF_STATUS. Since SME APIs are generally
expected to return QDF_STATUS, update the signature as well as the
caller to use QDF_STATUS.
Change-Id: I256fac3980ee55c6e797388df1ea7022fd9fe863
CRs-Fixed: 2353529
SME function sme_filter_scan_results() is unused, so remove it. Note
that the underlying CSR function, csr_scan_filter_results(), is still
used, invoked from other places within SME.
Change-Id: I19ad6bc45d196500ea77c89c50830224d1063aa4
CRs-Fixed: 2353528
A recent series of changes renamed many SME function parameters which
had "hal" in their names. Now clean up the documentation of those
parameters so that the description does not reference "hal".
Change-Id: I686143b1cf01cd68d133835180fcdc71e695f368
CRs-Fixed: 2353527
There is no iwpriv command to send STA/P2P_CLI connection information
to userspace. Implement "iwpriv wlan0 get_cxn_info" command
to send the information to userspace.
CRs-Fixed: 2342141
Change-Id: I39e461b62eb5263d7e185686ae42bdbbc8edec7a
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal with mac_handle
in sme_api.
Change-Id: Ic1fc8017e0f953ed83cfcee9c7b58e5e23ee5ca8
CRs-Fixed: 2351899
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal with mac_handle
in sap_module.
Change-Id: I8631e7b3cc4bdca564846bb2dee50e6c993087ef
CRs-Fixed: 2351898
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal_ctx with
mac_handle in sme_api.
Change-Id: Ib17e1c7855c449533f0d7b13cd67dba224bb9a8e
CRs-Fixed: 2351896
Recently all instances of tHalHandle were replaced with mac_handle_t
to align with current usage and the Linux coding standard. To align
with the new naming now replace all instances of hal_ctx with
mac_handle in sme_power_save.
Change-Id: Ie58b394f6f2327b6cc141992bccd3aa69bcaa53c
CRs-Fixed: 2351895
Remove the definitions and related internal data structures and
value retrieving code of the following 3 CFG INI items, due to
they're not used to control any driver behavior any more.
-gVccRssiTrigger
-gVccUlMacLossThresh
-gEnableBypass11d
Change-Id: I919bf191f48db4bf0947235ff804aed2b4b1bdb9
CRs-Fixed: 2352224
The disable_hi_rssi flag in pe session is used to control the hi
rssi scan delta value sent from the host to the firmware. If the
disable_hi_rssi is set to false, then the ini parameter
hi_rssi_scan_rssi_delta value is sent to the firmware.
When STA roams from 5G to 2G band, this disable_hi_rssi should
be set to false and hi-rssi scan delta will be non zero, so the
firmware will handle high rssi scans if the RSSI is better than
the roaming threshold. The default ini value of
gRoamScanHiRssiDelta is 10.
When host driver receives roam sync complete event, set the
disable_hi_rssi to true if band is 5G else set it to false.
Change-Id: I7b9d94f804619d7a4a11d0ba9acaa6cf5defbc68
CRs-Fixed: 2350842