Reuse the tx descriptors released in tx completions
without releasing the associated skbs to reduce
the cpu utilization in direct switch mode.
Change-Id: I4ab3ac58977a626344877b8a818a4dbc4864aaf3
CRs-Fixed: 3393968
The kernel-doc script identified some documentation issues in the
hal/wifi3.0/qca5018 folder, so fix them.
Change-Id: I72d5664f7ce0dd289d26a006d9e4448b9753f082
CRs-Fixed: 3406484
The kernel-doc script identified a large number of documentation
issues in the QDF. A series of patches has already fixed many of the
issues, so fix most of the remaining ones.
Note that the QDF IPA abstraction still has issues, but it is under
rework, so not trying to clean it up until after the rework is
complete.
Change-Id: I10c33e341cb6b46e0f8ada99069616d450c07189
CRs-Fixed: 3406197
Whenever a frame is added directly to egress list, mark it as ready
for delivery.
Change-Id: Ifb2eff595227c3c6857666624ab272fd20845756
CRs-Fixed: 3405305
The kernel-doc script identified a large number of kernel-doc issues
in the dp/inc folder, so fix them.
Change-Id: I6213164d2209cc4de9684ae66281ee2999f82672
CRs-Fixed: 3375078
Currently 'wlan_reg_max_5ghz_ch_num'returns
INVALID_CHANNEL_NUM for countries other than US
as MAX_5 GHZ_CHANNEL maps to INVALID_CHANNEL_NUM
for other countries in their respective channel_map
structure.
To fix this issue of INVALID_CHANNEL_NUM for
MAX_5 GHZ_CHANNEL,instead of taking value from
channel_map[].chan_num, with fixed index of MAX_5 GHZ_CHANNEL,
check for channel_map[].cha_num with index starting from
MAX_5 GHZ_CHANNEL down to 5 GHz channels,
consider the first hit of chan_num which is not
INVALID_CHANNEL_NUM.
Change-Id: I364500f8e13cc42350103c5d236b12d71e28a4a6
CRs-Fixed: 3396340
The kernel-doc script identified some documentation issues in the
hal/wifi3.0/qca5332 folder, so fix them.
Change-Id: I780f8d20f6c9a22229dcd007ac4bb8f10174e1db
CRs-Fixed: 3406555
Add ucfg_dcs_switch_chan public API that
invokes wlan_dcs_switch_chan and can be used
when CSA is required due to DCS.
Change-Id: I4f91b0a70dde29520797c7b92cdecd01b96e55c2
CRs-Fixed: 3403459
1. Maintain and fetch PPEDS profile from be_soc instead of be_vdev
2. Enable WDS EXT mode for Direct Switch
3. Provide cdp API's and structures to interact with osif
layer to get PPEDS profile info
Change-Id: I997126e3b5ae85dabdcd6053115927122b8681da
CRs-Fixed: 3404778
Add support for generating link specific assoc request/response
and probe response for 2+ mlo links.
Change-Id: Iadd09efeb0b0098baeae25f3b1968826e75dedc4
CRs-Fixed: 3049640
Add TLV recording support for Rx monitor. The TLV
tag and its data are recorded in a fixed size buffer
Change-Id: Idad896d1ece25a499ab76028c8a231fcd9947f66
CRs-Fixed: 3402543
Add support for vdev_param_set_profile to indicate
AP profile to FW. VDEV_PARAM_XPAN_PROFILE can be used
as bit map to support other AP profiles. So, rename vdev
param VDEV_PARAM_XPAN_PROFILE to VDEV_PARAM_SET_PROFILE
to support multiple ap profiles. Bit 0 indicates XR SAP
profile is enabled or disabled and BIT 1 indicates XPAN
profile is enabled or disabled.
Change-Id: I61c434c7a4bbba013690011c0a777af199207630
CRs-Fixed: 3401468
Add mlme_vdev_reconfig_notify callback to notify the ML
reconfig link removal starting after receive the first
ML reconfig link removal IE.
Change-Id: I9ae37b7defc75c97e7bc39e07c9d154e1923aedd
CRs-Fixed: 3380159
The kernel-doc script identified some documentation issues in the
umac/regulatory/dispatcher folder, so fix them.
Change-Id: I2d38ec243bba2f48f522e2b80ac097eec0e06a3c
CRs-Fixed: 3402138
Add changes to read R-TWT svc bit from FW and update capabilities on
host accordingly. Update add twt session command to include new
params required for R-TWT.
Change-Id: I91cea65ef737b6fa445cb3680dac15e0f1063446
CRs-Fixed: 3399205
The kernel-doc script identified some documentation issues in the
hal/wifi3.0/be folder, so fix them.
Change-Id: I9730c36e4d36dbe0ae551067c5c500441f07569f
CRs-Fixed: 3400933
Add support to get min and max band width of provided
channel enum, so that configured bandwidth can be validated
whether it lies in the range of bandwidth or not.
Change-Id: I765b4e8013d021eaca41b37789d1ef3f1d57fa7d
CRs-Fixed: 3402928
Currently, if ACS_LAST_SCAN_AGEOUT_TIME is not provided by user then
the last_scan_ageout_time is updated to 0 and full scan is triggered
to find channel instead of using previous scan results, to avoid delay
use last full scan result based on ini "last_scan_ageout_time" value.
Change-Id: Ic38f0d3c83087dafde54b43762dd14deb7d02870
CRs-Fixed: 3404550
In api wlan_add_age_ie(), age ie is included in scan
result.
Remove api wlan_add_age_ie() as the bss age is
calculated using NL80211_BSS_SEEN_MS_AGO.
Change-Id: Ided2364ce7a52d942d29343455fc7ae511be9a18
CRs-Fixed: 3391276
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_rx_defrag.[ch], so fix those issues. In
addition, there are a number of instances where public functions have
their implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I4080e4b614c5d1f0253afd06fc4eb650142b76d4
CRs-Fixed: 3373163
In reg_is_chan_supported() API, the stack object chan_list is
uninitialized and is used by channel search API. The puncture pattern
inside the chan_list is set to a random value and it causes channel find
failure.
CRs-Fixed: 3402977
Change-Id: Icec8e5f207d3d8bfb5a01dafe8aa6adc5bc18a9d
The kernel-doc script identified some documentation issues in the
umac/regulatory/core folder, so fix them.
Change-Id: Id666d5a92415158591e6379b619fb34c518aeca1
CRs-Fixed: 3401870
Replace reg_is_afc_available() with reg_is_afc_power_event_received(),
return true when AFC enable and AFC updated power info.
After this update, if AFC available, SAP can set reg_cur_6g_ap_pwr_type
correct so that TPE in beacon can populate proper power value
to client.
Change-Id: I7564947bdeb13ac1e35c84cbe31ec1f428b3fae6
CRs-Fixed: 3391120
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_txrx_wds.[ch], so fix those issues. In
addition, there are a number of instances where public functions have
their implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I2f80d9715f772a59072f2c4158548f47df8bb055
CRs-Fixed: 3373164
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_internal.h, so fix those issues. In addition,
there are a number of instances where public functions have their
implementation documented instead of having their interface
documented, so duplicate that documentation. The documentation at the
implementation will be removed separately.
Change-Id: I9684f5c2da7edb621a53dfbc5f1f8de2c70d8382
CRs-Fixed: 3373166
Add an API ucfg_reg_enable_disable_opclass_chans where given the
operating class, disable/enable the channels listed in the input
channel list.
The input channel list and operating class should be of 2 GHz or
5 GHz band.
Change-Id: Ie9dbbadbe28e5b5fdc2ec9c60c284da9c9e2286f
CRs-Fixed: 3301654
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_ipa.[ch], so fix those issues. In addition,
there are a number of instances where public functions have their
implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I664c657e4e7424db576bf19ca8a26c697b37e46f
CRs-Fixed: 3373165
Add new roaming invoke source enum CM_ROAMING_LINK_REMOVAL.
That will be used in link removal process to trigger STA
roaming to new AP.
Change-Id: I78cb1fcfce8e11fcca33ce99c80a4d6444ac3fea
CRs-Fixed: 3353004
Previous the following patch fixed all of the known kernel-doc issues in
dp/wifi3.0/dp_types.h:
Change-Id Ie93b7f802926e562169e51a56e5fc83de845b310
qcacmn: Fix dp_types.h documentation
Unfortunately, concurrently the following patch introduced a new issue:
Change-Id I8bc0c3c78e3eb8c6679e00442d607615bab38f96
qcacmn: Add mcast enhance flow for single dev
And subsequently the following patch introduced two more:
Change-Id Ic3c8122fca9124e41931ec445946aec5e8863434
qcacmn: Add datapath config event history
So fix those three new issues.
Change-Id: Id1416a1426e5442f1e96db4da35412ef5374e568
CRs-Fixed: 3403640
The kernel-doc script identified a large number of documentation
issues in the QDF nbuf abstractions, so fix those issues. In addition,
there are a number of instances where public functions have their
implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I744e98469d0fd6d6a2c7c907b2f9af5307f84458
CRs-Fixed: 3398757
Driver doesn't sort the AKM properly based on security
to use for the association. This causes lower secure AKM to be
used when AP advertises multiple AKMs.
Choose more secure AKM for association. Below is the new
changed order of Secure AKMs:
1. FT-FILS SHA384
2. FT-FILS SHA256
3. FILS SHA384
3. FILS SHA256
4. WPA3 FT-SUITE B Sha 384
5. WPA3 802.1x Suite B - 192
6. WPA3 802.1x Suite B
5. WPA3 FT-SAE
6. WPA3 SAE EXT Key
7. WPA3 SAE
8. WPA3 OWE
9. WPA3 DPP
10. WPA2 FT-802.1x
11. WPA2 802.1x SHA256
12. WPA2 802.1x
13. WPA2 FT-PSK SHA384
14. WPA2 PSK SHA384
15. WPA2 PSK SHA256
16. WPA2 FT-PSK
17. WPA2 PSK
Change-Id: I18910b56b15624725ad4fc0cdb0b37ff241e82ff
CRs-Fixed: 3400535
Define a new per vdev capability flag to exclude the sta
profile from MLO IE in unicast probe request frames.
Change-Id: I4486e4efbbb85dfa1e7b9d47326c60c79c974829
CRs-Fixed: 3392086
Add new QCA vendor attributes to configure the driver for EHT
capabilities and multi-link configuration.
Change-Id: I322a6fe112b83b3636c9383db152bfaa5dd34c14
CRs-Fixed: 3395113
In the current implementation, the frequency range and maximum
bandwidth of the regulatory rule CHAN_5835_5895_1
are 60 MHz and 80 MHz respectively. Which means that maximum
bandwidth is greater than the frequency range for this rule. But the
kernel does not allow us to have such a rule.
If we change the maximum bandwidth to 40 MHz for this rule, the kernel
warning disappears. However, it introduces a new problem.
If the beginning frequency of rule CHAN_5835_5895_1 matches with the
end frequency of a previous rule, say CHAN_5735_5835_2, then the
function 'reg_do_auto_bw_correction' cannot stitch them (the rules)
properly as it simply adds the max bandwidths the two rules.
In this case, if the maximum bandwidth was reduced from 80 MHz to
40 MHz and previous rule's maximum bandwidth was 80 MHz and
the new stitched rule would have 120 MHz as the maximum bandwidth.
We should consider the frequency range of both the rules in order to
achieve the max bandwidth possible. Therefore, use the version of the
function 'reg_do_auto_bw_correction' that already does it.
Change-Id: Ib3cb1a31b6d376b9b02f3d4e6b56cd7b5e6fed3a
CRs-Fixed: 3381553
The kernel-doc script identified a large number of kernel-doc issues
in the dp/wifi3.0 folder. A series of patches have addressed most of
the issues, so now fix the remaining issues. Just like in the previous
patches, there are a number of instances where public functions have
their implementation documented instead of having their interface
documented, so make sure that the interfaces are documented.
Change-Id: I4bc39b0e1a9d8c264b72ec6db76ff7e92d24f277
CRs-Fixed: 3373822
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_tx_desc.[ch], so fix those issues. In
addition, there are a number of instances where public functions have
their implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I349f0e9d9336ae632fb31e88ddc34ecacc4a1f68
CRs-Fixed: 3373161
Previous the following patch fixed all of the known kernel-doc issues
in dp/wifi3.0/dp_rx.h:
Change-Id Id0ac49ebfa23790346384d688cc6346f513a7969
qcacmn: Fix dp/wifi3.0/dp_rx.* documentation
Unfortunately, the following patch introduced two new issues since
it copied incorrectly formatted documentation that had not yet been
corrected:
Change-Id Ic51a9742f65cee677ed7f3081f49fb3ece5b42f1
qcacmn: Optimize DP Rx Error Handling (Part-1)
So fix those two new issues.
Change-Id: Iea99708e31564525d0d4a0d94ea04ef9aa036ed8
CRs-Fixed: 3403645
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_tx.[ch], so fix those issues. In addition,
there are a number of instances where public functions have their
implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I7a09c451f3f4af3dd606778c49cce81677f6fe58
CRs-Fixed: 3373159
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_peer.[ch], so fix those issues. In addition,
there are a number of instances where public functions have their
implementation documented instead of having their interface
documented, so move that documentation.
Change-Id: I996764f93addfa270ef7aaedd2e23c71be287f77
CRs-Fixed: 3373168