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
Kbuild change to
- Disable timer irq for CE in WCN7850
- Disable status ring timer WAR in WCN7850
Change-Id: I59a247bf14450c5e1ec194c505f3a00eb5f3619f
CRs-Fixed: 3075871
Add support to send beacon received from firmware on STA interface
to mon interface based on management rx filters set by user in
vendor command.
Change-Id: I186ab0d697da831894854d7680265e82dd3adcef
CRs-Fixed: 3073478
Pass psoc ptr as argument in addition to existing args in
wlan_reg_get_6g_power_type_for_ctry API to support new APIs
like wlan_cm_get_check_6ghz_security that are invoked within.
Change-Id: I9615c5d2cb509a0c9f8e10073c0928ab38f179f8
CRs-Fixed: 3080203
Currently, Host is not caching the response status for the set HW mode
request. Without this status, it is difficult to debug HW mode mismatch
between host and FW when the logs are not available during the set HW
mode command.
To address this, cache the set HW mode response status.
Change-Id: I61b935d54648bc80901bfe7127227ffaa8d7cd7b
CRs-Fixed: 3076445
In packet capture component change enum pkt_capture_mode
from value to bit map.
Change-Id: Ic777b5091e85ed8c906d7e855b5cadb0fa3319d5
CRs-Fixed: 3048502
Add path of final version (E3.0 R38) of cleaned up HW header files
with comments removed and appropriate copyright added.
Change-Id: I5b65141d68672da6368f71132ad583ed1fc3db53
CRs-Fixed: 3076670
In security association scenario, if userspace gets notified about the
link peer first, it will cancel the connection because it doesn't
contain RSN IEs. Skip notifying userspace about this STA because it is
not needed.
Change-Id: I726583ade6d463bf7eed79d83afc0bcd1ae8192f
CRs-fixed: 3075695
For MLO connection, host will use MLD mac address as eapol
dest_mac address check condition, but currently the macro
used is not the right one, so the check always return failure
and RX eapol frame is dropped in SAP HDD.
Use right macro WLAN_FEATURE_11BE_MLO to enable this check
Change-Id: I5e9e265583d9c39899c6604f1a16bde2f08484a9
CRs-Fixed: 3074632
Spin_lock_bh is introduced in ipa wlan rx path by security fix
I0c0bc6e60efa193126ba1e3eca36c5e02f7f76a3,
wlan_ipa_w2i_cb->cdp_peer_state_get->dp_get_peer_state->
dp_peer_find_hash_find->qdf_spin_unlock_bh(&soc->peer_hash_lock),
which make rx pkt aggregation failed, for each rx pkt, once
put into backlog queue, net_rx soft irq is scheduled to handle it.
which make rx throughput failed to meet KPI.
TO avoid spin_lock_bh don't call cdp_peer_state_get for each rx pkt,
only call 1 time, and save peer auth state in IPA context, for following
pkts, just get peer auth state from IPA context without spin_lock_bh.
Change-Id: I36196bab4626194bda254219c4c44dc4f029cff0
CRs-Fixed: 3076978
Use CONFIG_SLUB_DEBUG_On to enable certain flags. This ensures that
these flags are not enabled for PERF builds.
Change-Id: I8c8e032ca1a0344f12fbad4dca543e333d601916
CRs-Fixed: 3045963
Set system PM_QOS with low latency only for "very-high" throughput levels
in TX case. Currently, its being done for "high" throughput levels.
In less than "very-high" throughput cases, this allows CPU cores to
enter low power modes. This is done only for non-offloaded packets e.g.
UDP.
Change-Id: Idf1dd2968b7dd8b4ef9f4061ee862de03d962c6e
CRs-Fixed: 3045963
Whenever a eapol packet is received over the control port driver
allocated using the qdf_nbuf_alloc and passes it over to the
hard_start_xmit which again tries to add the skb to the qdf nbuf
tracking list these operations result in the false positive warning
message of double allocation from the nbuf debug framework.
So, use the skb_alloc api instead of qdf_nbuf_alloc, so the skb
can be tracked in the hard_start_xmit and avoid the warning from
the debug framework
Change-Id: I7cdb54fa6ef49f313cfb5ff48221aaf742e18a1f
CRs-Fixed: 3079746