Sap is started on freq 5640Mhz with BW 160Mhz and radar event
generated, and then SAP moves to freq 5680Mhz.
But before the move done, the regdomain update (because of Radar
detection) will trigger the wlansap_get_chan_band_restrict to run
and further move to SAP to freq 5180Mhz.
The client side still get old CSA event with 5680Mhz, and switch to
5680Mhz and get Bmiss finally because actually SAP is moved to 5180Mhz.
The band restrict logic should not handle radar disabled channel.
The radar detected channel (in NOL) should be handled by SAP radar
channel switch logic only.
Fix by skip the band strict check if disabled channel is in NOL
list, let the SAP radar logic to handle channel switch.
Change-Id: Ic284cf48653d7ebf8bc37a33d6caf1a5e673b78e
CRs-Fixed: 3019950
Add support for sending WMI_REQUEST_THERMAL_STATS_CMDID
to request for the thermal stats via vendor cmd:
QCA_WLAN_VENDOR_ATTR_THERMAL_CMD_TYPE_GET_THERMAL_STATS
This vendor cmd can either be used to clear the thermal
stats or to request for the thermal stats.
Added ini gThermalStatsTempOffset, which can
configure thermal temperature offset value for capturing
thermal stats in thermal range such as Thermal STATS
starts capturing from temperature threshold to temperature
threshold + offset.
If this ini is set to 0, then the events are disabled.
Also, add support for the FW event where the requested
thermal stats are sent in FW event
WMI_THERM_THROT_STATS_EVENTID().
The following attributes are sent in the events for every
level:
STATS_MIN_TEMPERATURE
STATS_MAX_TEMPERATURE
STATS_DWELL_TIME
STATS_TEMP_LEVEL_COUNTER
Change-Id: If8acdeec5bde33be346332ccaf39d78d0151203d
CRs-Fixed: 3016818
User configuration support to use scan request BSSID value
in Probe Request frame RA during the scan.
Change-Id: Ie0b7620428e1bfbd51e7430b6b7ad23ebede9e67
CRs-Fixed: 3021525
In roam invoke request, if bssid is same as connected
bssid use connected frequency.
Change-Id: I0e205ffab002b80021bf6a615e4cfc0a723f0ba5
CRs-Fixed: 3022351
When AGO starts ACS with 160Mhz, and driver selects 5660Mhz based on
channel weight because no 160mhz channel available at the time.
But ch freq 5660Mhz is not in PCL for AGO, driver selects 5825Mhz
based on channel weight. 5825Mhz only supports 20Mhz in current
regdomain and it's not preferred channel bw.
Fix by try fallback to lower bandwidth channel if request bw channel
unavailable.
Change-Id: I5646aefc5fbd48acb1396edf0e182616391e027c
CRs-Fixed: 3018731
Current even without connection, there is possible
rtpm is vote for up, which block suspend. which cause
more power consumption.
change as only allow pm qos vote when sta connected.
Change-Id: I44176ee233d4b2fb1d7a0d51936c847b2ce5f327
CRs-Fixed: 3019401
Enable the firmware module WLAN_MODULE_WPM with error log level
in wow mode by adding default values in the ini gFwDebugWowModuleLoglevel.
Change-Id: I53a729bde6cfb6d8141864472718a2d8da9efead
CRs-Fixed: 3022434
Populate assoc assoc link id in ML IE of an assoc request from
scan cache entry
Change-Id: I82b2b68f45411b1588c76ddd7ce9d21a93d972f3
CRs-Fixed: 3013684
Pointer 'ie_struct' returned from call to function
wlan_get_parsed_bss_description_ies, it may be NULL,
if not checking the function return status, this pointer
may be dereferenced. Check the return status to avoid it.
Free the allocated memory for error exit case.
Change-Id: I4d813838f25b5e2ad3069ad9547bb95f8f6a0e5b
CRs-Fixed: 3016814
When setting the country code, host sets a flag to keep track if its
waiting for a response from firmware. During init cases, host receives
this event without it ever setting the flag. This could cause issues in
retry logic if multiple events come back to back. Set this flag when
starting modules to block other events from happening as the country
is being updated.
Change-Id: I5850568e9d5729b22346b8ec0a1f212a886c4c36
CRs-fixed: 3010090
AGO started on 5220Mhz with BW 160Mhz, later Radar detected and
switch to 80Mhz by sap_indicate_radar API.
Sap_indicate_radar will overwrite sap_ctx->ch_params.ch_width to 80Mhz.
After commit I26ff00286b8e0cec33d3a63098f93d4000684df0,
sap_operating_on_dfs API will use sap_ctx->ch_params to check SAP
on DFS or not to decide channel switch for current ap.
This case sap_operating_on_dfs will return "false" for current
SAP (160Mhz), and then the Radar channel switch is not processed
by driver.
Fix by using the mlme API to get current SAP channel and dfs flags.
Change-Id: I1bbcc185c13cf6e40b9f5415cbdceb7ff3527470
CRs-Fixed: 3016683
-Extract new wmi struct added as part of MLO roaming
changes.
- Send EHT and MLO weightage percentage to FW via
WMI_ROAM_AP_PROFILE.
Change-Id: I6b3f1f62ef6ea323cd1b75f63a5c63c38b000f1f
CRs-Fixed: 3010039
cfg80211 resume request will be rejected if there is an SSR in
progress, Because of this modules are not coming out of suspend state
when there is an SSR after suspend request.
To avoid this, resume all modules before recovery shutdown.
Change-Id: I3d749e0a5971468805a009cb990a220e0645c169
CRs-Fixed: 3016002
In the case of kernel 5.10, we are not receiving PM QoS Vote
notification due to which device is entering runtime suspend
in the case where the device should not enter runtime suspend.
Adding check inside runtime suspend to check if there is any
global PM QoS vote and based upon vote decide if to enter runtime
suspend or not.
Change-Id: Ie6d35254d607e546abdd3ad70720f96d6eb8484d
CRs-Fixed: 3009024
If the STA DUT is attempting to connect in 160MHz channel width,
and if the HE160 Rx/Tx MCS is not valid after intersection, the
STA DUT will fallback to 80MHZ channel width.
Change-Id: I11fe8830851fcbb3796703a605568f83c9ff9932
CRs-Fixed: 3011510
Delay reg write feature is based on workqueue, for MDM platform
that only has one CPU, WQ is preempeted by NETRX/NETTX Soft IRQ
and lead to ring update delay, at last backpressue happens.
Change is aimed to disable delay reg feature for one CPU platform.
Change-Id: I133ab999739449009f18ecb030e9ca889ea63761
CRs-Fixed: 3002768
Delay reg write is not enabled on Waipio,
but it's enabled on former platforms.
Change is to enable it.
Change-Id: I10b5e30fe4d5485d38636fcb34c90ff2772e50ae
CRs-Fixed: 3015389
At present, driver doesn't check the set mon channel parameters
for HT40-, driver always set HT40+ for 2G channel 5 at present
by command "iw dev wlan0 set 5 HT40-".
Fix by check secondary channel offset from set channel parameters.
Change-Id: Ia69f193c72e9e97a4d6988e86bcfd3727089452e
CRs-Fixed: 3019982
Currently, wmi_roam_stats_event_id data is extracted and
processing is also done in wma. This is not inline with component
model where target_if takes care of data extraction and handover
the extracted data to corresponding component(connection mgr in
this case). Add changes to support the same.
Change-Id: I5e336b01e1a2183e49b3e6eeb125c7c9fd0fd73c
CRs-Fixed: 3003125
When operating in 6GHz band, don't send the peer legacy rates as it can
cause a rate mismatch and eventually a crash.
Change-Id: Idda718daaa66aeb5a80ed036055317e64f8226a2
CRs-fixed: 3005578
For platforms that don't have IPA module, 4 RX rings can be
enabled to map to 4 RX threads. This Change is to implement a
feature flag to separate the number of threads used for
different platforms.
Change-Id: I23744ca6333f29667b0860f386dc9fc45f29abe4
CRs-Fixed: 3018613
In SAP mode, the get sta info vendor command gets called for both
connected and disconnected state. If peer client is connected then
driver returns the SAP power save parameters to the userspace.
If peer client is disconnected then driver returns -EINVAL status.
Userspace cannot differentiate using this error code whether driver
is not able to handle the vendor command or peer client is
disconnected.
So, if peer client is disconnected then return -ENXIO error code
instead of -EINVAL.
CRs-Fixed: 3014906
Change-Id: I3ce5cd53e79c3bfaeed6571ea28b28ce2dfe26b3
mscs_pkt_threshold - This ini specifies the Voice pkt count
threshold to Send the MSCS action frame to AP. To disable MSCS
feature in driver set mscs_pkt_threshold = 0 in ini file.
Change-Id: Ie1d8d3f3289d8f41a16f187bf9256b959019d998
CRs-Fixed: 3013686
The purpose of the multicast Domain Name System (mDNS) is to resolve
host names to IP addresses within small networks that do not include
a local name server.
It utilizes essentially the same programming interfaces, packet formats
and operating semantics as the unicast DNS, and the advantage is zero
configuration service while no need for central or global server.
Based on mDNS, the DNS-SD (Service Discovery) allows clients to discover
a named list of services by type in a specified domain using standard
DNS queries.
Here, we provide the ability to advertise the available services by
responding to mDNS queries.
Change-Id: Id2a0468d49237c21062cfd1988e34903658cdad9
CRs-Fixed: 3008549