If the request is SBS action and the HW doesn't support SBS,
return QDF_STATUS_E_NOSUPPORT. The caller will continue to
connect/start_ap instead of failure when
policy_mgr_current_connections_update return
QDF_STATUS_E_NOSUPPORT.
Change-Id: I158f90c13e2685697b82c874a247883f21f013cb
CRs-Fixed: 2602194
Add a check if list count is non-zero before deleting the node
from IPA tx descriptor list.
Change-Id: I9913c636107686755ffc5da2b585028a4be7a1e9
CRs-Fixed: 2601601
Issue happens when wlan0 is created then hostapd change
it from sta to ap mode before start wlan0 adapter,
then interface is deleted; as hdd_sta_info_init only happens
when start ap adapter, so there will be issue when destroy
sta_obj_lock as sta_obj_lock was never init.
Change:
Move init sta_info to open adapter and init sta_info
for all modes, so this will simply the logic and
no need to consider too much about adapter state change.
Change-Id: I5e90ec120b2ec487507d9bda2f8c18c9a54d2a01
CRs-Fixed: 2554812
There might be race condition when doing RX GRO flush between dp_rx_thread
and vdev detach thread.
Only doing RX GRO flush in the dp_rx_thread context, and use the events to
sync with dp_rx_thread and vdev detach thread.
Change-Id: I2dbf92c2c11e950ca790dd7429c8bb235c239d0c
CRs-Fixed: 2601826
Check for invalid BW if received as part of
monitor mode vdev start command and reject if
invalid.
Change-Id: I1dfd7936af354622c52295cfba16941b96dfe649
CRs-Fixed: 2600906
Currently during ACS process, if best channel after weight sorting
is not in PCL list, then further check if there is a channel in PCL
has some weight, if there is, then switch to this new channel.
Skip above process if best channel is already in PCL list.
Change-Id: I5bfb6d18c531e6b7b4ff0b8b2bb2bd47388fed0c
CRs-Fixed: 2589033
When SAP doesn't support 11ax phymode, ref STA which support
11ax phymode connect to SAP, this will result in firmware crash
due to WMI_PEER_ASSOC_CMDID set peer_flags with WMI_PEER_HE and
peer_phymode set with SAP session phymode which doesn't support
HE capability.
Fix is to intersect he_capable from SAP and ref STA.
Change-Id: I9f63f5474db03e96a404ac86ff7929e8ebabc9f3
CRs-Fixed: 2599957
Always use ECSA for STA/SAP channel switch between 6GHz band and
other 2Ghz or 5Ghz band since operating class is required to identify
an unique channel together with channel number in IE.
Change channel switch APIs to use frequency.
Change-Id: Ie655ae88b5223a3213146cb2684a70f91cdd5b04
CRs-Fixed: 2600136
In case of STA + SAP ipa pending tx timer is started when last
SAP client disconnects. Again if client connects back timer is not
stopped at pipes enable. Later some time if suspend kicks in and
during bus suspend if there are no ipa tx pending ipa pipes are
disabled. This leads to issues such as data stall, invalid IPA
doorbell register access. So reset the timer during ipa enable pipes.
Change-Id: Id6034596f52f98c793674c9d9e5f7918c5c3d455
CRs-Fixed: 2598559
Currently in lithium FW is not always in datapath. As a result
can not provide all the wlan vendor extended stats. So as part
of this host provides some of the extended stats.
Change-Id: Ie73b1e823a54385c5b97e1844a93d4ecc38d9d3c
CRs-Fixed: 2539662
lim_is_pkt_candidate_for_drop() uses sta_ds to update last assoc
and deauth/disasocc received time without taking any lock for
sta_ds. deletion of sta_ds in pe_delete_session before accessing
sta_ds in dph_lookup_hash_entry can lead lead to Assert.
Similar is the case with sta_ds->last_assoc_received_time and
sta_ds->last_disassoc_deauth_received_time.
Fix is to use peer_priv instead of sta_ds and update
last_assoc_received_time and last_disassoc_deauth_received_time of
peer_mlme_priv_obj. In this case refcount gets increased for valid
peer and peer won't be deleted until lim_is_pkt_candidate_for_drop
releases the ref count of the peer.
Change-Id: I9daf31f9dd7b509eaf38a93078bb7418605b1c74
CRs-Fixed: 2598841
In radio measurement beacon report frame, The BSSID field
indicates the BSSID of the BSS(s) for which a beacon report is
requested. When requesting beacon reports for all BSSs on the
channel, the BSSID field contains the wildcard BSSID; otherwise
the BSSID field contains a specific BSSID for a single BSS.
If BSSID is wildcard BSSID, bssid num should be 0 when use fill
scan result filter, or filtered scan result is always empty
since wildcard BSSID can't match any normal bssid.
Change-Id: Ia172ac8160d0c38ce4c875fc29458c6c8f26c804
CRs-Fixed: 2599634
According to FW, DFS phyerr offload should be enabled before vdev start,
otherwise FW can't start DFS phyerr offload function.
Do not send DFS phyerr offload disable wmi command before vdev stop, and
FW will handle all the necessary cleanup in vdev stop wmi command.
Without DFS phyerr offload disable wmi command, DFS phyerr offload is
enabled before vdev start.
Change-Id: Id6275e9716afb34316cf46b69dd0b4f82b73ac5d
CRs-Fixed: 2598263
Set the default software retry limit value to 16 and fix the typo
in configuring the non aggregation software retry limit.
Change-Id: Ia6ef7cc39f47ef91c2c338e48561e0275445750f
CRs-Fixed: 2599467
During the scheduler_stop it tries to flush all the pending messages
in the queue, during the same the flush callbacks of all the pending
messages are invoked. If there is no flush callback for
SYS_MSG_ID_UMAC_STOP, it will free the bodyptr of the message which
contains the global variable g_stop_evt, which can result in invalid
access in the other thread.
Add a dummy flush callback message for the sys_stop message to
avoid the invalid access.
Change-Id: I46ca4240d787dce5b21cc2f99ced66a4c01b737c
CRs-Fixed: 2537773
Disable TDLS off channel if 2g or 5g is disabled, restore TDLS off
channel configure when all bands are enabled.
Change-Id: Iabfdcdbf84e4a6313ad04e381b70e21c871d66c2
CRs-Fixed: 2595303
For packet capture mode, register an interface through
hdd_add_virtual_intf and delete using hdd_del_virtual_intf.
During register, remove the P2P interface and add it back
during deregister.
Change-Id: I79d933c96591cd462e27eda73f5aed2cc7cad8af
CRs-Fixed: 2528549
Create a mon thread to process the packets for pktcapture
mode only if packet capture mode is enabled.
Change-Id: I64e3687d08acd0d27019ed9e11b5b92b13fcd878
CRs-Fixed: 2528545
Remove deprecated code because of CRYPTO_SET_KEY_CONVERGED cleanup
in MAC layer.
Change-Id: I65bc90b457cdd642d64d6ab0e6829856ee93e472
CRs-fixed: 2593528
CRYPTO_SET_KEY_CONVERGED is a temporary flag which is used for
converged crypto component transition. The transition has already
been done, so cleanup legacy code related to the flag in WMA layer.
Change-Id: If70fc5cb01f2a0123030c92410e126ce8078e1c6
CRs-fixed: 2593526
CRYPTO_SET_KEY_CONVERGED is a temporary flag which is used for
converged crypto component transition. The transition has already
been done, so cleanup legacy code related to the flag in MAC layer.
Change-Id: I34fb7a6a67dd6dba3fa69c98ef10a1bd51383e36
CRs-fixed: 2593525
Update packet capture mode param in the HDD context
after reading the INI parameter.
Change-Id: I3ea88e376f1ad8ebc96715d08395331470c23d4a
CRs-Fixed: 2528536
DUT formed P2P connection with second device and as P2P GO, trigger
assert in target, supplicant get P2P client deletion event, and then
DUT remove P2P GO and change interface type from P2P GO to P2P device
but failed since recovery in progress. This change avoid to indicate
P2P client deletion event to up layer since host will sent P2P GO
stopping event to up layer.
Change-Id: I2221332d062f1e5f74846187ce9b478a11b8eb9f
CRs-Fixed: 2589866
In roaming path, while processing roam synch indication info/err
prints at the driver adds up latency to the total roaming
transition time and the KPI for maximum transition time exceeds
the expected 100ms. The printk buffer is protected by a global
raw spinlock for readers and writers. This restricts the contexts that
are allowed to access the buffer. So large latencies exists when
printing to kmsg done with QDF trace levels WARN, INFO, ERROR.
Change the redundant/less significant info, error, warn level
prints in roaming path to debug level.
Change-Id: I8e2a03ddef8f3cd680263939f6e0275b8703e681
CRs-Fixed: 2597624
Fix insmod Genoa wlan module failure for:
wlan: Unknown symbol wlan_set_vdev_crypto_prarams_from_ie.
wlan_set_vdev_crypto_prarams_from_ie is defined in
wlan_crypto_global_api.c
UMAC_CRYPTO_OBJS := $(UMAC_CRYPTO_CORE_DIR)/
wlan_crypto_global_api.o \
ifeq ($(CONFIG_CRYPTO_COMPONENT), y)
OBJS += $(UMAC_CRYPTO_OBJS)
endif
The crypto component is always required after convergence
between WIN/MCC, hence just unconditonally set
CONFIG_CRYPTO_COMPONENT := y in Kbuild.
Remove CONFIG_CRYPTO_COMPONENT := y in defconfig of each wifi
chip: default_defconfig, qca6174_defconfig, qca6390_defconfig.
Change-Id: Id0abe80673d59d9274401f1304b5ce1d906624eb
CRs-Fixed: 2596124
Currently there is no information maintained in the driver regarding the
tx patterns configured, this can result in sending the commands to
firmware without a proper validation i.e. sending the delete pattern
without validating.
To resolve this issue, maintain the add pattern history and validate
whether when the del pattern is issued.
Change-Id: Ie097a36fe46640ddfd539c481491025512571300
CRs-Fixed: 2596705
CRYPTO_SET_KEY_CONVERGED is a temporary flag which is used for
converged crypto component transition. The transition has already
been done, so cleanup legacy code related to the flag in SME layer.
Change-Id: Iff9ba19887caaa39f43cb58d519a14cf6e759d59
CRs-fixed: 2593523
CRYPTO_SET_KEY_CONVERGED is a temporary flag which is used for
converged crypto component transition. The transition has already
been done, so cleanup legacy code related to the flag in HDD layer
and SAP module.
Change-Id: Ic92e44e53c63ba2752907ace3ffc0f55d18470e2
CRs-fixed: 2593520
WLAN_CONV_CRYPTO_IE_SUPPORT is a temporary flag which is used for
converged crypto component transition. The transition has already
been done, so cleanup legacy code related to the flag.
Change-Id: Ide9fa97a9eb0b5c197c762205f386651efc51e33
CRs-fixed: 2592096