In csr_roam_joined_state_msg_processor, roam_info->tx_stbc is
assigned twice because of a typo.
Assign roam_info->rx_stbc as the value of
pUpperLayerAssocCnf->rx_stbc.
Change-Id: Ic90f6b486a50dcc3aca8cb7171a137a34319914d
CRs-Fixed: 2460716
Abstract the callback hdd_softap_ipa_start_xmit by
hdd_softap_ipa_start_xmit, to match the return type of
wlan_ipa_softap_xmit pointer, to fix a CFI failure.
Change-Id: If1cb1a80801558d5c7831ec89ad5281b0bbe36f3
The request_firmware() will take too long time(60s) when the
requested fw file do not exist. Replace this API with
request_firmware_direct.
Change-Id: Ie40db69a24dc1e0b86f140ca1aad91bd3b10e95e
CRs-Fixed: 2435125
A VHT beamformee shall indicate the maximum number of space-time
streams it can receive in a VHT NDP in the Beamformee STS
Capability subfield of the VHT Capabilities Information field of
the VHT Capabilities element. The SAP is advertising STS value
as 8 in both 2G and 5G band. This may cause IOT issues.
Fix the default value of beamformee STS capability value as
default value 3 for SAP.
Change-Id: I026eabeea941a33f1ffab6e498e6de90e182320e
CRs-Fixed: 2448390
WiFi chip in SDXPRAIRIE supports DBS, and it is OK to start AP+AP in
DFS channel in DBS mode.
If CONFIG_FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE is defined, AP+AP in
DFS channel in DBS mode fails to start.
Remove CONFIG_FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE definition to make
AP+AP in DFS channel in DBS mode work for SDXPRAIRIE.
Change-Id: I1947b480aca2acb3245350c73935f6a4f9af964f
CRs-Fixed: 2459215
If tdls feature is disabled, as currently tdls_osif_init_cb is called
before checking flags, tdls_osif_deinit_cb will be missed which causes
memory leak.
Do tdls_osif_init_cb after checking tdls_feature_flags.
Change-Id: I008c69a9b39f5321d1ca79f5193539f5abd32a02
CRs-Fixed: 2459853
The linux coding style forbids use of typedef unless clearly
some rules are met. The tSirBssDescription doesn't match any of
those criteria, so replace it with underlying structure
bss_description.
Change-Id: I36ad517325117cf04d499c7c472ca6ef5921a85d
CRs-Fixed: 2459769
The Linux Coding Style doesn't allow mixed-case names so rename
bssIdx in struct pe_session to be in compliance.
Change-Id: Idf2df6cb4ca30e4fdae74b8fb39445bb878003c5
CRs-Fixed: 2459768
From Android Q onwards LOCAL_MODULE_TAGS set to debug
variant is deprecated, thus set LOCAL_MODULE_TAGS
to optional variant by removing LOCAL_MODULE_TAGS.
If a module doesn't specify a tag (by LOCAL_MODULE_TAGS),
its tag defaults to optional.
Change-Id: Iecadd3bf07a375e2cfb044b400330c490f2023b0
CRs-Fixed: 2452507
For implicit and external control the tdls connection is
established based on the tx and rx pkt count. But currently,
pkt count with connected AP also tracked.
Do not track packets for connected AP as TDLS is not possible
with connected AP.
Change-Id: I29d6f4e7858de1ec453d64b6fce548f5132c57d4
CRs-Fixed: 2457524
The Linux Coding Style doesn't allow mixed-case names so rename
eSirBssType in struct pe_session to be in compliance.
Change-Id: Iafe6649a130c77064180c67fb1385d2d7a763370
CRs-Fixed: 2459767
The Linux Coding Style enumerates a few special cases where
typedefs are useful, but stresses "NEVER EVER use a typedef
unless you can clearly match one of those rules." The
tSirMacStatusCodes typedef does not meet any of those criteria,
so replace it properly named enum.
Change-Id: I4712acc4898a60ce78e7a6e71d2e91f5b1929c97
CRs-Fixed: 2459765
In hdd_vdev_destroy, if policy_mgr_check_and_stop_opportunistic_timer
decides to move to single mac mode and while sending the HW mode change
the target goes down, this leads to timeout of the HW mode change req in
WMA layer which is 2 sec and in serialization its 4 sec, but
policy_mgr_check_and_stop_opportunistic_timer timeout in 1 sec and proceed
to sme_close_session and wait for it to complete.
sme_close_session queue WLAN_SER_CMD_DEL_STA_SESSION to serialization but
it remains in pending queue, behind HW mode change req.
Now due to SSR the wait event for sme_close_session is set and thus
hdd_vdev_destroy logically deletes the vdev.
Now on WMA timeout the HW mode change try to remove the request from
serialization which it fails to remove as it fails to get ref for vdev
with vdev being logically deleted.
Thus WLAN_SER_CMD_DEL_STA_SESSION is not processed and is flushed in
hdd_wlan_shutdown.
Thus as SSR WLAN_SER_CMD_DEL_STA_SESSION is flushed from serialization
queue, the wma_vdev_detach() is not called for that vdev and thus the
peer attached to the vdev are not deleted and wma vdev ref is also not
released, this lead vdev/peer ref leak.
To fix this update the wait timeout in
policy_mgr_check_and_stop_opportunistic_timer with proper value higher
than the serialization timeout for the HW mode change request. ALso
set the wait event in policy_mgr_pdev_set_hw_mode_cb in failure cases
as well to avoid timeout in case of hw mode change failures.
Also release pending peer and vdef refs in wma_wmi_service_close.
Change-Id: I5ddf8263b0dbf889be506332a67f5e18c1bfb111
CRs-Fixed: 2458034
Remove CONFIG_MCL for reduction limit to make code generic.
Initialize value for reduction limit i.e WLAN_SCHED_REDUCTION_LIMIT
to 0 for MCL. In case WLAN_SCHED_REDUCTION_LIMIT not defined, then
define WLAN_SCHED_REDUCTION_LIMIT to 32 for WIN.
Change-Id: I6f6e4c9b3df71110654d487fcdae0334eeee4091
CRs-Fixed: 2459119
Implement the interface to transfer the info between
host driver and firmware about the ap which has interop
issues with the DUT. It is detected by firmware and
forwarded to user sapce for persistent storage. And
user space configs these APs to firmware when the DUT
starts up next time.
CRs-Fixed: 2425202
Change-Id: I2e828d521f0e04862a01fa1c90626f51b7f65796
When FILS authentication is performed, the key confirmation is
performed as part of the FILS exchange using association frames.
Hence, no additional 4-way handshake is necessary. But still the
host driver sets the WMI_PEER_NEED_PTK_4_WAY flag as part of
peer_assoc command. So firmware expects setting key command after
4-Way handshake is completed. But host sends the set key command
before M4 in this case, which results in firmware assert.
Don't set WMI_PEER_NEED_PTK_4_WAY for FILS connection.
Change-Id: I13451bd7592d5836c16cd648235f691b11aafb15
CRs-Fixed: 2458097
If sap_get_channel_list return 0 channel, didn't release vdev reference
acquired by wlan_objmgr_get_vdev_by_macaddr_from_psoc() in function
sap_channel_sel().
Release the vdev reference at the end of function sap_channel_sel().
Change-Id: Ib8d240e464ea893d97fef5f563bfb080646bae46
CRs-Fixed: 2457532
Host need to fill netbuf with qtime instead of tsf. So
host need to add tsf64 enable/disable related functions
and definitions to sync with FW.
The tsf64_time is new added to fw/host structure, so host
need to add parse functions to get tsf64_time from tx_desc.
Change-Id: Ieea0d8f905eb57629d279f8da0e811857b760b1f
CRs-Fixed: 2444456
Add a compile time feature flag by name RX_DESC_MULTI_PAGE_ALLOC
which will enable the memory allocation of RX descriptors using
multiple pages instead of large contiguous memory.
Change-Id: Ia3803a3685c605c79a34a0c2c000d7ed4adb7d97
CRs-Fixed: 2456267
WMI_STA_PS_PARAM_INACTIVITY_TIME and
WMI_STA_PS_PARAM_MAX_RESET_ITO_COUNT_ON_TIM_NO_TXRX
need to be sent as WMI_STA_POWERSAVE_PARAM_CMDID param IDs.
Thus use pmo_tgt_send_vdev_sta_ps_param instead of
pmo_tgt_vdev_update_param_req in appropriate locations.
Change-Id: Ie9438cd88540a9bbcaf120b3d0a32d355f85002d
CRs-fixed: 2457998
The ini param oce_sta_enable is getting read before parsing the
ini conf file, to set few OCE related wiphy flags. None of these
flags are getting set as it is resulting 0.
Move this to an API after parsing the ini file.
Change-Id: Ibf61996da4cc6b69892a5f2fe325b42c39f5fce3
CRs-Fixed: 2449519
To build multipel ko for different wlan targets, add genoa support
which will be used on AUTO platform.
Change-Id: I55e8591624ca4fe03bc06572cd2c46510eded366
CRs-Fixed: 2429383
Remove CONFIG_MCL for Serialization msg queue depth to make code generic.
Initialize value for Serialization msg queue depth i.e
SCHEDULER_CORE_MAX_MESSAGES to 1000 for MCL. In case
SCHEDULER_CORE_MAX_MESSAGES not defined, then
SCHEDULER_CORE_MAX_MESSAGES define to 4000 for WIN.
Change-Id: I498cfb73ed7774d9d26b1374ee87b1a7691341d9
CRs-Fixed: 2457704
Userspace request driver to report details of each beacon
received whose bssid is same as currently connected BSS's
mac address. The driver encapsulates the details of these
beacons as an asynchronous event within vendor command:
QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING with operation
type QCA_WLAN_VENDOR_BEACON_REPORTING_OP_STOP until
userspace requests to stop sending beacons.
When driver gets stop indication from userspace, it does
the following things:
1. De-register all callback which is registered while handling
start indication
2. Add beacon filter and send it to fw
If driver is in WOW mode and WMI_ADD_BCN_FILTER_CMDID is
NOT configured, fw wakeup HOST and sends connected AP beacon.
Fw should not wakeup host if host is in wow mode. In order
to support this, configure WOW_BEACON_EVENT for STA and P2P.
Change-Id: Ie7c768fa957d02e1361e1ecb95435ba3f06034b0
CRs-Fixed: 2431360