As we are using index_look_up_overwrite field in TX
descriptor with WDS_EXT need to reset this field in
FAST TX API even in AP mode
Change-Id: I6027a2d99be715973af5f8091755f0a4a9256010
CRs-Fixed: 3450922
Fix intraBSS MCAST traffic issue between legacy and MLO
clients. Fix includes below changes
1. Change get_mcast_primary_vdev to return correct value
in case current VDEV is mcast primary
2. Avoid checking vdev->mlo_dev as it is set only for
mcast primary VDEV
3. In intraBSS ucast case use destination SOC to get the
destination peer with da_peer_id
Change-Id: I0d7a890bc62f703cd92e7c9edc20768a9a487d06
CRs-Fixed: 3456458
As IPA has moved out of the kernel, ipa_uc_reg_rdyCB
interface call from WLAN is not needed anymore
as ipa_wdi_init_per_inst() initialization call will
handle this. This change will add support to retain
this call only for legacy devices.
Change-Id: Icb479562e091d388e03ef5a38b3e95d4dbf06271
CRs-Fixed: 3459071
The kernel-doc script has identified a couple of documentation issues
in pktlog_ac_api.h, so fix them to the best of our ability.
Change-Id: If5db73e7d019def46d0ba71fb0b01fe4327a521a
CRs-Fixed: 3451053
In outdoor deployment, when the target sends STOP_TX event, the 6 GHz
AP continues to beacon in the SP power mode, without bringing down the VAP.
In mlme_check_curchan_and_set_ap_pwr_type, since the
afc_power_event_received flag is cleared and set to false during STOP_TX,
the API wlan_reg_get_best_pwr_mode returns LPI as the best power mode.
When LPI is given as input to wlan_reg_set_ap_pwr_and_update_chan_list,
it returns an error as LPI rules are absent in the pdev
(outdoor deployment). But the error status is not handled. Current channel
list also is not updated with the AFC_NOT_FLAG. When the channel list is
sent to the hostapd, NO_IR flag is set based on the presence of the
AFC_NOT_DONE flag in the current channel list. As a result NO_IR flag is
not sent to the hostapd, and the VAP remains in the up state.
To fix this issue, in reg_get_best_pwr_mode_from_eirp_list, skip the
unsupported modes (in this case LPI and VLP), from best power mode
computation. Also, in reg_get_sp_eirp, return the SP EIRP when no rules
other than SP are available.
Also, rename reg_get_eirp_for_non_sp to reg_get_eirp_from_mas_chan_list.
Modify reg_get_sp_eirp to call reg_get_eirp_from_mas_chan_list when
CONFIG_AFC_SUPPORT is not defined.
Change-Id: I1b11bf0580ec6af09ee8f9827bc85fae7930e414
CRs-Fixed: 3436245
Increase the DBR ring to support DBR module
DBR_MODULE_CBF standalone sounding CV data
for QCA5332 target.
Change-Id: I4ab0741d92c7c7a32243173c87d022befa702399
CRs-Fixed: 3456418
In WBM2SW Rx Error path for BE
specific functionality
1) HAL API's/Function pointers are replaced
with specific function calls.
2) Efficient read/write of WBM Error Info
from HAL Rx desc.
3) Minimize reading data from Nbuf TLV.
Change-Id: Ic8793ffcbeb2411c9b81fb32acae062e8a1f40cc
CRs-Fixed: 3362828
Add gActionOUIDisableDynamicQosNullTxRate to control FW's dynamic qos
null tx rate feature.
Some APs sometimes don't honor Qos null frames with some specific rate.
This ini will disable dynamic qos null tx rate feature for specified
APs.
Change-Id: I7f76d19be6f4714166bf5761b43c7c9c7d041308
CRs-Fixed: 3451330
Add new params(ul_tid_bitmap & dl_tid_bitmap) for rTWT invite sta cmd.
This will be sent from test command to trigger invite sta.
Change-Id: I843badeb5e826ded5ab4f8083448b2b7fc4c3486
CRs-Fixed: 3456956
In Linux kernel 5.5, commit 43756e347f21 ("scripts/kernel-doc: Add
support for named variable macro arguments") improved how named
variable macro arguments are handled, and changed how they are
documented in kerneldoc comments from "@param...", to "@param",
deprecating the old syntax.
In Linux kernel 6.3, commit 3bdd9f075f54 ("scripts: kernel-doc: Remove
workaround for @param... syntax") removed support for the old syntax.
Currently the dfs_log() documentation uses the old syntax, so update
the documentation to use the new syntax.
Change-Id: I1aa44cd36ffacb0b26ee279496fc5a99b8de371d
CRs-Fixed: 3451492
The 11az Trigger Based Ranging for responder related feature
capability is not set currently.
Add 11az TBR responder capabilities.
Change-Id: I0bd9a88231dfc7200895001d109aecdaef4aed59
CRs-Fixed: 3436972
QCN9160 CFR is supposed to in parity with QCN9000, hence
set the proper metadata version.
Change-Id: I34f06dd856d2c2ccf3b956592fa0f1035e608d46
CRs-Fixed: 3454540
Allow user configuration options to skip a radio as
primary-umac in multi-link operation.
Change-Id: Ic7c8dd5c1cf7855f4fb762daf9ace7cb82e02cac
CRs-Fixed: 3437922
There is an ill use of qdf_mem_set() in dp_htt_t2h_msg_handler().
This change fixes this issue by assigning 0 to the local struct
variable instead of the memset, which can also reduce some code.
Change-Id: I303c1adc167a8e1ab82692a294fe28bc4e8a97dc
CRs-Fixed: 3443572
Currently, NDP_END_REQ TLV does not requires vdev id to send to
firmware as firmware maps the NDP session with instance id.
But in some cases, (such as testcase to valid NDP end request on
the vdev id), host needs to send vdev id also in NDP_END_Req.
So, to fix this, in NDP end req TLV, add vdev id with validity
flag to check vdev id is valid or not.
Change-Id: I23e7b1d4ce01ae87c37567f6f01adda38bf18fb6
CRs-Fixed: 3454796
Add DP API to evaluate if TX ILP needs to be enabled,
it is only enabled if following two conditions are met,
(1) INI for TX ILP is enabled
(2) htt msdu index to qtype mapping table index 3 value is
HTT_MSDU_QTYPE_LATENCY_TOLERANT
Change-Id: I4d0c1103941b8b12b8441762dc6b45d28ee1df21
CRs-Fixed: 3447096
Arrays are not initialize and due to which
elements in array might be used uninitialized.
To avoid this case, arrays are initialized to NULL.
Change-Id: Ib83c8f512369f877b9c39d9e6eb431e9bdca7ad9
CRs-Fixed: 3449024
setup to correct value by shifting intr_timer_thres_us
by 3 for interrupt timer to take less time.
Change-Id: I0eb799bf3a3443a7ca4a43512b7ec03444da81bc
CRs-Fixed: 3439468
wlan_reg_recompute_current_chan_list() is defined for MCC only.
Make this wlan_reg_recompute_current_chan_list() common for both WIN
and MCC.
CRs-Fixed: 3451996
Change-Id: Ifcead79a68d0ed04ac1e4b78063f36b91e4d6fd8
With pcie 1 and pcie slot 2, if ipa updates the 40th bit then
access to pcie memory region is going in pcie_0 memory region.
IPA is not allowed to update 40th bit for any address given
from pcie_1 and pcie_2 memory region.
Fix is do not send the pcie update status as true to IPA for DB address,
so that IPA will take long path of mapping the address in smmu context and
then it will access the pcie region.
Change-Id: Ieeaf1262cef927ca89cded3714c6e37550b8f197
CRs-Fixed: 3448895
FW sends ppdu_id for every TLV in Tx HTT PPDU completion path.
This ppdu_id has 8 MSB bits filled with FW metadata which is different
for every TLV. Host uses this ppdu_id for list maintenance.
Presence of the FW metadata results in ppdu_id mismatch for different
TLVs even when they belong to the same PPDU.
Consider only LSB 24 bits for ppdu_id on host side.
Change-Id: Ic6ec780fe97f0597fcd841b33ac0dce33ad986c9
CRs-Fixed: 3445603
HAL changes to populate agc gain, CFO, rx_start_ts, mcs_rate and
gi_type to CFR info.
Change-Id: I20b4ce1b8c065349106cd999054ff08c7f3521ec
CRs-Fixed: 3453631
CUrrently if IPA offload is enabled in SAP mode
the default Rx routing is to IPA serviced REO rings.
With this change the default raouting is set to
WLAN HOST serviced REO rings.
Change-Id: Ibf9dead063c9d9fbc6b1fd502342ea13456b2473
CRs-Fixed: 3421879
mlo setup soc down indication can be called from soc_stop and detach
path. Add logic to handle multiple calls by ignoring down if the state
is already cleaned up.
Change-Id: I6f5c11cc30f38423661063d2834a5b4efa088a49
CRs-Fixed: 3450300
Mutex cannot be acquired or released from
interrupt context.
To fix the warning in log, do not acquire
or release log in while stopping t2lm timer
Change-Id: Ie1e885b162a22e327d3260fecbd71153b947e11b
CRs-Fixed: 3444779
Add new roam failure reason code for no ap found and final
beacon miss sent and reason code for no candidate found
and final beacon miss sent
Change-Id: I4c4813efdedd30bd65c7baf0110c292c5ae3573c
CRs-Fixed: 3437119
Currently if IPA UC is not loaded when opt wifi dp
is enabled, the return status is not handled correctly.
This causes the qdf_event_create to happen for ipa ctx
which later triggers an assert during ipa cleanup.
This fix will handle this scenario.
Change-Id: Ie0a38bd6745f54a37be422e1d352f6c2a7960bbc
CRs-Fixed: 3444783
During initial AFC development it was assumed that AFC object would travel
till an application endpoint outside the driver, presumably till an
application of a different machine anything in the internet and therefore,
a packed and well formatted structure was propped for the AFC object.
However, when the AFC object leaves the driver, it is converted to an
object that has NL80211 TLVs to represent it. Therefore, the packed
AFC-request object is no longer a necessity. Moreover, since an unpacked
structure (or structures) is speed/time optimized, modify the packed
structures into unpacked structures.
Change-Id: I08db1911a355b6eebffa0e13def547c98ddf38d3
CRs-Fixed: 3431997
Send the driver disconnect internal reason code as an event to user space
using QCA_NL80211_VENDOR_SUBCMD_DRIVER_DISCONNECT_REASON vendor command.
Change-Id: I0027675b809b94628b6c0c4b8e8286e38fa9f47d
CRs-Fixed: 3371398
Move fail_cnt and abort_count to soc->stats
struct, so that we can retrieve stats
during a crash. Also fix few other errors
found during initial tests.
Change-Id: Ieaee10b2dd2b5e589c21aa50c83dcf352623275d
CRs-Fixed: 3428501
Currently IPA autonomy is disabled for opt wifi dp
feature inorder to set default packet routing
to HOST REO rings instead of IPA. The check currently
depends on the feature flag set from IPA.
But this does not handle the case if feature is
enabled from WLAN but disabled from IPA, as autonomy
will get enabled in this scenario and default packet
routing is set to IPA.
This fix will check if opt_wifi_dp feature is
enabled from WLAN and disable autonomy to
ensure the default routing is always set to
HOST REO rings.
Change-Id: I3673d7dbeefcadb45132ea300f4ec3ac22743b86
CRs-Fixed: 3450862
Buffer was freed before processing the TLVs
(while flushing) leading to use after free access.
CRs-Fixed: 3425044
Change-Id: Ida3bcf9add95041c43b2b1e8e3450853bd0ed88c
In case of a split-phy 6 GHz radio, there are 6 GHz opclasses and cfis
that do not intersect with the chip range for a given pdev.
The current algorithm appends such opclasses with "num_cfis as 0" to
the AFC request buffer and the buffer with empty cfis are
sent to the AFC server.
This change ensures that the chip unsupported opclasses/cfis are not sent
to the AFC server.
Also, if the reg rule frequency range is not supported by the chip range,
reg_intersect_ranges() is expected to set the out_range as
{low_freq = 0,high_freq = 0}. However, it only sets the low_freq to 0.
Since high_freq is a non-zero value, the chip un-supported range is
considered as a valid range with frequency_low as 0.
This causes the following error from the AFC server:
"error": "The frequency range indicated in the Available Spectrum
Inquiry Request is at least partially outside of the frequency band
under the management of the AFC System (e.g. 5.925-6.425 GHz and
6.525-6.875 GHz bands in US).
To fix this issue, assign high_freq also to 0 if the
reg rule frequency range is not supported by the chip range.
CRs-Fixed: 3442719
Change-Id: I5504376ac31203045b32e23f54a9ab6a41e63a3f
IPA_OFFLOAD will be enabled by default for MSM.
This is a WAR to disable IPA offload during compile
time, based on the IPA_WDI_OPT_DPATH feature flag from IPA.
If the flag is not defined in the IPA test
module file, IPA offload path will be disabled.
This is a WAR, and will be fixed once a Kernel config is
available to enable or disable the optional wifi datapath
feature.
Change-Id: I7aad275f4d86a2ffc239f1fe343de31ec2988fad
CRs-Fixed: 3431972
IPA_OFFLOAD path will be enabled by default for MSM,
inorder to support optional wifi datapath feature.
This change is a WAR to disable IPA offload during
compile time, if the feature is not enabled.
This is done using the IPA_WDI_OPT_DPATH feature flag
from IPA. If the flag is not defined in the IPA test
module file, IPA offload path and optional wifi dp
feature will be disabled.
This is a WAR, and will be fixed once a Kernel config is
available from IPA to enable or disable the optional
wifi datapath feature.
Change-Id: Ic1b961656f52fa009ab4c3b3d8d3cac305c2c7c4
CRs-Fixed: 3431972