Currently in the WoW design of Moselle, EXT GRP IRQs are
enabled before sending SMP2P power save exit message is
sent to the FW. Because of this, any pending IRQs in the
GIC will immediately fire and could race with the SMP2P
power save exit logic. Any access to the registers done
before power save exit would result in system errors.
Enable the EXT GRP IRQs after sending power save exit
command will fix the problem.
Change-Id: I16f580279b5aa24861ab5111b9c13db3e38063f4
CRs-Fixed: 2925554
With IPA TX two pipes support, TX rings for 2G and 5G traffic
are separated. As a result, WLAN needs to let IPA driver
know if the interface registered to IPA is 2G or 5G so that
IPA could differentiate and designate the interface for the
correct IPA TX pipe.
In this change, a new param is_2g_iface is added for the
event interface between protocol and IPA component. And
this new param is applicable only STA_CONNECT and
AP_CONNECT where wlan will register interface details
including is_2g_iface to IPA driver.
For two pipes implementation, is_2g_iface piggy-backs
session_id when passing it to CDP layer. And CDP layer
needs to decode session_id and is_2g_iface.
Change-Id: I5e02ec6969bb2f77d6b40e89d5a9451a7bb0be9d
CRs-Fixed: 2702704
psoc_cfg is pointing to the address of a structure variable,
which will never be NULL.
To address this remove the NULL check.
Change-Id: I12f539ce2feace550c403ffc996fa315994470a7
CRs-Fixed: 2911862
Host checks RMF enable and robust action frame category, if both are
true then sets protected bit in mac header of management action frame.
Change-Id: I2d57c52b66ff7abd44dd02b73ad18f13fbdef009
CRs-Fixed: 2917058
When starting SAP, If 11be IE is configured from userspace,
driver need check concurrency, update phymode as 11be and notify mlo mgr.
Change-Id: I22fdec5d978c91a8fc292af49462f045922254ae
CRs-Fixed: 2908938
As part of 11be enhancements in the driver, new configuration
parameters will be added. Define new APIs to support EHT
configuration parameters in the host driver.
Change-Id: Ic1890943a2f941e864d0df102e4954aac75d9f11
CRs-Fixed: 2908030
Current driver implementation supports management frames handling
till 11ax. As part of 11be enhancements, new information elements
were added. To support 11be in host driver, update management
frames handling to support EHT information elements.
Change-Id: Id7064cbfe0b2c6a413be20c3ea64747a39312845
CRs-Fixed: 2907983
The commit Ic695e36e9b4fc9952cc405d1345b4a6a7d543dad, removed the
ini parameter etsi13_srd_chan_in_master_mode assuming that the
ini is obsolete and no longer being used. But, the ini is still
being used by the OEMs. So, revert the previous changes.
Change-Id: I6b2ba8b8e41ab96981b92e5ff4b2f610f92d7e43
CRs-Fixed: 2923688
Add support to reject TWT setup request if received when the below
mentioned concurrency scenario exists.
STA + SAP: SCC or MCC: Reject TWT setup
STA + P2P: SCC or MCC: Reject TWT setup
Change-Id: I5c4c2bcc032276a0b83b7a46a44dbf7933cda29f
CRs-Fixed: 2923726
Currently in packet capture mode for tx mgmt packets tsf_delta
filled in tsf timeestamp, which is incorrect.
So, fill tsf timestamp in Mgmt tx packets for packet capture.
Change-Id: I90da072ee6d7e0f7a9b6271086e163a71208b7f5
CRs-Fixed: 2916982
There is a compilation error due to use of PMO_ACTION_BLKACK, which
is not defined. Change PMO_ACTION_BLKACK to PMO_MAC_ACTION_BLKACK to
resolve this issue.
Change-Id: I011c4c323bfa7d104c6a6879aba93085a35fed3d
CRs-Fixed: 2923577
Add support to reject the TWT setup request if there exists
another TWT session with different dialog id.
Change-Id: I59c0ba4279581bad14bec886d22c0ac65838ec17
CRs-Fixed: 2920494
Currently, mlme_twt_is_command_in_progress() function checks if the given
command is in progress or not. For inputs like WLAN_TWT_ANY, if this function
returns true then from the current logs, its not known which
active command in progress.
Hence for better debugging, enhance this function to return active command.
Change-Id: Ibc5c5babb042408b0e8988fe229d344ed98bfff3
CRs-Fixed: 2920494
The global aggregation size is only set to firmware once
when vdev is created. And the size may be modified
dynamically for a specified AP during association, according
to the OUI based aggregation size configured by ini
'cfg_tx_iot_aggr'.
If global AMSDU size is 0, considering the case as below:
1. connect to AP-1 which is included in 'cfg_tx_iot_aggr',
the AMSDU size will be set to the specifed value.
2. connect to AP-2 which is NOT in 'cfg_tx_iot_aggr',
it doesn't reset the AMSDU size to 0, and firmware is
still using the value set in step #1, it's wrong.
To fix this issue, set the global size for each vdev start,
as init values for each connection.
Change-Id: I790d580fc5762e6816e840ba5484b3cd758334df
CRs-Fixed: 2918046
HSP doesn't support TX_AGGREGATION_SIZE ini, need disable it to avoid
confusing.
Change-Id: I9e49ad5218f913f116cf4472f768f572740f14df
CRs-Fixed: 2918796
Refactor the code to replace htt tx data header with packet capture
header. So that we can add extra parameters in packet capture
header to send required data to packet capture callback function.
Change-Id: I863c63b925d1cd8ba5a8a7f0bc08ee3cd2acb96b
CRs-Fixed: 2916795
As part of I418be56d452389a9f7b8d48e28f793567e81767a due to copy
paste error in cm_roam_scan_offload_fill_lfr3_config the pmk was
copied to rso_11i_info instead of rso_11r_info.
Fix this by copying pmk to rso_11r_info.
Change-Id: If4d1ea23ab4b4c43db3fac78fbfd43ad74a7e1b4
CRs-Fixed: 2920206
Currently the rate, ofdm and cck flags are filled to support only
legacy rates.To support other rates too, fill ofdm and cck flags
based on phymode and fill rate in terms of 500 Kbps in tx status.
Change-Id: I972919ebd2cbd19a1b55af0324e481fada7f12cd
CRs-Fixed: 2917079
1. If the TWT setup parameter re-negotiation results in failure,
then host driver shall trigger TWT teardown for the
existing TWT session.
2. Upon receiving the TWT teardown confirmation from the firmware,
host driver shall cleanup TWT session, send teardown notification
to the user space and ready for next TWT setup command.
Change-Id: I553ae7de8d900a3dc12d563b781f9fefa36f8a0b
CRs-Fixed: 2916548
The userspace doesn't expect TWT teardown or notify events after
roaming. So to clear the driver internal TWT context, for old
peer, call the mlme_init_twt_context() on roam synch complete.
Change-Id: If1e4fe2d79561885052caf8d5231d1c943f10c96
CRs-Fixed: 2912872
Change I588a56f4c96d137d3283b2dc57274de069ecb4ab changed
wlan_cm_abort_rso() return status from BUSY to FAILURE when roaming
in progress, it caused disconnect command not wait for roaming
complete/abort, and lead to abnormal data access.
Change-Id: I16004b006283c05ed94fb3ca4bc0e9376485aca7
CRs-Fixed: 2910443
By default, the driver fills the roam scan scheme as none for
all the triggers in WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID
but if the roam scan scheme bitmap is set for particular
trigger, then for the corresponding trigger the roam scan scheme
should be sent as ROAM_TRIGGER_SCAN_MODE_PARTIAL.
Send ROAM_TRIGGER_SCAN_MODE_PARTIAL if roam scan scheme bitmap is
provided.
Change-Id: I82f16f7c0e24be472c95278eb3085f7d2623b63a
CRs-Fixed: 2914142
offload igmp feature to fw in case of suspended state
to avoid high power consumption.
Change-Id: I05fbf23dc2836f8f5dc6e2f45b35bf2d30c39790
CRs-Fixed: 2907644
Currently runtime resume is marked as success after kicking
HTC queues, due to this non PM marked WMI commands are not
sent out properly.
Fix this by marking runtime resume as success before kicking
HTC queues, since resume is set as success as part of HTC kick
queues WMI commands will be sent out properly.
Change-Id: I5e3f98cbc5888bdf83f760b055c9b706c18737ef
CRs-Fixed: 2899609
Use wlan_reg_freq_to_band API to get band instead of
the deprecated WLAN_REG_CHAN_TO_BAND API as part of
regulatory cleanup effort.
Change-Id: Id3028ecba15608c6bd48dff1ed5d5a8ef15cdab4
CRs-Fixed: 2898140
Since stop_modules can happen in parallel due to idle shutdown,
add additional checks whether the IPA deinit happened already
or in-progress, in ipa_register_ready_cb.
Change-Id: Icc1973be3e90d4231addcebab55e621d19c5789c
CRs-Fixed: 2903419
As part of WiFi ini clean-up FR, the ini parameter
etsi13_srd_chan_in_master_mode, is identified as an obsolete. Hence,
it can be deprecated and use its default value for the config
CFG_ETSI_SRD_CHAN_IN_MASTER_MODE.
Change-Id: Ic695e36e9b4fc9952cc405d1345b4a6a7d543dad
CRs-Fixed: 2896031
Set system state in hif ctx to suspend or resume on
system suspend and resume respectively.
Change-Id: If1904a4fe5c861deed1b35071be10cb8cc8d6407
CRs-Fixed: 2899520
Fix to pass assoc_info instead of address of assoc_info
to sme_qos_csr_event_ind() and cm_remove_cmd()
Change-Id: I9f6c12870954c42f2b1e6250e7547c45a593cae8
CRs-Fixed: 2911027
Any operation on the reject ap list should be protected
by the mutex lock, otherwise, race condition may happen
and result in list corruption.
Change-Id: Iefe0594a62563d800e85f8f6ebd747ab46c19fcf
CRs-Fixed: 2901576
As part of WiFi ini clean-up FR, the ini parameter ImplicitQosIsEnabled,
is identified as an obselete parameter and hence it can be deprecated.
Change-Id: Id2ea893ec714150d6144aead2dc3c2b5967d805b
CRs-Fixed: 2896059
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
As part of WiFi ini clean-up FR, the ini parameter
gDataInactivityTimeout, is identified as it is no longer used
and hence it can be deprecated.
Change-Id: Ic01ba8934058cf2fb3bec042f11b01ea70ef7a3f
CRs-Fixed: 2896042
Add change to support roam ho fail and roam invoke fail
indication in connection manager.
Change-Id: I8e4fed2ca4b9c6e95da86b0c37e39da8f2bc4953
CRs-Fixed: 2906319
TDLS teardown happens in high throughput
scenario as rx pkt count increment API
"tdls_update_rx_pkt_cnt" is not called
if hdd_is_current_high_throughput API
returns TRUE. The reason for this is due
to high cpu cycles consumed by
tdls_update_rx_pkt_cnt API.
As part of fix optimize tdls_update_rx_pkt_cnt,
tdls_update_tx_pkt_cnt API's for high
throughput scenario. In high throughput
scenario mostly the use-case is to increment
the pkt counter so move that logic to
the top of the API's.
Change-Id: I4eb0da3571c45b5ee91e051e251158af15f73973
CRs-Fixed: 2888746
When TDLS connection is made in 160 MHZ
for 11ax staions, the MCS rates for the
same aren't updated correctly.
Also, MCS rate can change in case the
connection between both stations is made
with AP operating in NSS 1x1, as there is
a check in lim_populate_he_mcs_set which
will disable MCS rates corresponding to
nss > 1x1.
To fix this, copy 160 MHZ mcs from the
staion parameters which gets updated in
change station. Also, use nss parameter
which is passed by lim_populate_he_mcs_set()
in the check which was used to disable mcs
rates corresponding to nss > 1x1. Thus,
peer station nss will be used to
determine whether to disable or not.
Change-Id: I23079aed3795202e6ae32583a220c1ed3227c1dd
CRs-Fixed: 2904540
Previously, the hw mode changing is not allowed when SAP is CAC
state in old target which supports 1x1 dbs. The reason is
some action frame would be sent out when chainmask changes in
those target. But for 2x2 dbs target, chainmask is not changed
and hence not action frame will be sent out.
Allow the hw mode change for 2x2 dbs target when SAP is CAC.
Change-Id: I2d123a7f0065a562048584f56d5dd7640aaaf975
CRs-Fixed: 2892813
When host driver receives RSO_STOP from userspace, HDD sends the
RSO_STOP down to lower layers and starts a wait for response upon
success status.
Below layers(connection mgr/CSR) ignore the RSO_STOP request and
return success if the current state is not RSO_ENABLED or
IN_PROGRESS. This keeps the HDD waiting for response and a timeout
happens after 2 seconds.
So, wait for RSO stop response only if roaming is in enabled state
to avoid this wait and timeout.
Change-Id: I3ed81c5da26ebe05d17fc37dc43665f1f7b7c8b2
CRs-Fixed: 2901494