Add API to get dp peer authorize state.
Also modify dp_tx_get_rbm_id_li to update rbm for IPA offload
scenario
Change-Id: I0f8cca4623a1c3b840f336aa6d67740951cb6700
enum wmi_channel_width has defined WMI_CHAN_WIDTH_160P160
and WMI_CHAN_WIDTH_320. Therefore add corresponding
definitions in enum wmi_host_channel_width, which is then
1-to-1 mapped to enum wmi_channel_width.
Change-Id: Iff5dc1f678874e1d15581a1ebbacc06c25d09699
CRs-Fixed: 3062062
From 5.11 kernel, nla_strlcpy() is renamed to nla_strscpy() since
it works more like strscpy() than strlcpy() after the enhancement.
Hence handle it accordingly in WLAN driver by creating wrapper API
wlan_cfg80211_nla_strscpy().
Change-Id: I4c5ca1738048605c842c827d1706353bc012fed8
CRs-fixed: 3060060
From 5.14 kernel, panic_notifier_list is moved from kernel.h to
panic_notifier.h, hence explicitly include the header file in
order to access panic_notifier_list.
Change-Id: Icf546ebea5a19b79602031b4fd92b498db0048c0
CRs-fixed: 3060060
Fix the second cfreq2 frequency returned by the service
API, wlan_get_320_center_freq, for a channel ranging
between 33 (6115MHz) to 61 (6225MHz).
CRs-Fixed: 3060832
Change-Id: I656a5d6633cfa48aaeff5f0ba53e4c6138f5d8f8
Handle announce timeout value that is received as a part of
the TWT setup command and provides it to the firmware through
the WMI_TWT_ADD_DIALOG_CMDID. If timeout value is non-zero
then firmware waits up to timeout value to use data frame as
announcement frame. If timeout value is 0 then firmware sends
explicit QoS NULL frame as announcement frame on SP start.
Change-Id: I682d1dc4e304042e4e9b8d6c6a73dc13fbbdccab
CRs-Fixed: 3053956
Adding a nbuf and nbuf->data prefetches in 2nd loop
of Lithium datapath RX improved UDP throughput by
about 250Mbps.
PINE default driver: 3189Mbps @ 100% core-3
PINE with prefetch: 3469Mbps @ 100% core-3
Note: PINE reo ring is mapped to core-3.
Change-Id: I7f166b52c3697facdce3954994755c9c1412c1f3
In certain cases the driver checks whether the peer is a assoc link
or non-assoc link, in case of legacy connection when mlo is disabled
return true for assoc link.
Change-Id: I50e6b22754ffb26fbb4b7892a962bc754479f7a8
CRs-Fixed: 3059278
Currently driver invokes regulatory callbacks after pdev create
and from reg cc event processing. In case of restart of the
driver because of SSR or idle restart, driver ignores the default
country and sets the user set country which was there before SSR
or idle shutdown. Now driver continues restart and creates pdev.
During pdev creation it propagates reg rules from psoc to pdev
which was there in psoc before shutdown and after pdev creation
it invokes the regulatory callbacks, as part of this hdd dynamic
callback is invoked and it tries to schedule the regulatory work.
Since idle restart is a vdev operation so driver is not able to
schedule the work as it does not get the dsc op and it waits for
500 ms to reschedule the work. In this 500ms time driver gets the
response of the set country command which was sent to fw to set
user country. This command also invokes the hdd dynamic callback
and regulatory work gets scheduled and scan channel list command
is sent to fw.
Now if any scan is going on in the FW and after 500ms if first
work gets rescheduled, it again sends the scan channel list to fw
which cancels the ongoing scan.
To address issue, add a change to not invoke regulatory callbacks
from pdev creation if user country set is pending.
Change-Id: I5686163644409ef19507c19ae31f7f1e7892931f
CRs-Fixed: 3054603
The current PN is a 128-bit field which was incorrectly
stored into a 64-bit variable, leading to stack corruption.
Fix this by increasing the size of the variable
for current PN to 128-bits.
Change-Id: Ib26cc0bb7d244360afb258a55d5b9a8ddd6aa4ca
CRs-Fixed: 3059345
Move basic IEEE 802.11 field definitions that are not specific to
cryptographic functionality, from a cryptography related header file
to a common header file for IEEE 802.11 definitions so that these can
be used by other 802.11 protocol processing modules. The crypto header
file already includes the common header file, so there is no effective
change in code visibility of the definitions for crypto code.
Change-Id: I439fe818a457cc7694fdb431f5d2c1a7552f2caa
CRs-Fixed: 3059572
Add stop timer flag to avoid resubmission of tx capture work queue timer
while del_tiimer_sync.
CRs-Fixed: 3056656
Change-Id: I72bfb6916f02297b15bb733359c0e4d7f91f0b73
When the AFC response has a disjoint set of CFIs and frequency range,
the ACS trigger is called even though the AFC master channel list is
empty.
Due to this, ACS happens even though the AP's destination power
mode is LPI.
To fix this issue, call ACS trigger only if the AFC master channel list
is non-empty.
Change-Id: I217d23827b34ac577649b82b278a203bf01fa1f6
CRs-Fixed: 3052805
Remove ifdef macro inside a function and move the mlo param
update to separate function.
Change-Id: I2037519fda00c17efcec3bab34340f27d58324c0
CRs-Fixed: 3058432
Deliver the oldest management frames to upper layers if
the management rx reorder list grows beyond the maximum
configured size.
Change-Id: Id0199849e26804310dd502051b8e14f56f0df795
CRs-Fixed: 3051431
Add definitions for size in octets for the following subfields in the
Common Info field of Basic variant Multi-Link element: BSS Parameters
Change Count, Medium Synchronization Delay Information, EML
Capabilities, and MLD Capabilities. These definitions are as per
IEEE802.11be D1.0 (but also happen to apply as of IEEE802.11be D1.2).
Change-Id: I36725292f29da1f03caed6baa5d25c02a06c2c4f
CRs-Fixed: 3057853
For specific QCA6174 device, need clear LOW_POWER_INT_MASK register
bit3/4 to disable pcie low power interrupt after suspend, bit3 is for
INTR_L1SS and bit4 is for INTR_CLKPM, this is to fix issue that PMIC
VREG_L30A don't turn off when XO is in shutdown state.
Change-Id: I4833e4143c48a3bf734745a5e772a7a76a94d63c
CRs-Fixed: 3028269
The MLO cap is getting reset as part of getting valid candidate, this is
leading to reset of MLO cap for supplicant selected ML candidat as well.
Add fix to Clear vdev MLO Cap as part of updating vdev mlme address
Change-Id: I19ce9711011173505a829dc5b308e8890b8ffe6c
There is a memory leak in the mlo connect failure the connect req
and the connect, ies are not getting freed because of the mlo is vdev
check. During the allocation there is no condition as such, so remove
the same during the connect failure path to resolve the memory leak.
Change-Id: I9076761cd3b918435af9929fcf888996d2129e98
CRs-Fixed: 3057979
FW may experience HWDTIM mode enter and exit, if HOST can't queue
frames fast enough, this will bring 10ms latency for TX under WoW.
This change adds an indication bit to notify FW whether a TX happens
after WoW wakeup, then FW can discard HWDITM and reduce TX latency.
Change-Id: Ib695a0e5d032af4be27fef59f3c5123a35428d7d
CRs-Fixed: 3046987
The bonding channel array is calculated by adding center frequency to
hardcoded offsets.
Since, they can be calculated by Artihmatic Progression, replace the
hardcode assignments.
Change-Id: I4f145ac05f8266a69a6787783cb627200f52563e
With the introduction of 240/320MHz channels with 11be, sub-channel
marking has to enhanced.
Find the sub-channels of the 240MHz/320MHz channel that got affected by
radar.
Change-Id: I0b0d057b533ad4e6c4d1627c878e3823d1c75979
With the introduction of 11BE, channel puncturing becomes possible.
Hence, the DFS channel structure should be updated with channel puncturing
information.
Change-Id: Ia1bccd55e7fadde2a49fb08bd30ff6b5b2cc6ba1
Add the following DFS channel flags for 11BE:
1) WLAN_CHAN_320MHZ
2) WLAN_CHAN_EHTCAP
3) WLAN_CHAN_EHT20
4) WLAN_CHAN_EHT40PLUS
5) WLAN_CHAN_EHT40MINUS
6) WLAN_CHAN_EHT80
7) WLAN_CHAN_EHT160
8) WLAN_CHAN_EHT320
Add the following checks for both 5G channels and 6G channels:
1) WLAN_IS_CHAN_11BE_EHT20
2) WLAN_IS_CHAN_11BE_EHT40
3) WLAN_IS_CHAN_11BE_EHT80
4) WLAN_IS_CHAN_11BE_EHT160
5) WLAN_IS_CHAN_11BE_EHT320
Update the WLAN_IS_CHAN_DFS check to include 11BE modes.
Change-Id: I2bd9e877aa0b4fca8f93bf2b72247f8fc29ae833
In reg_set_channel_params for 2G, if the input mode is HT40,
the primary channel is <= channel 8 (2447) and the secondary frequency
is not provided, add an API to fetch the secondary frequency,
giving preference to HT40+ over HT40- mode.
Change-Id: If1538e14f9ab427c9f9a12ee2eb0d9e28bbf8b86
CRs-Fixed: 3050678
This FEATURE_HAL_DELAYED_REG_WRITE_V2 was added to fix the
Audio jank issue, but it could not resolve it completely,
so that was later fixed by existing delayed reg write
support with the help of SMP2P messages to communicate
with FW regarding PCIe link status. This code is not being
used, so removing it and cleaning up the redundant code.
Change-Id: Iada088e72a76b4c071c8a80ee945f36ac959670e
CRs-Fixed: 3056475
Report the per chain AGC gain table index used as
part of cfr_meta_data. Add new fields in metadata
accordingly.
Change-Id: I40673f856b1a1ebb0a4a69bf44d4e0817db9cd6f
When sending the connect for subsequent links in MLO, make sure to set
the capability bit, otherwise it will be marked as assoc link.
Change-Id: Ic0145b40e84ea440ea389200356d1f916a1ba530
CRs-fixed: 3055892
It calls spectral_process_phyerr of spectral operations without any
check. Which cause null point dereference potentially. So, check this
pointer before calling.
Change-Id: Iae246f847dd41e62b628223652a9527a65b43799
CRs-Fixed: 3055246
Take care of the MLO peer bit indication to be
concatenated with peer_id to access the peer map
object.
Change-Id: Ia603a728101e83829a8906d1b847f42389e78ca6
CRs-Fixed: 3039326
Add the handler for processing the htt
peer map/unamp v3 and MLO peer map/unmap msgs.
Change-Id: Ie2ab0b76e7aee566ca3b9637b83fd7a14718ab01
CRs-Fixed: 3039326