Reset scan reject params on roam abort and also if connect
lead to roam invoke release the wake lock as we do in legacy
case, if required roam invoke can use new wake lock.
Change-Id: Ieb870e2598687a1418e896d761f19a198a03a98f
CRs-Fixed: 2929311
Currently below implementation is missing in the driver. So driver
is failing to associate in 11be. Add this implementation to support
11be association in the driver
- Filling EHT IEs in probe response
- Sending EHT mcs capabilities while creating the peer
- Fix compilation issues when 11BE feature is enabled
- Add the the 320MHZ to wma_chan_phy_mode
Change-Id: Ib535db413d5578840feed7fd18bb00e5e28cfb6f
CRs-Fixed: 2926471
Allocation failed as flow table size is huge.
To Fix this, moved the ft table to prealloc memory.
Change-Id: I27ee62b1bcfced563f45cb80e11978cb3dd46183
CRs-Fixed: 2926899
There is a mismatch between host and fw for the input paramters of
TPUT DEBUG command.
To address the above issue send the fw expected value.
Change-Id: I15e14863c373d849d11eff90b75085cb451053c9
CRs-Fixed: 2928515
Currently, the driver restricts the connection of the 2nd
STA to channels on the other band of the 1st STA connected
band. As per the new requirement, the host should allow STA2
connection to any available AP(s), if primary iface is
configured.
Change-Id: I60f6bdb7df4d9eece4fd14abe1fab2d5644d47f1
CRs-Fixed: 2915733
Add support to primary STA iface when there are more
than one STA iface concurrently active via the
SET_WIFI_CONFIGURATION vendor command.
Below attribute associated with this vendor command to
give indication to host to set primary interface:
QCA_WLAN_VENDOR_ATTR_CONFIG_CONCURRENT_STA_PRIMARY.
Set indicates that the specified iface is the primary
STA iface.
This configuration helps the firmware/chip to support
certain features (e.g., roaming) on this primary interface,
if the same cannot be supported on concurrent STA ifaces
simultaneously.
This configuration is only applicable for the STA iface and
gives the priority for it only over other concurrent STA
ifaces. 1-Enable, 0-Disable.
Change-Id: I2bc7d8880c78c0c05e824f58aadacd84369d1880
CRs-Fixed: 2915728
Add support to configure the concurrent session policies
when multiple STA ifaces are getting active via the
CONCURRENT_DUAL_STA_POLICY vendor command.
Possible values associated with this vendor command are:
1. QCA_WLAN_CONCURRENT_STA_POLICY_PREFER_PRIMARY:
This indicates host to give preference to the Primary
STA interface while selecting the connection policies
(e.g., BSSID, Band, TX/RX chains, etc).
2. QCA_WLAN_CONCURRENT_STA_POLICY_UNBIASED:
This indicates connection policies for the subsequent STA
connection shall be chosen to balance with the existing
concurrent STA's performance.
Change-Id: I56994a182bb54adca57c3fc8fce9963b5db37b79
CRs-Fixed: 2915718
In case of TDLS peer connected if SSR happen, LIM try to flush
TDLS peer with del_sta->respReqd as false.
With respReqd false del_sta is freed in the switch case, but
is used outside the switch case, leading to use after free.
Fix is to use the local vdev_id instead of del_sta->smesessionId.
Change-Id: I7e08733cf42ef619b3fa0d6726ee1acc2012c6a4
CRs-Fixed: 2929448
If in SAP peer keep on connecting and disconnecting without
completing the EAPOL (e.g. due to wrong password), scan logic will
assume that EAPOL is in progress for long time and assert.
To fix this false alarm reset scan reject params on peer connect
and disconnect.
Change-Id: I067b5be39504651ffe4e29e1cc927ad0bc3a06c0
CRs-Fixed: 2928817
Tx MPDU aggregation is not happening in HE80 11ax connection
resulting in low throughput for HST.
Fix is to enable TX_AGGREGATION_SIZE_ENABLE for HST.
Change-Id: Ieca8464991a6a194d6f02b70fe4972aca288b541
CRs-Fixed: 2925514
Currently tcp advanced scaling reset get called each time
bandwidth timer is stopped even if it has not been enabled.
Reset advanced window scaling only when its enabled.
Change-Id: I0802ea1b848de4a906503e9eb83a41552209d941
CRs-Fixed: 2927161
Send correct channel frequency to sap_get_bonding_channels
to prevent ACS to fail for SAP.
Change-Id: I93ffd0e033cabb30d33d23ab26f656e0f0659d4f
CRs-Fixed: 2928495
Modify few ring and descriptor sizes for prealloc
to support the maximum values configured via ini.
Change-Id: Ifc2976c3f9ab271c7740d4a97470d455a8ee1ba7
CRs-Fixed: 2929143
Send QCA_WLAN_VENDOR_ATTR_TWT_STATS_STATUS attribute in
the driver TWT get stats NL response.
Change-Id: I7c447a8d2841f3bb0143f9ac6f957b1f78fa1e21
CRs-Fixed: 2923086
IPA_WDI3_TX_TWO_PIPES is added to enable two TX pipes
configuration for IPA WDI 3.0 interfaces.
Enable IPA_WDI3_TX_TWO_PIPES on sdxprairie platform.
Change-Id: I34fe0af56b169ebad9d7bb29b38838dd44503736
CRs-Fixed: 2750082
Currently single request context is used for NAN discovery and NDP.
If NAN disable request is sent to the FW and FW sends NDP end
indication and didn't send NAN disable indication. In this case,
wait event for NAN disable indication will be completed as part of
NDP end indication. This is because same request context is used for
both NAN discovery and NDP.
To resolve this, use separate request for NAN discovery and NDP.
Change-Id: Ic42e32c5cfd818188ca96d6cba3cbec1ed85a3ec
CRs-Fixed: 2921287
In the validate beacon interval logic, there are a few calls to get the
vdev MLME object from the interface manager component. However,
the component does not have a vdev object, so get it from the MLME
component instead.
Change-Id: I7333edeb6f1f0d5669605fe9e3d4fb10745d1fa4
CRs-fixed: 2928798
When the country code is updated, there is logic to check if a restart
of the adapter is needed. In this logic, there is a call to see if the
home channel is disabled. Sometimes, the home channel is 0 since it
has not been set yet, causing extra debug prints. To avoid this, ensure
the home channel is set before calling other APIs.
Change-Id: I58021f7f703761450c73a524c5acb51ddc7ad5ef
CRs-fixed: 2923754
Populate WLAN device memory related info along with other SOC info
in pld_get_soc_info() API.
Change-Id: I4b269e8d96d838b3ea7f998642cc8542cebb00d5
CRs-fixed: 2899892
Add logic similar to I5d8ec9e9d4f8a44178b113d370799fe2bc0373fb
in connection manager to flush PMID on HB failure.
Change-Id: Id87b5774a18a377719c56d3f34dc31284f0a39a3
CRs-Fixed: 2928282
In case of Non-DBS HW, don't allow channel to switch
to DFS channel or 160 Mhz BW in 5 Ghz, if STA is not
connected.
This is done because in Non-DBS HW, Monitoring mode
is disabled as sta_sap_scc_on_dfs_chnl is forced to
1.
Change-Id: Ie30a38a6c5155ca2b6f11f602fb51a43ca2e323e
CRs-Fixed: 2916799
If the wlan driver tries to register with platform driver before
cnss_probe then there is a potential race condition. To avoid this
issue add retries to the platform driver registration, so that the
wlan driver will wait and try register only after cnss_probe.
Change-Id: Ibc6b352c55d43753cf9db4a6a0eab8d08fdb9ec8
CRs-Fixed: 2926884
wlan_hdd_state_ctrl_param_create() creates a control file that is used
to synchronize the wlan driver with the Wi-Fi HAL in userspace. When
multiple instances of the driver are loaded in parallel, only one can
create and own the state ctrl param. The first instance of the driver
that is loaded creates the state ctrl param, and then it will wait for
a certain amount of time to be probed. If it is probed, then that
instance of the driver will stay loaded and no other instances of the
driver can load. But if it is not probed, then that instance of the
driver will destroy the state ctrl param and exit, and another
instance of the driver can then create the state ctrl param.
In the current code if a second instance of the driver tries to create
the state ctrl param while the first instance is still waiting for
the probe, then the second instance will fail and will exit. If the
first instance subsequently isn't probed and times out, then no driver
will be loaded.
To address this issue add retries to the state control file creation
so that the second instance will not exit after one failure, but
instead exits only after so much time has passed that the first
instance of the driver must have been probed.
Change-Id: I35cf04145d610613a51e5321603d48d988c16479
CRs-Fixed: 2905637
For PMF connection, when host gets assoc response fail with reason
"try again later" host runs PMF comeback timer to send assoc request
on pmf timer expiry. While PMF timer is running, if host gets
deauth/disassoc frame then host performs deauth/disassoc. As part
part of deauth/disassoc host changes lim mlm states to WT_DEL_BSS/
WT_DEL_STA and after moving vdev to down state host processes
DEL_BSS/DEL_STA response in LIM. At this stage expected lim mlm
state is WT_DEL_BSS/WT_DEL_STA but if the pmf timer expires the
pmf timer callback function changes lim mlm states to mlm states
stored in comeback timer info struct without checking present lim
mlm states.
Thus while processing DEL_BSS/DEL_STA response, host fails to get
PE session from vdev ID and lim mlm state WT_DEL_BSS/WT_DEL_STA.
And disconnect indication to sme fails. To fix this, host stops
pmf comeback timer while processing deauth/disassoc and change
lim mlm state after checking present lim mlm state.
Change-Id: If0094fcdb8254cb4271b5c46b4d42531dc9bc516
CRs-Fixed: 2925184
As part of regulatory cleanup, wlan_freq_to_chan() is removed.
Use wlan_reg_freq_to_chan() instead of wlan_freq_to_chan()
Change-Id: I18d7996a0b117de90cd32f2208702d01655ceeb9
CRs-Fixed: 2926114
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
If ldpc bit is not set in case AP width more than
20 Mhz, it may cause crash.
So, force set LDPC coding in such cases.
Also, force set LDPC if peer supports MCS 10 and 11.
Change-Id: I14bb4b56d0efb660ad19587b319badfac9083f21
CRs-Fixed: 2915086
HST/Genoa/Rome support TX_AGGREGATION_SIZE, need enable it.
TX_AGGREGATION_SIZE is introduced in
change: I9e49ad5218f913f116cf4472f768f572740f14df .
Change-Id: I63fc729f3daf2b1757c5eb2fb839ed22ebce359a
CRs-Fixed: 2926281