Currently, there is no check to stop new CP
stats request if any other CP request is in progress
which may cause issue due to updation of callback
function infra_cp_stats_resp_cb as per new request
before getting stats from FW for previous request.
Change-Id: Id31fd9e6bba7c1130af7bbc29b18baaa07b5bf04
CRs-Fixed: 3580194
Add config option for enabling physically contiguous multi-page
allocation, and enable the same for qca6174.
CRs-Fixed: 3588484
Change-Id: Ib649cbb6e3d3e5b00a5e8f94cde99f621fa9b124
IPA APIs currently depend on the net_dev value to distinguish
between the IPA iface_contexts, during setup and cleanup calls.
Due to single net_dev multi vdev change, this check is not
valid anymore and causes overwrite of the IPA iface contexts.
This change adds a check to also compare the vdev_id along with
net_dev to properly distinguish between the iface contexts.
Change-Id: I9cbd827f0d6393a83a9aedb17d68c5f8fe143e05
CRs-Fixed: 3585635
Check if the provided channel width and center frequency
are valid in current regulatory domain for CSA. If its not
valid reject the CSA request, since invalid center frequency
sent to firmware in vdev start command can cause abnormal
behavior.
Validate the STA csa frequency in lim_is_csa_channel_allowed()
Change-Id: I40de080bb7a929a350d28eb45352bce4f60a9f1d
CRs-Fixed: 3541748
Currently in the function wlan_hdd_send_ll_stats_req, we send
mlo_ll_stats to userspace without checking the response for
ll_stats request. This causes an issue, when we the ll_stats
request is unsuccessful and host tries to send the stats to
userspace. So, to avoid this issue, add a sanity check before
sending mlo_ll_stats to userspace.
Change-Id: I71ad4938551dc7be49c15f95b81ea37cf0c9c731
CRs-Fixed: 3587011
Enable the Export Symbol config by default because it is a basic
requirement for other modules to use our driver.
Change-Id: I8c1b71fe921db53013d998e36e11f2d388a2eacf
CRs-Fixed: 3586360
Host driver log of the TX rate bandwidth is not
correct in wlan_hdd_update_rate_info.
Change-Id: I2d27090d4108c905c997f872fa428df1df556fac
CRs-Fixed: 3586147
Currently enable_rpm is being set in hif_rtpm_start
which is called later in hdd_wlan_start_modules,
this can result in race between hif_rtpm_start
and hif_rtpm_put.
To fix the issue set enable_rpm earlier to avoid
race condition.
Change-Id: Id33888d7df570dd68657a780fc636203e4b84b90
CRs-Fixed: 3585156
For dual wlan chip, local module name will be same once TARGET_MULTI_WLAN
is set to true. For example, for dual HST, two wlan driver modules will
be created. If TARGET_MULTI_WLAN is true, two modules qca6390 will be
created.
So append number to secondary module. One is qca6390, the other is
qca6390_2.
Change-Id: Icbf51e278ced30b90ce4c726ba812d15b7aee7a2
CRs-Fixed: 3578003
To support group NDP security, WiFi-HAL and firmware introduces
two new parameters (csid_cap and gtk_required) in NDP initiator
request, responder requestor and NDP indication event.
Host driver will retrieve the CSID capabilities and GTK parameter
and parse it to firmware in NDP Initiator and Responder request
TLV. Also, driver extract these parameters from NDP indication TLV
and will passes to Wifi-HAL in vendor event.
Change-Id: I4487559491754edafaccafa466512d6380b826b3
CRs-Fixed: 3583149
Flush TWT commands when cfg80211 suspend is in progress
and schedule them for execution when cfg80211 resumes.
This prevents WMI from crashing due to concurrent
WMI_WOW_ENABLE_CMDID and twt requester enable commands
during suspend.
Change-Id: I505b789805d8a83564bf25d3f6c5c28d6d390966
CRs-Fixed: 3567817
Currently host disables all 6 GHz channels and keeps only
STA connected channel enabled. If STA bandwidth is greater
than 20 MHz kernel send disconnect as the bonded channels
are disabled.
Similarly for STA + SAP SCC case, if STA bandwidth is
20 MHz and SAP bandwidth is greater than 20 MHz kernel
sends stop_ap as the bonded channels are disabled.
To address above scenarios, for standalone STA case
keep the bonded channels enabled and for STA + SAP
SCC case keep the bonded channels enabled for STA and
SAP.
Change-Id: I901e2697e83085e5656d13c2c8cdb9c70696cbc1
CRs-Fixed: 3575989
Currently the medium assess timer is initialized and destroyed
when SAP start or stop. Since the timer is shared by SAPs, it
causes timer leak issue with the complexity of SAP + SAP
concurrency.
To resolve this issue, initialize and destroy the timer when
vendor command is issued.
Change-Id: I2e6a7e92e5d7053712c1825669d002982e2051d6
CRs-Fixed: 3584388
In function wlan_hdd_check_is_acs_request_same(),
tb[QCA_WLAN_VENDOR_ATTR_ACS_LAST_SCAN_AGEOUT_TIME] is not checked
before dereference, it is optional if refer to this IE in function
__wlan_hdd_cfg80211_do_acs, correct this coding error.
Change-Id: I87262bd071d4dec9e6795bdf32ff7007cd2254d9
CRs-Fixed: 3585225
For N-link, TDLS sends discovery request on different links
and starts timer to receive discovery response. There is one
race issue: if link switch happens before the timer stopped,
the timer count is reset because disconnection happens.
To resolve this issue, return if timer count is reset in
timer callback.
Change-Id: I7603de507f59dd988d70daad52fd4f4a2aa48d51
CRs-Fixed: 3586393
Allow userspace to configure power save inactivity timeout and
opm speculative wake interval through vendor NL interface.
STA enters into power save mode(PM=1) after TX/RX inactivity of
time duration specified by QCA_WLAN_VENDOR_ATTR_CONFIG_PS_ITO
in milliseconds.
STA speculatively wakes up to look for buffered data by AP at
QCA_WLAN_VENDOR_ATTR_CONFIG_SPEC_WAKE_INTERVAL interval after
entering into power save. If configured zero, STA wakes up at
upcoming DTIM beacon.
Change-Id: I86cbd35d6f61ae600b4784bd95209fac62021941
CRs-Fixed: 3567042
Pass g_wow_spec_wake_interval along with g_wow_data_inactivity_timeout
to firmware through WMI which are used in WOW mode. These configs are
honored by firmware when User defined OPM is set.
Change-Id: I24306e8aa0b7b3f7fce9453f6a98d4922b7c3f62
CRs-Fixed: 3567042
STA connected to an 2.4 GHz BSS fails to get IP
due to VDEV restart triggered by bandwidth upgrade.
Wrong bandwidth upgrade happens upon the reception
of the first beacon after connection.
Beacon opmode change logic considers supported channel
width cap in the HT capability IE to retrieve the
bandwidth of 2.4 GHz BSS. However, the AP can support
both 20 & 40 MHz, so using this capability will lead to
wrong bandwidth upgrade.
Use the recommended channel width set from HT Info IE
to retrieve the proper bandwidth.
Change-Id: Icf07501a97f34125158ea643a9e5b848a5b18e3e
CRs-Fixed: 3585499
After roaming TDLS is enabled only on associated vdev and
it remains disabled on link vdev. This causes TDLS peer
update to be sent with TDLS disabled on that vdev.
Enable TDLS on link vdev after roaming.
Change-Id: I7fe42ea2eebe02ae282965cfa6116f1e35de4490
CRs-Fixed: 3583163
Trying to get the pre_cac adapter by iface before its created,
which will return NULL always, leads to pre_cac open failure.
Remove accessing the pre_cac adapter before create.
Change-Id: I31363d0ff8eb39fb1b16d3be20743d26fc7469a2
CRs-Fixed: 3586239
With this change add below helper APIs:
1. API to get number of SAP interfaces.
2. API to get number of beaconing interfaces.
3. API to get all active SAP interface channels and vdev ids
4. API to get all active beaconing interface channesl
and vdev ids.
Change-Id: Ib4781ff529fce494772cc12c7921c914adf5555b
CRs-Fixed: 3579760
Clear the current connected ML AP keys for all the links
including standby links after roaming to new AP.
Change-Id: I9cc548ba21648d1a1c123d15d1c8524dba141ea5
CRs-Fixed: 3581733
In case of mlo connection, when get_station stats is queried on
STA mld_mac address, driver sends aggregated mlo vdev station
stats to the framework. But framework expects driver to fetch
aggregated stats when queried on AP mld_mac address.
So, to satisfy framework's expectation, send mlo aggregated stats
when queried on AP mld_mac address.
Change-Id: I59b93c32939fddb56492a475d3f55b67f8eeab4b
CRs-Fixed: 3585276
Currently while processing roam synch indication event, the
setup links info is filled for WLAN_UMAC_MLO_MAX_VDEVS(2). But
with 3 Link MLO support, it will reject the roam synch
indication event.
So allow 3 Link roam synch based on fw capability and ini
intersection for number of links supported. Use
wlan_mlme_get_sta_mlo_conn_max_num() API to get max allowed
links for connection.
Also replace array length declaration for setup_links having
WLAN_UMAC_MLO_MAX_VDEVS and use WLAN_MAX_ML_BSS_LINKS instead.
Change-Id: I1982e50f5036ba4eacbab50044444a7238cd1073
CRs-Fixed: 3573066
Update the mlo_support_link_num config to 3. This will enable
support to connect/roam to 3 Link AP with 3 links advertised.
Change-Id: I6241f7024271208c8d1584549edb91cc37fadcb8
CRs-Fixed: 3582858
If FISA is not enabled in config file, driver will
crash. Change adds error handling for no_support
return case.
Change-Id: I82e886a16f51e4e6db049b9224547b30bb9a10b4
CRs-Fixed: 3582517
Current code checks vendor version not target to determine
whether or not to enable bazel ddk. Fix this by checking
both vendor version and target to enable DDK.
Change-Id: I7503ce966d128d9a1350426eb8a9aee6dd013a1d
CRs-Fixed: 3581963
In hdd_adapter_get_link_mac_addr() API return netdev addr
if the connection is not ML-type as netdev addr is used for
connection.
Change-Id: Id32694c645c27c8a7d7d738d0f980054f85e5b94
CRs-Fixed: 3585513
If AP EHT cap doesn't support 320 MHz then DUT STA session EHT
cap shouldn't support 320 MHz sounding dimensions.
Change-Id: Ibc7161d2bda32db03873bf354831b5276eb48f27
CRs-Fixed: 3573428
If GO is MCC with STA on 2.4 GHz, move GO to STA channel for
SCC before 2.4 GHz preferred SAP start. This is to avoid SAP
start failure because we don't support 3 Home channel MCC in
same mac.
Change-Id: I507fe8d9d283c54524ea647d8b74c7e167a031d0
CRs-Fixed: 3562893
Register event handler for WMI_ROAM_SYNCH_KEY_EVENTID.
Store the roamed AP keys for all links in crypto module
Add CM function pointers to iterate and store the parsed
keys for each link.
Change-Id: Icee5eeea23724a7d69cf895023e75e856d88a685
CRs-Fixed: 3577927
Rename policy_mgr_is_vdev_ht_ll_sap() api to
policy_mgr_is_vdev_ll_ht_sap() api.
Change-Id: I919963a1ee899d34f3e924ef4adf474032beb8a9
CRs-Fixed: 3560573
During link switch, as part of the disconnect sequence, roaming
is enabled on the other connected vdev and this causes RSO start
to be sent before vdev up is sent on that vdev. This causes
abnormal firmware behavior.
So don't send enable roaming till the vdev is up in case of link
switch. RSO start will be sent as part of the install key sequence.
Change-Id: Ib9fe520ec3d2b5c91fdba192934418e235082a31
CRs-Fixed: 3581618