Currently the code to support Multipass on SAP is
present along with the code to support WDS. Hence with
the code in its current state, we will not be able to
enable Multipass support without enabling WDS.
Move the multipass support code out of the WDS support
code, to be able to enable Multipass for chipsets which
do not use WDS.
Change-Id: Iaafa8dc4f16314d9e3e160fe01251c3684adbf67
CRs-Fixed: 3468548
Allow the ppe ds tx descriptor pool to have a maximum
size of 64k tx descriptors.
Change-Id: I4c09b6337efaabedea93f36a3477f5bdcc32f288
CRs-Fixed: 3468613
Add device Id and target type checks for qcn6432 target
compilation
Add CFR and spectral support for QCN6432
Change-Id: Ic908fa768aa1be7cfc40be7fcc7f9ca6aa85aaa6
CRs-Fixed: 3351747
Add a new vendor command to trigger computation of connected channel
statistics such as channel utilization in STA mode.
Change-Id: I868a85bbbee9f9b050636789c3d7217b71164852
CRs-Fixed: 3460890
The kernel-doc script has identified multiple documentation issues in
the utils/host_diag_log folder, so fix them.
Change-Id: Iaaa241e7f2a18dd7952d491b31487c0b048cca52
CRs-Fixed: 3461770
MC/BC frames are routed to FW ring based on routing config for MC/BC
data as SRC: FW2RXDMA and DST: RXDMA2DFW.
Data offload features in FW will take care of routing the MC/BC frames
to FW in both active and low power modes.
Make this change only for kiwi/peach using hal ops.
Change-Id: Id8665261a512c9db3e808f95082ff82b47f01ade
CRs-Fixed: 3464036
When we receive a negative EIRP value from AFC APP with UINT, we treat it
as a positive value. See the following reasons why EIRP power value
was changed when we received it as a UINT.
1. In the reg_find_eirp_in_afc_eirp_obj function, the afc 'eirp_power'
(16-bit) value is in units of 0.01, and it is an unsigned integer. For
example, if the negative value is "-1400" then it becomes "64136". With
this value, when we try to get the original EIRP value using division
(eirp_obj->eirp_power / EIRP_PWR_SCALE(100)), it returns "641", but the
expected EIRP value is -14.
2. In the reg_get_sp_eirp function, both the variables 'afc_eirp_pwr'
(8-bit) and 'reg_sp_eirp_pwr'(16-bit) are declared as unsigned integers.
For example, when "-14," is assigned to "afc_eirp_pwr", it becomes "242".
And assuming 'reg_sp_eirp_pwr' is "36", the minimum of the two variables,
using QDF_MIN(afc_eirp_pwr, reg_sp_eirp_pwr), becomes "36", but the
expected minimum is "-14 or 242".
Process the positive or negative EIRP values that are received from AFC
application. Receive it as an int instead of an unint and typecast it to
int when we check for minimum value from afc power and standard power.
Change-Id: I255225e1f68ab897d36f3d4fbd5e5815a862460b
CRs-Fixed: 3398501
NSS value derived from HW, need plus 1 to match the sniffer capture.
Added fix to increment NSS after parsing the TLV.
Change-Id: I1e0ef3949cefa1453290e400fa4a66000a3b5dea
CRs-Fixed: 3444508
With the convergence of SCS and SAWF, do not override the TID
for legacy SCS case. Retain the value obtained using DSCP in
this case.
CRs-Fixed: 3460620
Change-Id: I19502d09f5f37376bac08eb05fcf770c71331e1c
Add a new wrapper API to send peer-level negotiated
tid-to-link mapping to FW as the existing API to send
the mapping received from the beacon/probe response
uses ML dev context whereas the new API uses ML peer
context.
Change-Id: Ifada5600e9524585c69847f332ed0280fd316813
CRs-Fixed: 3423127
Add CDP api support for umac reset init API, these apis are expected
to be called whenever shmem is deinitialized.
Change-Id: I307c586454580ab8f83b0d515defa93d4e8ff656
CRs-Fixed: 3458268
If link vdev roam sync failed and new dp mlo peer wasn't created,
assoc vdev roam sync was still handled, dp peer update failed
and asserted for mlo peer not found.
To fix it, if link vdev roam sync failed, return to trigger HO_FAIL,
don't handle assoc vdev roam sync.
Change-Id: I47aa70723cd741839cdb8fb21d446730a8ed80e5
CRs-Fixed: 3468553
Export wlan_reg_get_freq_range() and wlan_reg_get_freq_range() APIs
to be invoked by other modules.
Change-Id: I2de7acf395011bdcc20100fc5980ab69f2b9fbeb
CRs-Fixed: 3459316
reg_set_ap_pwr_type() API is invoked per pdev and the default ap power type
is set for all bands of the pdev (2.4 GHz / 5 GHz/ 6 GHz). Hence, the
user space command g_ap_power_type retrieves SP Power mode for 2.4 GHz
and 5 GHz pdev in outdoor deployment mode.
Since power type is valid only for a 6 GHz pdev, check if the chip
supports 6 GHz channel range and set the power type.
CRs-Fixed: 3459316
Change-Id: Ib5038d5d019ab9ffaa6a607916e5187ecdbd4e2b
Currently when ucfg_ipa_uc_ol_init() fails,
the wlan_ipa_cleanup() is not called. As a result
g_instances_added is not decremented. This
change performs the cleanup if ucfg_ipa_uc_ol_init()
fails.
Change-Id: I22a83f08c51e10246fa99dff2a06c9ec486f605e
CRs-Fixed: 3456523
Use monitor pkt tlvs size and monitor buffer size
instead of data pkt tlv size and data pkt buffer size.
Change-Id: I3099f6526aa11b353c8a5178de450d48f141a461
CRs-Fixed: 3406962
Add enum to parse and store AFC response format type. This enum is
used to map the response format negotiated with FW during WMI init.
Change-Id: I5c0b61aeddfce1d1b64f9225f64546f80d0e9e3e
CRs-Fixed: 3420549
In SDX_75, doorbell register is only writable not readable
so fix printing of stats for TX ring.
Change-Id: I058c4241b9c91902f32ed76f099f7501e667c78b
CRs-Fixed: 3436677
Currently many pev related API's are not present in
wlan_regulatory_pdev_obj_created_notification. As a result many info
is not saved to pdev.
To address this issue invoke reg_propagate_mas_chan_list_to_pdev
from wlan_regulatory_pdev_obj_created_notification.
Change-Id: I47b7c09006c93828db32710d1fa882eb1f9b8ba5
CRs-Fixed: 3461593
In the change-id Ied56965c2e8d700a2fc14a5a2b79beed95ac7818,
the call of reg_propagate_mas_chan_list_to_pdev in pdev_obj_creation,
leads to a fatal assert.
Within reg_propagate_mas_chan_list_to_pdev,
ol_ath_fill_umac_legacy_chanlist is called, and internally
within ol_ath_fill_umac_legacy_chanlist, the cookie for the event
ic->ic_wait_for_init_cc_response is set, before the
ic->ic_wait_for_init_cc_response is created in the function
wlan_pdev_update_feature_ptr. This leads to a crash.
To fix this issue, separate fill_umac_legacy_chanlist from the function
reg_propagate_mas_chan_list_to_pdev and call fill_umac_legacy_chanlist
only when WMI_REG_CHAN_LIST_CC_EVENTID or
WMI_REG_CHAN_LIST_CC_EXT_EVENTID is received.
Change-Id: I5fcf85eed32d3ab2cd4fd88ad117fcf22c5875b2
CRs-Fixed: 3427982
Update roam trigger sub-reason for common roam
and wlan diag event need update to user space.
Change-Id: I66733736d9148e3748c653d4b43a1aa6d2f438cf
CRs-Fixed: 3459385
Currently host isn't validating the reg rules received from
fw. Host saves these reg rules locally and updates the same
info to kernel.
To address this issue add logic to validate reg rules in host.
Change-Id: I7369126e83ab210720cb5b2db2e11d3aa7491b4a
CRs-Fixed: 3376632
Below signature is seen in driver logs.
Target is suspended (via send_process_dhcp_ind_cmd_tlv:244)
cds_trigger_recovery_handler: critical host timeout trigger
fw recovery for reason code 34
Suspend/Resume test is run with SAP started and a ref-client
is associated with the SAP. One DHCP-Req packet is received
from ref-client before driver completes the resume process.
With SAP_DHCP_FW_IND feature enabled, driver will send one
WMI cmd to target for such DHCP packets received.
With IPA_OFFLOAD enabled, such DHCP packets are received from
the RX exception callback from IPA driver. Hence add support
to queue these DHCP packets onto pm_queue_head skb queue when
WLAN IPA component is still in suspended state. When IPA component
is resumed from suspend state, pm_queue_head skb queue will be
drained to pass up queued RX exception packets to stack.
For QCA_IPA_LL_TX_FLOW_CONTROL enabled platforms, such as WIN
chipsets, suspend/resume is not supported. Hence wrap fixes
only for !QCA_IPA_LL_TX_FLOW_CONTROL.
Change-Id: I823005d9b58d1d62eec2c044621e1c1423aa3537
CRs-Fixed: 3457254
Add a new MSD duration subfield that holds duration value
in the units of 32us. Deprecate the old subfield msd_dur_us
that holds the duration value in microseconds.
Change-Id: Id4789c550778d901cb519e53e350cc9fc66611e7
CRs-Fixed: 3446377
Introduce new macro to support get TID to link map status command
and TID to link response event.
Change-Id: I2f8fc03c306eae7f11d77253ce0ec565c9df2d71
CRs-Fixed: 3431459
Currently, HTT Tx ring packet type flag is set as bitwise operation
which is incorrect and results in "Debug Assert Caught".
Set this CTRL and DATA packet type flag with a value of 1.
Change-Id: I62e89fe637441fcc680ea8d5fe8d157d8e7142ae
CRs-Fixed: 3415733
address of array 'tx_ppdu_info->hal_txmon.rx_user_status' will always
evaluate to 'true' [-Werror,-Wpointer-bool-conversion]
Change-Id: Ic148f34b82ce756eb07173b43f8f155a7b4a12d9
CRs-Fixed: 3415726
dp_peer ref_cnt is increased in dp_rx_mon_populate_cfr_ppdu_info(),
but it does not release it at last, this leads to dp_peer ref_cnt
leak which then dp_peer memory can't be freed and corresponding dp_vdev
leaked as well.
release the ref_cnt for dp_peer at the end of
dp_rx_mon_populate_cfr_ppdu_info().
Change-Id: I8ac301609deb3790ad9f3d6eda85d502cede9799
CRs-Fixed: 3461642
As part of TX Mon 2.0, WIN has IEEE80211 specific macros only in WIN side
header file, but now Tx Mon 2.0 is required to be supported on MCC side
and these macros are not available. Hence extend by adding the required
type/subtype macros in qdf common header file.
Change-Id: I76cf0a0c226664c34c9c8bd10e280a500b3c61a9
CRs-Fixed: 3415715
Add a new vendor command QCA_NL80211_VENDOR_SUBCMD_GET_MONITOR_MODE to
get the local packet capture status in the monitor mode. Add required
attributes to respond with status of the monitor mode. The monitor mode
can be started/configured by using the
QCA_NL80211_VENDOR_SUBCMD_SET_MONITOR_MODE subcommand.
Change-Id: I72edd46f85b545d7aecb3c704441e810db9ca711
CRs-Fixed: 3415711
1. Check Tx halt during umac reset and avoid halt if set already.
2. Perform SRNG disable only in case of umac reset
Change-Id: Id364a6460a64e83002b5c96e08031ad2a0bc8fd7
CRs-Fixed: 3459427
After receiving WMI service ready ext2 event and htt msdu index to
qtype map is derived, call CDP API to evaluate whether TX ILP can be
supported or not, update the TX ILP capability to DP, also send WMI
INIT CMD to FW to notify if host has enabled the TX ILP support or
not.
Change-Id: I472ebc5c7fa4b2996b790b58274fa3c048f6d7f9
CRs-Fixed: 3447519
Update meta data version of Waikiki as it supports AOA
phase delta extraction now.
CRs-Fixed: 3462217
Change-Id: I909802417125ecafaf4d14466c349f0ed9b45fd2
Implement the data structures for DFS puncturing and
un-puncturing state machines. For details of state
machine implementation refer to the change id
I5accbf2866a830447bd776b989c31909060c45ca.
CRs-Fixed: 3462277
Change-Id: I026228fb72302408f2992325099a31a60e986e3c
For MBSSID, aid mgr is allocated twice in
few corner cases of VAP create.
This change adds check, if aid mgr is allocated
by legacy code in vap create, aid mgr allocation
would be skipped
Change-Id: Ie44fab12badb5c9487ce3de333376e1885e727d0
CRs-Fixed: 3461883