Currently sched-delay is not taken into account while calculating TX/RX
offload packets in bus bandwidth work handler. This may result in an
incorrect calculation and determination of TX/RX bandwidth levels and
other params which are derived from it.
Add support to consider actual scheduling delay between two bandwidth
intervals to detemine TX/RX offloaded/not-offloaded packets.
Change-Id: Icfb961cbbc1a049df0133394883755418b631056
CRs-Fixed: 3079953
REO interrupt is fired after sending WOW_ENABLE command
to FW. Multicast packets are processed and dp_tx_send is
invoked as part of intrabss forwarding. This results in
a FW exception.
Fix is to disable intrabss forwarding on SAP/P2P GO
on system suspend and enable it back on system resume.
Change-Id: If9f20bf59b776016dac3c1a27200deafa80266b5
CRs-Fixed: 3084288
Currently, in TWT setup command, if peer does not support TWT
capabilities then firmware returns status = 4.
Add condition to check the peer capabilities before sends TWT
setup request to firmware.
Change-Id: Icd1cbeff2db2bdec4e456013e98270a526ff22ce
CRs-Fixed: 3082071
For ML STA + Legacy STA case, FW asserts due to legacy STA shares
the same MLD address with MLO STA.
Change-Id: Ibd8045007bd7c120dee7b1e8f7faccc0a80cea0b
CRs-Fixed: 3063367
Revert the DBS ultra high TPUT Max voting. Max voting is not required.
Instead vote for ultra high bw vote.
Change-Id: Ic8ee47a0c8422be5590d2a009b4700b4a3a8124a
CRs-Fixed: 3078684
Currently, NDP peer multicast address is derived from peer MAC address
and cached in the host. While removing the NDP peer, peer MAC address
is used to search the cached multicast address list. Because of this,
peer multicast address list is not getting freed.
To resolve this, derive peer multicast address from the peer MAC address
while clearing the cached multicast address list.
Since MAX NDP sessions are 8, allocate memory for peer multicast address
list during the NAN vdev private object allocation. This avoids the
special handling for peer multicast list in multiple error scenarios.
Change-Id: Ifbf890a4b9c8be54d84a5b57ed8f6c237ecd51ca
CRs-Fixed: 3085069
The driver sends BMISS disconnection logging event when firmware
sends the bmiss event to host. But if the AP responds after
sending the unicast probe request then we stay connected to
same AP. This could cause the BMISS disconnection log sent
earlier to be a false alarm.
Send the BMISS disconnection logging event only when host driver
initiates teardown with the AP.
Change-Id: I021b335071f803829bdc55249f1071ceaa92edc9
CRs-Fixed: 3083568
Currently memory allocated for structure roam_pmkid_req_event
is freed in two places causing usage after free.
Fix is to free memory only once in
target_if_pmkid_request_event_handler api.
Change-Id: Idc70e8437f89cb1cf4f6d35f924085409994714a
CRs-Fixed: 3064667
Enable TX AST index search for HMT STA which is more efficient
compared with older source address search.
Change-Id: Ie5ebf4199ada959ebd33351929cf642c21657c51
CRs-Fixed: 3084026
Some IoT AP set maximum transmit power as 4 in transmit power envelope
element IE, which violated wifi 802.11 spec: 9.4.2.161 Table 9-276,
DUT STA didn't handle the exception case, accessed index 7 of array
with length 4: get_next_higher_bw[4], out of bound happened.
To fix it, add code to handle the exception case that maximum transmit
power of ref AP is larger than 3.
Change-Id: Ib12062d03920b04f03de16682361e8d9e7126031
CRs-Fixed: 3083034
To support QCN7605 DBS chip, which has 3 RF chains, chain0 is for 2G,
chain1 is for 2G/5G, and chain2 for 5G. So it need 3 bits to
indicate RF chainmask for DBS mode. This is to extend the value
range for 2g/5g chainmask setting for QCN7605 DBS mode.
Change-Id: I43ee3393c121b6e9609223af1db0059158d44078
CRs-Fixed: 2933722
Currently global pause mask is used for controlling individual
AC based sub queues and even all the network queues, due to this
mask is set/reset improperly which is not giving actual global
queue status representation. To avoid this introduced new sub queue
mask which is used while controlling individual network sub queues
and global mask is over for overall network queues.
Change-Id: I6632a1831cbea84c23441dbb67473c94b487109a
CRs-Fixed: 3081060
Currently in packet capture component the tx and rx ops are
stored in vdev but the ops should be only per psoc and
the ops will be registered only once per psoc. So change
tx and rx ops from vdev specific to psoc level.
Change-Id: I09e9dd5d83e7b10c86e80ebf2584469071060813
CRs-Fixed: 3049207
In HW mode transition event for mac_freq_mapping,
fw sends pdev id for identifying mac in following
format:
WMI_PDEV_ID_1ST 1 /* first pdev (pdev 0) */
WMI_PDEV_ID_2ND 2 /* second pdev (pdev 1) */
WMI_PDEV_ID_3RD 3 /* third pdev (pdev 2) */
Covert these PDEV_ID to the ones used in policy manager
used for filling current mac frequencies
Change-Id: I745de0278b1ddf627062163364b684745df5e4e7
CRs-Fixed: 3083289
Currently there is no support for argument 1 for SET_FCC_CHANNEL
command, with this change add support for argument 1 for
SET_FCC_CHANNEL command.
Change-Id: I2ceab2459b1798042412e3d3bbadbbf24004451f
CRs-Fixed: 3079545
Currently if INI dp_rx_fst_in_cmem is not enabled and FW not report
the capability of FSE in CMEM, FISA dp_rx_sw_ft_lock will not be
initialized which lead to panic.
initialize FISA dp_rx_sw_ft_lock by default if FISA is supported
Change-Id: I515b151b9a02665f51c30263ef6c6c9929edb392
CRs-Fixed: 3082642
For allowlist roaming, EAPOL isn't offloaded for PMK changed, then
RSO is stopped and allowlist ssid is cleared in F/W, but when RSO
is restarted after EAPOL finished, allowlist ssid isn't reset to F/W,
so allowlist roaming will fail after that.
To fix it, when roam start or update cmd is sent to F/W: update
allowlist ssid and denylist to F/W.
Change-Id: Ia8ddc251767dfc04d9a6cfd1e7c1074ab0e88e96
CRs-Fixed: 3081226
As per the current implementation, the ADDBA_REQ bitmap setting
overwrites DROP_SPEC_MGMT_ACTION_FRAME_BITMAP. Hence, to avoid it,
remove the ADDBA_REQ bitmap setting.
Change-Id: I1135a64de99248b67e477d3276b217c128c1a721
CRs-Fixed: 3081291
Flow A packet is waiting napi_id 1 lock as it has passed metadata
and reo_id check in dp_add_nbuf_to_fisa_flow(), another flow B packet
FSE hash pointed to same FSE flow as flow A, but flow B packet is
coming from napi_id 2, current FISA LRU logic will allow flow B packet
hold napi_id 1 lock and update FSE flow to napi_id 2, then release
napi_id 1 lock. flow A and B packet will be added to same fisa flow,
skb double free or other issue will hit.
Move napi_id lock acquring before sanity check in
dp_add_nbuf_to_fisa_flow(), then different napi flow packet will
not be added to same FISA flow.
Change-Id: I2679972a0923d8cfba4f9d22182c1cc193b3f34f
CRs-Fixed: 3080877
Add new parameter 128/129 for miracast command to enable/disable
p2p connection time optimization. The command needs to be issued
before p2p negotiation/invitation/connecting, the driver will do some
necessary configuration to reduce the p2p connecting time. At present,
disabling IMPS is the only configuration to achieve it.
Change-Id: I518b0027290d0254313031fe23315b718565e04b
CRs-Fixed: 3031461
Currently host doesn't support below configuration for FW:
gEnable2x2=0 (disable 2x2 mode)
dual_mac_feature=0(ENABLE_DBS_CXN_AND_SCAN)
tx_chain_mask_2g=0x1
rx_chain_mask_2g=0x1
tx_chain_mask_5g=4
rx_chain_mask_5g=4
disable_rx_mrc_2g=1
disable_tx_mrc_2g=1
disable_tx_mrc_5g=1
disable_rx_mrc_5g=1
gSetTxChainmask1x1=0
gSetRxChainmask1x1=0
Now there is a new requirement for QCA6595:
1. RF chain0: WLAN 2.4G with 1x1 antenna
2. EF chain1: WLAN 5G with 1x1 antenna
3. RF chain1: BT 2.4G with 1x1 antenna
To support this new requirement, need to exclude the case in
condition check when gEnable2x2=0 and dual_mac_feature=0.
Change-Id: Ic08a4b7f5eb4beece867d7d7b4ae1796e67eae85
CRs-Fixed: 3074098
Update thermal mitigation policy table to fix the issue related to
thermal subcmd invoked from userspace
Change-Id: I5beb82d68253651736657d3131f4571e877d6042
CRs-Fixed: 3070375
Currently, driver is depending on NS frame to be received to configure
peer multicast address for an NDP session. If there is a delay in NS
frame reception, peer multicast address list will be configured to the
FW without actual peer multicast address. Because of this, FW will drop
the NS frame from NDP peer.
To address this, derive peer multicast address from peer MAC address
and include it in multicast address list that is configured to the FW.
Change-Id: I92a575352d592b4001dc4f061e31eb7f592f8445
CRs-Fixed: 3066990