For Multi chip configuration, assign appropriate value for
Return Buffer Manager(RBM) idle link descriptors based on chip_id.
CRs-Fixed: 3314584
Change-Id: I1a2f9a09b04960aff01b4ec625110e0619a9850b
The following change introduced a misspelling of "conversion", so fix
it.
- Change-Id I9f8fa776c65cbad84fac5e8c2f65b3fce1386e20
qcacmn: update RSSI specific parameters in mon pdev
Change-Id: I019f929c09ad4e1de21ed9c7ac485a14f82d786c
CRs-Fixed: 3319342
Currently the monitor mode filter settings are set
for both the PMAC. Hence it is possible that the
non-monitor PMAC (the PMAC on which monitor vdev
is not running), can receive packets and forward them
to the monitor destination ring.
The above scenario will lead to a ppdu_id mismatch
when reaping the monitor status ring and comparing
the ppdu_id in status ring with the one in monitor
destination ring, since monitor status ring will
have ppdu_id from the PMAC on which monitor vdev is
running, whereas monitor destination ring will have
packets from both the PMAC.
In order to mitigate the above issue, detect the
packets in the monitor destination ring, which are
not from the PMAC where monitor vdev is running, and
drop them.
Change-Id: I32392ceeadffd9cb7a4dd76336004a9dcbb99404
CRs-Fixed: 3318036
Currently, structure tbtt_information_header and
rnr_mld_info don't have attribute __packed. When
fetching the value of bss_param_change_cnt, it
tries to align with byte and causes wrong value.
And these are OTA structures which should be moved
to file wlan_cmn_ieee80211.h.
Change-Id: I326e62e6f513c2b43fe08c278aa4b5a245d2d35c
CRs-Fixed: 3313710
In ethernet TX fast recycle bit is set to buffer after
invalidate.
In Rx replenish API do not invalidate buffer if fast
recycle bit is set as it is already done
Change-Id: Ic74a96033a659baac381c921aff75296d155f169
CRs-Fixed: 3321142
This change will prevent flow pool unmap and delete
if pool status is inactive.
Change-Id: I071b84c6d99360af8aba97297efacb0a8682f343
CRs-Fixed: 3306110
When SAE station is trying to associate to MLO AP.
If this station was connected to other link vap of same MLD,
then if same station is trying to connecting with link VAP,
ML peer entry is found with MLD MAC address.
For SAE stations, initial understanding to handle disconnect
from hostapd, but as hostapd initiates SA query for the connected
link peers only, in this case, hostapd can't initiate SA query
as it was connected to other link VAP.
The fix is to allow initiating deauth of the current ML peer entry.
Change-Id: Iddb53f0156b460a2ede2197a74acf254c83b7b37
CRs-Fixed: 3313785
The following change introduced a misspelling of "disable", so fix it.
- Change-Id Ifeb6935e2309be1f974c4da30b33a5caca308569
qcacmn: Add dp ini param for sawf stats
Change-Id: I46249a0a32eabf3198d2634a4775c05089647b1b
CRs-Fixed: 3319332
The following change introduced new misspellings of "address", so fix
them.
- Change-Id Idc9eec559b71ebb2dc39ea1d648a384ea0eb9559
qcacmn: Fetch the reo qdesc from the peer
Change-Id: I29c71972d46a06c24fef2ed90d2a4226cc2ac654
CRs-Fixed: 3319356
Reference taken on peer with wrong MODULE_ID, hence
while unref on peer is failing.
Change-Id: Ifd4360ad8db877cfbf67fb6d80fdfb41aee4ff56
CRs-Fixed: 3317145
Currently, when tx completions are pending for more than 60
seconds, assert is generated in defconfig builds.
Force free leaking tx buffers in defconfig builds so system
can go to suspend in defconfig builds.
Change-Id: Ie66506d58e85176320c7aa35d49059f808be0054
CRs-Fixed: 3318409
VDEV param id is logged in hex without 0x(hex) prefix
which creates confusion. And hence log WMI vdev param id
with 0x(hex) prefix for easy correlation.
Change-Id: Ib8a868fa43a911817c8e5540a07562dde08e0818
CRs-Fixed: 3320943
Fix incompatible function pointer assignment.
Define a wrapper around mc timer callbacks to
make them compatible with standard scheduler
message callback function signatures.
Change-Id: I07829680d1758ccbd53e8b1fe10b0e30e100a2c6
CRs-Fixed: 3305719
The original implementation of suppressed logging used identifiers
with a misspelling of "suppressed."
Change [1] renamed the identifiers, but for 2 public functions it
defined macros for the original names to keep from breaking existing
clients.
Change [2] updated the only existing client to use the new names.
Now that the old names are no longer used, remove the macros.
[1] Change-Id I0107b157374046ab8f3467801563c02f0f2651fa
qcacmn: qdf: Rename misspelled "suppressed" variables/functions
[2] Change-Id I4fcd506b39cedd6f094f93ee900cf9ce8be759c1
qcacmn: Use renamed QDF suppressed logging APIs
Change-Id: I78f3b245b355ba937b15fdfa5b4834fb58a62a62
CRs-Fixed: 3313687
For WMI messages RTPM get is done during HTC message send and the
corresponding put is done in Tx failure or in Tx completion handler
for Tx success case. In the case where Tx completion is not received
for WMI messages RTPM put is not done as part of the cleanup which
results in RTPM Get and PUT call out of sync issues.
To fix the issue as part of HTC cleanup do RTPM put for WMI messages
for which tx completion is not received.
Change-Id: If92f4bd8a6c104d7ccef1e33b31aa765ea6100bd
CRs-Fixed: 3315404
The following change introduced misspellings of "whether", so fix
them.
- Change-Id I50b747710eb3c49eab60c81bbc61e75e2f8650ed
qcacmn: Handling of IGMP packets in MLO Multipass
Change-Id: I09891388e45a210457d46fb3528efdd5a32905dd
CRs-Fixed: 3319323
AFC request or response does not consider punctured channels/BW as an
input. Hence the SP EIRP/PSD power for punctured channels cannot be
derived directly from AFC response data.
Add punc_pattern as an input to the APIs reg_get_best_pwr_mode() and
reg_get_eirp_pwr() (and its dispatchers).
Compute SP EIRP for the punctured channels in
reg_get_sp_eirp_for_punc_chans() using the following formula:
MIN_PSD + 10log10 (Non-punctured BW)
Fetch min_psd from the AFC server response data for the input freq
and BW combination.
Use the total BW and puncture pattern to fetch the
non-punctured BW.
CRs-Fixed: 3306932
Change-Id: Id5c4c404a3155474a01a0dacb3bcf289e92e65ac
Add input_punc_bitmap to struct ch_params.
Add input puncture bitmap to regualtory channel search APIs.
The non-SP channels will be punctured by ACS module so that AP
can come up in highest possible BW in Standard Power mode
with the given primary frequency. These punctured channels are not
validated (whether supported in the given power mode of operation) by
the regulatory.
CRs-Fixed: 3278013
Change-Id: I56b0495be902fd92fc6da26e1007d60f930ba687
Add a dispatcher API wlan_reg_get_bonded_chan_entry to fetch
the bonded channel entry given freq, bandwidth and center of 320 MHz
channel.
CRs-Fixed: 3278013
Change-Id: I9449b3b4d72266fd7f2b6a0ea78b661fbfa5c6a9
Several QDF suppressed logging APIs were originally named with a
misspelling of "suppressed." New correctly-spelled functions are
available, so call those instead.
Change-Id: I4fcd506b39cedd6f094f93ee900cf9ce8be759c1
CRs-Fixed: 3313686
Multiple QDF rate limit identifiers use a misspelling of the word
"suppressed" so fix those misspellings. For two public functions
create macros with the old names to avoid breaking existing clients.
Change-Id: I0107b157374046ab8f3467801563c02f0f2651fa
CRs-Fixed: 3313685
The assoc-resp buffer of the link-peer can be null, while sending the
assoc-resp frame. This can happen if the ML peers are already setup but
the next association fails. In this case we send the assoc-resp frame
before link-peer's assoc-resp buffer is initialized.
Change-Id: I28d48068b4554b7663b118cc6023df396e45cae9
CRs-Fixed: 3316851
Spoof DFS check happens when AP is brought up in a DFS channel in
FCC domain. These spoof pulses are sent by FW in several bursts
via wmi_phyerr_event_id. Once host receives the first set of pulses
and if radar is detected by the host, host sends the radar found params
to FW. However, host does not disable the radar detection. Hence, host
continues to receive the next burst of spoof pulses and detects radar
again. This second set of radar found params when sent to FW is treated
as "real radar" pulses and FW sends a DFS status code of 2. Hence
host does a channel change to a new channel.
Hence the spill-over spoof pulses are treated as "real radar" and causes
frequent channel change on the DUT.
Once the first set of spoof pulses are detected as radar and radar found
params are sent to FW, disable DFS radar detection until the DFS status
check is received from FW. Once FW responds with a DFS status check,
re-enable the radar detection.
Change-Id: I57018776a449203c6467bb384120d4319bc04805
CRs-Fixed: 3305592
Add target_if support to set EIRP as the preferred power in the
WMI_VDEV_SET_TPC_CMDID to the target.
Change-Id: I77850ce93a3561c9765b8d70ae84e940b2bbf4d4
CRs-Fixed: 3307372
Add WMI support for WMI_SERVICE_EIRP_PREFERRED_SUPPORT service bit,
which indicates that the target prefers EIRP in the
WMI_VDEV_SET_TPC_POWER_CMD_ID.
Change-Id: I1433bd698e124336082e12f509f271c9dd7df40a
CRs-Fixed: 3307372
Add regulatory support for giving preference to fill EIRP power
in the WMI_VDEV_SET_TPC_CMD_ID.
Change-Id: Iab28306b15d74109519629cb0b815cd110254d56
CRs-Fixed: 3307372
Add further clarification for util_find_mlie() that the buffer passed
should contain only 802.11 Information Elements, and should not
contain other information like 802.11 header, 802.11 fields that are
not elements, etc.
Change-Id: Id577cdc08189cd0f60053b1345ee15b3bb4f0eca
CRs-Fixed: 3316369
Currently there is no api to parse a string to int32 array.
Write an api to parse a string to int32 array.
Change-Id: I2982a1bfeff94288a1bd76d8f4d87ea2eac934b2
CRs-Fixed: 3304318
On REO error ring only fragments should be
received and for MLO case fragments are not
supported we should not see any entries from
partner soc
Hence adding the assert to catch this case
Change-Id: I908b2dec88ec7f23fcd963d0c71515dee8865b71
CRs-Fixed: 3317715
Currently, this MLO flag is being set/clear without regard for
concurrency. We need to lock the vdev when updating these values to
prevent race condition.
Change-Id: Ied90d62f10f6f12a35eeac3060dd0fae7d0c6cfd
CRs-Fixed: 3305558
Capture return code of pld_force_wake_request_sync and
print it in case of failure.
Change-Id: Idd5058f4e884f28436a3928caf7350ac9446fabd
CRs-Fixed: 3317698
This fixes a scheduler_msg CFI failure for function
target_if_vdev_mgr_del_rsp_post_cb().
Change-Id: I296fdfca228799de2d84c6c41eb7cd656d8f3c52
CRs-Fixed: 3316600
When the beacon frame is received by the DUT, util_scan_get_phymode_5g
gets invoked. In a highly noisy environment, malformed/incorrect
beacon frames is received and the content of vhtop->vht_op_chwidth
becomes invalid. Hence bad channel print floods the console since
it is under scm_err debug level (the default debug level of SCAN module
is ERROR).
Reduce the debug level of the print to scm_debug since it hits for
every in-correct beacon.
Change-Id: I92d99f8d69ac7f892f155f2043c60a4c0c2efa12
CRs-Fixed: 3313827
mlo_clear_connected_links_bmap api is also used for roaming,
so changing it as public api.
Change-Id: I31225cb04971dbf470338022ca4dc09a9967b5c4
CRs-Fixed: 3317236
In the api qdf_eapol_pkt_type_to_subtype(), the EAPOL start
packet is not logged to userspace.
Modify the api qdf_eapol_pkt_type_to_subtype() to support
EAPOL Start logging
Change-Id: Ic985a3f6713d298ae04559a897312fdbadb57275
CRs-Fixed: 3311616
As part of upgrading legacy code with 6 GHz power APIs,
replace reg_get_channel_state_for_freq api with new api
reg_get_channel_state_for_pwrmode
Change-Id: I3e577148f0ee78f6ec8f96feef42be9ac920467d
CRs-Fixed: 3144822
In MLO mode, there are 2 link peers and 1 MLD peer. TX/RX stats
is kept in txrx_peer, which only exists in MLD peer. This change
aims at fixing HDD failing to get rx stats info when in MLO mode.
Change-Id: I046003018c72ca3c9129e3b9e5abca4a46a024ca
CRs-Fixed: 3298344
Add ini configuration to disable invalid decap type handling
during rx mon tlv processing. This is a temporary change for
debugging purpose and will be removed once HW issue is resolved.
Change-Id: I75eb53170833224ddd144baf1b1d8034f988dd3c
CRs-Fixed: 3308998
Add control frame stats accounting support.
Accumulate both per peer BAR and NDPA counts in Tx and Rx per PPDU stats
path. Accumulate per peer RTS success and failure count only in per PPDU
Tx stats path.
Change-Id: I78fb3546cd831559e208a7330feb2eb67b9a28de
CRs-Fixed: 3313435
Due to the CCE rule in QCN9224 IGMP packets will be routed
to err ring. When multipass is enabled, perform multipass processing
before handing over the packet to stack.
Change-Id: I50b747710eb3c49eab60c81bbc61e75e2f8650ed
CRs-Fixed: 3275888
The RX REO functionality has numerous misspellings of "forwarded",
including multiple identifiers. Fix these to use the correct spelling.
Change-Id: Idc4e66e7356b978742fea30ae7ef0c9498c4f938
CRs-Fixed: 3313839