Pattern id and vdev id are not filled explicitly for
CoAP offload reply enable request, which will cause
failure when the ids are not 0.
To fix it, fill the vdev id and pattern id accordingly.
Change-Id: I74b4b26d08e48e9d08d041293cff6f4ab92272e1
CRs-Fixed: 3310734
As per the new customer requirement, modify the format
specifier for the get_wifi_feature print.
Change-Id: I6ec605be7a4f77f3d4f8b6d65782dfcdfea2d75b
CRs-Fixed: 3310140
Issue1:wlan_hdd_set_mlo_ps function returns uninitialized
status on condition of being all link_adapters as
NULL from mlo_adapter_info.
Fix:initialize status varible with -EINVAL.
Issue2:hdd_regulatory_init API updates regulatory alpha2
from uninitialized alpha2 array.
Fix:initialize alpha2 array with 0.
Change-Id: I7e279899a8465a9b457fbe06ff81c57364be2843
CRs-Fixed: 3307965
If is_pre_cac_on is set, in __wlan_hdd_del_virtual_intf firstly
frees the sap context by calling hdd_clean_up_interface and then
frees the pre cac by calling hdd_clean_up_pre_cac_interface this
will fails to access the sap context which is already freed.
So, replace order of calling, firstly hdd_clean_up_pre_cac_interface
and then hdd_clean_up_interface.
cds flush work will cancel the work which will not delete the pre cac
vdev. Replace with qdf_flush_work will wait for a work to finish,
executing the last queueing instance.
Assign NULL to fn and arg of pre cac work to ensure proper cleanup
of work
Change-Id: I093bf627ce7a73e7c4f7c4cf30e2ec56814a80ed
CRs-Fixed: 3286477
In management frame TX path from userspace, the
p2p_set_mac_filter structure is used and is defined under P2P
converged macro.
Converge this p2p_set_mac_filter structure to set_rx_mac_filter
structure in qca-wifi-host-cmn to use this by all components
Change-Id: Iefcf36f8b327458b2418bd364ae84b28ca56e7f9
CRs-Fixed: 3306700
To avoid wma_vdev_detach_callback() is run under interrupt
context, post wma_vdev_detach_callback() to driver scheduler
when vdev delete is failed to send to FW.
Change-Id: I87a603de326789ac43dac34de31eb564f13d11f5
CRs-Fixed: 3308547
Currently, pe_session->lim_join_req is freed when there is a
failure in creation/filling the session for link. The same is
attempted to free in pe_delete_session() also.
Set it to NULL once it's freed to avoid double-free.
Change-Id: I6908fc768d782dfe4fe542ccb75ba2cabeb52d0f
CRs-Fixed: 3310292
With FEATURE_WLAN_TDLS=n, compiler is throwing implicit
declaration error of function wlan_tdls_get_features_info.
Hence add wlan_tdls_get_features_info stub declaration for
FEATURE_WLAN_TDLS=n.
Change-Id: Ia9820e630b756befbfda98330be193760a331c93
CRs-Fixed: 3309612
Build failed once WLAN_TRACE_HIDE_MAC_ADDR is enabled,
due to 'error: type mismatch in conditional expression'.
To fix it, correct the parameter for QDF_MAC_ADDR_REF.
Change-Id: Ifd89b02ab5fb2e3b59291c303ad93b691616dc57
CRs-Fixed: 3308193
In case if supplicant issues probe request without ROC,
Host should drop it for STA mode.
Change-Id: I290f441f6ddc41dd8d7434ad7d4fd1b4fcc0c22e
CRs-Fixed: 3296264
In current implementation ML adapter will get MLD address
from a separate pool of addresses rather than provision or
derived list.
Remove this separate pool for MLD address and get MLD address
from the provision list or derived list.
Change-Id: I11a10fe1331dba6d16f82cbd1ab4c04ada70acb6
CRs-Fixed: 3308051
Currently host driver creates feature sysfs node at the
timne of start modules.
Based on the new requirement create sysfs node at driver load.
Change-Id: I0030295e69af451eae1c02d6dfae2bcdc2df9cad
CRs-Fixed: 3306174
The last channel event data whose command flag is set to 1.
It’s basically an event with empty data only to indicate
scan event completion. The process of WMI_CHAN_INFO_EVENTID
should ignore it or it takes the freq 0 as selecting first
clean channel for ACS which is not expected.
Change-Id: Ia64b4ad16fa3571363f16fe419cf861fbbe19038
CRs-Fixed: 3306049
Currently host driver gets the wifi kobject from platform
driver based on the bus type, since this is a generic
functionality and it can be used for any bus type,
so add a logic to get the wifi kobject irrespective of
bus type.
Change-Id: I58b18f0006494e0602ef3b00dc5728071c7a0306
CRs-Fixed: 3308565
Update Android makefile to support dual wlan driver modules.
Define the secondary wlan chip with postfix string "cnss2".
Use different wlan ctrl name parameter for secondary wlan module.
Change-Id: I62fd7f258b3b8944e2b731d00d413d7a1a0d4290
CRs-Fixed: 3248293
Currently for mlo roaming if roam sync event is not
handled roaming is aborted only on that vdev,
other vdevs are not cleaned up.
Another issue is link vdev is added to connection manager
list but not removed.
To fix this code change made to abort roaming on all links.
Also remove request from connection manager list.
Change-Id: Ib6e9db21b64e5c44ab7d51ebf795b169c5e7eb29
CRs-Fixed: 3305685
In vdev delete timeout scenario, Host driver sends the Fatal
Event to framework which can collect the all host/fw logs
and trigger SSR.
Change-Id: I5d68c0a44bd93593bda9665645fd211325eb9ebe
CRs-Fixed: 3296272
Currently, host driver sends NAN enable and disable request to
firmware and wait for its response to change the NAN state in
driver. But, when firmware is down (during SSR), driver is in
recovery state and so, timeout occurs while waiting for response.
To fix this, driver does not need to wait for NAN enable/disable
response from firmware in recovery state. It can directly take the
action and change the NAN state machine. Hence, add flag to check
the driver recovery state. If recovery is in progress, then driver
does not wait for firmware NAN enable/ disable responses.
Change-Id: I0325240cc082d8ef91d48793d3da2eea552d59cd
CRs-Fixed: 3307543
For kiwi target, there is no MSDU_START tlv, and hence
the tlv information has to be obtained based on MSDU_END.
Enable this flag, which is used for monitor mode frame
processing for KIWI target.
Change-Id: I160133a92b5f8b79573717b53f248c24935a67eb
CRs-Fixed: 3304764
Other config CONFIG_WLAN_CLD_PM_QOS is dependent on
CONFIG_WLAN_FEATURE_DP_BUS_BANDWIDTH. Later enablement in config
file will fail to enable dependent config.
Change-Id: Ib0234505365d037d7b8fc50df639d93685d1781a
CRs-Fixed: 3305952
Host driver sends ROAM enable to firmware by setting the
vdev param WMI_VDEV_PARAM_ROAM_FW_OFFLOAD and the internal
state is moved from WLAN_ROAM_DEINIT to WLAN_ROAM_INIT.
Then host driver can send ROAM SCAN OFFLOAD enable and firmware
honors it. Firmware drops the RSO enable command if ROAM enable
vdev param is not sent. Host tracks RSO enable through the states
WLAN_ROAM_RSO_ENABLED/WLAN_ROAMING_IN_PROG/
WLAN_ROAM_SYNCH_IN_PROG/WLAN_MLO_ROAM_SYNCH_IN_PROG.
Have different APIs to track ROAM enable and RSO enable which can
help to cleanup the corresponding params/states.
It's observed that ROAM enable/disable vdev param is not sent
to firmware properly when RSO is stopped in some other path
than disconnect (e.g. SAP concurrency, fast_roaming_disable
through wpa_supplicant). Check if the roam state is INIT and
send ROAM DISABLE to firmware while disconnect.
Change-Id: I1074c8f93e21f02086dfbcfae61fa6deb91c7d9d
CRs-Fixed: 3305563
If the connection manager command is moved from pending to active
queue after an SME initiated active command e.g SAP peer
disconnect, it's already holding the SME lock and trying to
acquire the connection manager lock.
Now if in another thread, the connection manager process is
already in progress and tries to get the SME lock,
the driver ends up in a deadlock.
Thus remove the SME global lock from the APIs called from
HDD disconnect handlers.
Change-Id: I1c8afa55163e4113e5be5232efc15681eda69473
CRs-Fixed: 3304039
More than one roam sync frame event can be sent from FW so
the beacon, reassoc req or rsp length can be zero.
Hence the current code validation check is incorrect resulting
in roam abort.
To fix this, change the validation to check if beacon,
reassoc req or rsp value is non zero and then check the size.
Change-Id: I6ddec91686c23d9b8dac4c891b37bb1ce9d0fb30
CRs-Fixed: 3306428