build script changes to include DP component files
Changes were backed out because of association issue
introduced by MLO adapter to DP interface mapping issue
and to avoid any further regression.
Re-introduce changes after preforming complete sanity
to vet out any regression which might be introduced
by these changes.
Change-Id: I8c185e7496a8c7315b7bdd2c0bd98bb60a047f86
CRs-Fixed: 3198619
Cleanup HDD code which is refactored to
DP component.
Changes were backed out because of association issue
introduced by MLO adapter to DP interface mapping issue
and to avoid any further regression.
Re-introduce changes after preforming complete sanity
to vet out any regression which might be introduced
by these changes.
Change-Id: If5f1cf432b5c02848202debee7de696b2f20be9a
CRs-Fixed: 3198619
Add infra to support Dedicated Bluetooth Antenna Mode (DBAM)
feature. It is used to switch between dedicated antenna for
BT and shared antenna for WLAN and BT.
Change-Id: I20b08a2fd446da4e3c17813aa64e368750286114
CRs-Fixed: 3239896
To avoid unmeaningful rate fluctuation, when report
rx linkspeed to upper layer, exclude special frames:
arp/ssdp/dhcp/eapol/ipv6 NA/NS/DHCPV6 in low rate.
Change-Id: Ie8989dde506c654525099f9d154abe93162a0bac
CRs-Fixed: 3199636
Per feedback from some hypervisor system vendor, a virtual CPU can
have some stolen time imposed by the physical CPU scheduling, this
can result in some tasks' handling taking longer time than expected,
even when spin lock is held by code running on the vCPU.
With the stolen time existing, wlan driver's timeout for spinlock
holding must be different on hypervisor systems as compared to metal
platforms.
Change-Id: I607895f8afc9ad745a7a68939202a66560f31637
CRs-Fixed: 3242535
Refine PASN peer delete all path, to post message to
scheduler thread to process the peer delete all
message for PASN peers. Handle response timeout in WMA.
Resume vdev deletion after removing pasn peers
Add vendor command support to parse below vendor commands:
QCA_NL80211_VENDOR_SUBCMD_PASN
QCA_NL80211_VENDOR_SUBCMD_SECURE_RANGING_CONTEXT
Send install key command to firmware to install the
PTK upon receiving
QCA_NL80211_VENDOR_SUBCMD_SECURE_RANGING_CONTEXT
vendor command. If LTF keyseed is also received,
send the LTF keyseed to firmware.
Sent PASN auth status to firmware upon receiving
QCA_NL80211_VENDOR_SUBCMD_PASN command.
Change-Id: Idc9c69f7288b0774cc6d9bdcfed13ba3684bbc72
CRs-Fixed: 3231205
Enable monitor status buffer tracking history.
Also enable the allocation of memory for the monitor
status buffer tracking history via prealloc.
Change-Id: Iafec8e68c85b3f2d9b0bf0523a19b7a32869e20a
CRs-Fixed: 3229689
Connectivity logs are sent through the vendor event to the
supplicant.
Modify the connectivity log flow through the diag event to
the supplicant in order to maintain single logging infrastructure.
Change-Id: Id5429349e00c16c23b76894744fef404b2266e9e
CRs-Fixed: 3218152
Regdomain revision 39 version add a specific AUTO regdomain table for
automotive platform, so add new macro and enable the macro for
automotive platform to choose AUTO regdomain table usage.
Change-Id: I5fded1a6fa9c9b7c06b6be77e25c56f2a660922e
CRs-Fixed: 3210729
Add vendor handoff service bit capability support
WLAN_SOC_VENDOR_HANDOFF_CONTROL to check whether the FW
supports vendor handoff feature or not.
Change-Id: Ifdf541761716df9ca5b764c05714a8b501642354
CRs-Fixed: 3224573
Add new flag CONNECTIVITY_PKTLOG to make independent of
FEATURE_PKTLOG and REMOVE_PKT_LOG for packet logging.
This is because 32 tx/rx pkt logging is connection related
and this feature is independent of pkt log feature. Here
driver will send first 32 tx/rx pkts consisting of mgmt
and data pkts to userspace which can be used for debugging
Change-Id: If987ac8b6cb10b464a4ec2ace1c55215c0aa3614
CRs-Fixed: 3222970
This reverts commit I293647175c151da0fd6628345f98ea65c83b1bb3.
New solution idle shutdown in suspend prepare is better.
Change-Id: I69a0e7401c811e4a9656fcc8e3dd069f4317cc35
CRs-Fixed: 3213236
This enables configuration from user if and when the stale
packets from peer TID queues can be flushed.
Change-Id: Ic7427cdb8b70eeefea1b99d1f9be505a9cae76e6
CRs-Fixed: 3130419
The Android Common Kernel (ACK) accepted change [1] to 5.10.20 which
enables support for nested composite objects in the Kbuild
system. This was introduced to fix the "Argument list too long" error
that can occur when there are too many filenames passed by the build
system to the "ar" command.
The expectation at that time was that this patch would be maintained
for all future ACK kernels. However the ACK maintenance team has
decided not to maintain this patch beyond the 5.10 kernel, so update
the logic that determines if an ACK kernel has support for the
feature.
Subsequent changes will need to be made to address the "Argument list
too long" error when using an ACK that does not have this support.
[1] 21c713f8e8
Change-Id: Ief9a74a24d58796a90e19bd86fa269e64bcf4c73
CRs-Fixed: 3139401
As part of protected dynamic interface control feature,
if the user space disables WiFi, then the platform driver
disables the WLAN HW as well. Until the user enables WiFi,
the WLAN HW stays disabled.
So, add support to enable the WLAN HW, when the WiFi is
enabled by user space.
Change-Id: If6b90ae57c4471f4c613ead8310fd0a7ada818f3
CRs-Fixed: 3215335
Add config file for Mango WLAN device and enable emulation flag for
Mango WLAN device.
In addition, use static symbolic link '.mango -> .' for multi-ko support.
Change-Id: I0cebf11407e5625fd6475723496b9cda72cf5165
CRs-Fixed: 3210120
This change updates the auth_status and mac address of
roamed peer received in roam_sync_indication from FW to dp.
Change-Id: I27744017c87a956927108c5b3b0f9220d7e42965
CRs-Fixed: 3185110
When build kiwi_v2 driver, it reports below error
"make[3]: /bin/sh: Argument list too long". It's because when ar
process kiwi_v2.o, current driver generates too many characters which
over bash's limitation, so create sme.c file to includes all sme layer
common files to save some room.
Change-Id: Ib15fcb29efd6d06d48d305dcfac44de258dba259
CRs-Fixed: 3194081
As part of protected dynamic interface control feature, add
infra to disable/enable wifi, when invoked from user space.
Change-Id: I3f6c2abcef1ef89cbd0a735820de9b54d37bfa29
CRs-Fixed: 3166467
Add multi-client latency level service bit capability support,
WLAN_SOC_WLM_MULTI_CLIENT_LL_SUPPORT, to check whether the FW
supports multi-client latency level event or not.
Add INI "wlm_multi_client_ll feature" to enable/disable multi
client latency level feature from the host side.
* @min: 0
* @max: 1
* @default: 0
If firmware sends multi-client latency level service
bit capability to host and host enables multi-client latency
level feature via INI, the host waits for an event
WMI_VDEV_LATENCY_LEVEL_EVENTID as a response to a request
command WMI_WLM_CONFIG_CMDID.
Change-Id: I5cbea89e67caabac5db70b7f0a91c18bdd512e9b
CRs-Fixed: 3180928
On Wear HL based target with keystone kernel, it generates
WLAN driver with name "qca_cld3_wlan.ko" based on macro
definition WLAN_WEAR_CHIPSET. But the driver was not loading
because of the old INI path and /dev path.
This commit modifies the INI path and /dev path based on
macro defined i.e. WLAN_WEAR_CHIPSET.
Change-Id: I6d457a3bb708de3175c40b0f2b3ba0ebde915838
CRs-Fixed: 3168115
Currently wmi_roam_event_id event handler only register under feature
WLAN_FEATURE_ROAM_OFFLOAD, but it's needed for LFR2 roaming too. So
refine roam event processing for LFR2/LFR3.
Change-Id: Ic07fd8a543142fc1e151f484979ab99ff55ce802
CRs-Fixed: 3161973
Remove the old SAP-CSR flow for start bss, stop bss and
channel change req processing which is disabled currently
under the SAP_CP_CLEANUP macro.
Cleanup the redundant checks in the deauth, disassoc
response processing in CSR.
Change-Id: I5a360fc267688b51ca645551108b65646a3c8c1a
CRs-Fixed: 3164259
Kiwi target does not use the TX credit cmd ring and the
TX status ring.
Hence disable these srngs for Kiwi target.
Change-Id: I2473aad5b16316e3033c7d7ee9f81ee518dd2097
CRs-Fixed: 3157132
Add new sysfs entry to enable or disable capture of
datapath tx delay stats per vdev.
Enable HW_TX_DELAY_STATS config flag for Lithium targets
to support capture of tx delay stats at runtime.
Change-Id: I838961daf27e08c4b6e693852c62f9f894f499a5
CRs-Fixed: 2981004
Enable source port learning for SAP to add AST entry for the
remote stations with next hop. The SAP should use 4-address
frame format for the remote destinations.
Add support to handle data packets for WDS destination.
Change-Id: I6002e6dd9c9bb2c7b2e4f85bf06156dbb7feebee
CRs-Fixed: 2997812
Call the Wifi Pos API to advertise 11az security
related wiphy ext flags. Add Kbuild changes for new
file to advertise Wiphy Feature flag.
Change-Id: Id8c9c51770c3153c9c8a140f965249d1b0d1a844
CRs-Fixed: 3150582
Enable feature DP_RX_DELIVER_ALL_OOR_FRAMES for lithium DP
which will allow all OOR frames to stack.
Change-Id: I3ad59fc3b3fc8e70b2f05a7cfa23e2646c1e03a4
CRs-Fixed: 3152334
Remove CONFIG_WLAN_FEATURE_REDUCE_RX_THREADS compile flag.
Keep num rx_thread dependent on rx REO rings, 1 rx_thread for
each rx REO ring. It is controlled via INI dp_reo_rings_map.
Change-Id: I701e5cec79a8968b540c9437fe297ca1db8cd5d3
CRs-Fixed: 3048265
Rename files with blacklist/whitelist to denylist/whitelist.
Rename files with blm to dlm.
Change-Id: Ief7ce0a797f74460c9708f8d2dd440412af5b7eb
CRs-Fixed: 3099864
When build kiwi_v2 driver, it reports below error
"make[3]: /bin/sh: Argument list too long". It's because when ar
process kiwi_v2.o, current driver generates too many characters which
over bash's limitation, so create lim.c file to includes all lim layer
common files to save some room.
Change-Id: Ic4a1a71ebc9e42fde5e1a11b5342a7f17a9e0d91
CRs-Fixed: 3138823
Add feature flag to support marking first packet after wow wakeup
and enable it for QCA6490.
Change-Id: Icbda6dabe61a113a8aaa87f7a8fd1d95555226a1
CRs-Fixed: 3137627
Add chip version info in driver structure, platform driver
can use this info to decide whether accept this registration or not.
Change-Id: I37ba897954147ad75515f88e7ff35417e5de39e4
CRs-Fixed: 3125766
Currently refill thread is not getting chance to update
refill buffer pool, which is causing the increase in
rx thread time.
To fix issue move refill thread to performace cluster.
Change-Id: I839352ff09da692f801e97f7938a67ab8f09742b
CRs-Fixed: 3138081
Set the new macro CONFIG_REG_6G_PWRMODE for all targets. This enables
the new for power mode APIs which will replace the for freq APIs.
Change-Id: Ibb17616fdfc8bd110b3a68b4636c9b3c1bc9ca97
CRs-Fixed: 3136314
Disable monitor mode on sdx65, it will save 5MB buf,
and improve iperf performance.
Disable WIFI_MONITOR_SUPPORT for pdev/vdev/peer do
nothing of monitor mode.
Enable MONITOR_MODULARIZED_ENABLE for monitor_soc
attach do nothing.
Disable QCA_MONITOR_PKT_SUPPORT for monitor ring
which are not initialized in dp_queue_mon_ring_stats.
Change-Id: I9865ad38dbbee56abee567fded17f39ee299ac42
CRs-Fixed: 3069269
Enable the support to parse the common user info from
the tlv in monitor status ring for KIWI.
Change-Id: Id54817efb65c005578c7cc28286feabde1bea652
CRs-Fixed: 3129126
The duplicated MACRO in Kbuild is:
cppflags-$(CONFIG_HTT_PADDR64) += -DHTT_PADDR64
Change-Id: I0da070efcedf1af58bf0443f3402e6750c36a351
CRs-Fixed: 3111174
Add support to update tsf timestamp on driver entry and
exit in data packet. This helps debug latency issue in
XR usecases.
Change-Id: I49d190a55b7ab3081225b7a226f1bbe4f717a20f
CRs-Fixed: 3090104
Add "gEnableUpdateScramSeed" ini support to send
WMI_PDEV_PARAM_EN_UPDATE_SCRAM_SEED command to firmware
to enable OFDM scrambler seed.
Change-Id: Ie5c244a7ea418eec0af1f576e8521804ee85a665
CRs-Fixed: 3106348
Currently wlan_cfg80211_mc_cp_stats.h file is present at
qca-wifi-host-cmn/cmn/os_if/linux/cp_stats/inc.
With this change, move file to qcacld-3.0/os_if/cp_stats/inc
as this file contain MCC specific code.
Change-Id: Ia531094fb15ae86f5afab2b9c3bdde197feaac6c
CRs-Fixed: 3108266
The flags, CONFIG_TX_MULTI_TCL for multi SW2TCL and DFEATURE_IRQ_AFFINITY
for Tx completion IRQ affinity, were turned on for KIWI.
Change-Id: I44a7b1c889d7113f078a75c549a632809dbebad0
CRs-Fixed: 3110299
Add cpp flag support for CONFIG_ENABLE_LOW_POWER_MODE in Kbuild.
Currently, this config is enabled for wearables only.
Change-Id: I2fb08930290f5c23641e1d76796ab829b31aae04
CRs-Fixed: 3110291
Replace blacklist/whitelist with denylist/allowlist for
blacklist manager component. and replace blm with dlm.
Change-Id: I8dec146d8cb3b61dc891b72bea44704b8ab733fe
CRs-Fixed: 3087575
Currently there is no support to read bmiss stats from fw.
With this change, add support to read bmiss stats from fw.
Change-Id: I77594d05fbcd295aff4c625ba5f4f33cbc491063
CRs-Fixed: 3097304
Enable CONFIG_DBR_HOLD_LARGE_MEM for QCA6490, to avoid
large memory allocation failure during idle restart.
Change-Id: I8f504f278bab6f4d974e8cf6b778e6c5ab9ec838
CRs-Fixed: 3101976
Currently, MAC address update is supported only when interface is down.
Because of this framework needs to issue interface down and interface
up to update the MAC address. Interface down and up will lead to VDEV
delete and VDEV create commands to the FW.
To optimize Host-FW interactions during set MAC address, add support
to update the MAC address without bringing the interface to down state.
Change-Id: I76afa8f8c2504e8271bf689392d526f994afff0a
CRs-Fixed: 3063201
Add support to send qos null frames received from firmware on
STA interface to mon interface based on config value. The config
value get update based on vendor command set by user.
The packet filter check in ucfg_pkt_capture_process_mgmt_tx_data
moved to target_if_mgmt_offload_data_event_handler. So that we
will not allocate any buffer if filter is not set.
Change-Id: I426b340c5a65711ada971062af95ae039d18d0bd
CRs-Fixed: 3076241
New files are added in qcacld-3.0 to have cld
specific (e.g. roaming) MLO manager changes. But the inc
directory path is not added to INC list in Kbuild and
it's causing compilation issues while compiling the
source file wlan_mlo_mgr_roam.c
Change-Id: I2801a3a5fd04dac7e35fca3a43017bb1d6fd2b10
CRs-Fixed: 3095730
Enable monitor mode for WCN7850.
Enable the interrupt based processing in monitor
mode for WCN7850.
Change-Id: I6f8c6951794d0754977fa0d45086a95df25a13e6
CRs-Fixed: 3095456
Currently there is no provision to get the calibration failure
information from the driver. Because of this it is getting difficult
to debug the calibration failure issues.
To simplify the calibration failure issue debugging, add support to
parse calibration failures events in the driver.
Change-Id: I6d831804cca259862fea3e8bb4af33d556138d43
CRs-Fixed: 3078926
Enable TX AST index search for HMT STA which is more efficient
compared with older source address search.
Change-Id: Ie5ebf4199ada959ebd33351929cf642c21657c51
CRs-Fixed: 3084026
Kbuild change to
- Disable timer irq for CE in WCN7850
- Disable status ring timer WAR in WCN7850
Change-Id: I59a247bf14450c5e1ec194c505f3a00eb5f3619f
CRs-Fixed: 3075871
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
Add the support for the feature of Full Power Down while
in low power mode.
For this feature, it need to power down wlan chip when
suspend, and power up wlan chip when resume, so need to
change to call wlan driver shutdown and then power off the
wlan chip instead of calling wlan driver suspend when do
suspend, and changing to do power on wlan chip, download
wlan firmware, and calling wlan driver reinit instead of
calling wlan driver resume when do resume.
Change-Id: I293647175c151da0fd6628345f98ea65c83b1bb3
CRs-Fixed: 3061366
In some scenario, it is required to receive every ARP/NS packet even
it is not to solicit address itself. So add this vendor attribute
configuration to enable/disable ARP/NS offload on fly.
On some platform, if target suspend to WoW mode, APF filter will drop
such ARP/NS packet in the front, so prevent runtime suspend happen
if disable ARP/NS offload. System suspend still allow in consideration
of potential power impact.
It only support on STA/P2P-Client mode device, and this configure is
optional, while default behavior is ARP/NS offload enable. It will
restore to default behavior if interface being closed.
Change-Id: Icd49e230024bc1ce51519cd9fafee9bc9f79f382
CRs-Fixed: 3058494
Enable config flag to use multiple tx and tx completion
ring pairs for qca6490 when IPA is disabled.
Change-Id: Iafa6df504d7be55cbc5a233d6975963f0e118df5
CRs-Fixed: 3059736
Cleanup WMA HWMODE and WMA HWMODE List
as the same functionality is already taken
care by policy manager
Change-Id: I5dc1342422e70737111f882013ed3a6351a85336
CRs-Fixed: 3064739
For beryllium, use sw_exception bit to indentify is it FW
reinjected frame or not, if sw_exception bit is marked, then
skip FISA for these kind of frame.
Change-Id: I6ca74c244c366641a7bcfddff2834550b1e5b472
CRs-Fixed: 3056157
Enable the below datapath MLO features in Kbuild
- DP_USE_REDUCED_PEER_ID_FIELD_WIDTH
The above feature reduces the width of peer_id from
peer_metadata, thereby reducing the size of the peer
object array.
Change-Id: I58533c241a40184129786f11a47f3722cf005a61
CRs-Fixed: 3059637
Since the code under FEATURE_HAL_DELAYED_REG_WRITE_V2 has been
removed and cleaned up, removing the build flag from Kbuild.
Change-Id: I66072af952877881fb700869ae4774e4f1a388cc
CRs-Fixed: 3056477
Monitor mode code has been restructured into 1.0 and 2.0 directories.
Update Kbuild path to reflect the same.
Change-Id: I59e79decd269a394b21c30e0685015e6ff16e772
CRs-Fixed: 3027215
Add support to offload icmp feature to fw in case of
suspended state to avoid high power consumption.
Change-Id: I3ff19d71eac530c75be57e6b52b975e755ff2a53
CRs-Fixed: 3042452
wma to target_if convergence code is guarded under the feature
flag ROAM_TARGET_IF_CONVERGENCE and it's is enabled currently.
Remove the flag usage and remove the deprecated code(else part)
also.
Change-Id: I6973d9c366ec6a9c6164dd19f6f4775dd3ebf5f0
CRs-Fixed: 3049942
Add a sysfs to display DP stats on console. Sysfs file
displays requested stats on console and wlan logs.
Change-Id: Ifd56d1bf6f578a4ce3f1d963040e6d3cd138c64a
CRs-Fixed: 3035860
Provide below APIs for easy mesh.
API to get the current frequency of the given VDEV.
API to get acs status of the given VDEV.
API to get cac status of the given VDEV.
API to get/set bandwidth of the given VDEV.
API to get band information of the given VDEV.
API to get connected STA count of the given VDEV.
API to get BSSID of the given VDEV.
API to get SSID of the given VDEV.
API to set channel of the given VDEV.
API to get/set cac timeout of the given VDEV.
API to get/set country code of the given VDEV.
Change-Id: Ia0bd201ad8155a66a4a8c5517f6fa43f3f358505
CRs-Fixed: 3027192
Fix few missing attribute in below connectivity events:
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_RESPONSE
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCORE_CURR_AP
Also send the roam candidate info properly to userspace.
Change-Id: Ia9c4f095316adf8f40294f1e119cad648749bb72
CRs-Fixed: 3037650
KERNEL_SUPPORTS_NESTED_COMPOSITES := y is used to enable nested
composite support. The nested composites support is available in
all GKI & QKI kernels beginning with
5.10.20, but unfortunately is not available in any upstream kernel.
When a QKI kernel is used the flag is not set explicitly on the
kernel sources. Current logic sets the flag for GKI kernels only.
So extend the logic to set the flag for QKI kernels also.
Change-Id: I96aa36628aaf66f194c14f8883674da205220117
CRs-Fixed: 3041134
Enable ROAM_TARGET_IF_CONVERGENCE to enable the
wma to target_if roaming convergence code.
This is a temporary change and shall be reverted by
removing the define ROAM_TARGET_IF_CONVERGENCE usage and
the legacy code(i.e. code present in else part).
Change-Id: I840573b4699f23b7633b8049741a57a0dda975a7
CRs-Fixed: 3039950
Add new files for connect/roam logging. Add changes to
initialize the logging buffer.
Make changes to support enqueue/dequeue log.
Define enums for MAIN_TAG, Sub TAG, category.
Add structure definitions for logging buffer.
Change-Id: I1d283fcf464da90d4f5533214d480ddda156ec27
CRs-Fixed: 3013486
Currently driver don't have any feature flag for connection
roaming ini config and it directly tries to read the connection
roaming ini file, on some of the platforms if this ini file is
not present it returns failure message but some of the platforms
results in timeout which results in unexpected behavior.
To address above issue add a feature flag to read connection
roaming ini config.
Change-Id: Ica4159533e46ca5cc2048bf50eab2290bf5ae7d5
CRs-Fixed: 3035148
Network package timestamping is optional for TSF feature,
to make it configurable, add a new build flag
WLAN_FEATURE_TSF_PLUS_SOCK_TS.
This flag will be set only when CONFIG_WLAN_SYNC_TSF_PLUS
is enabled and CONFIG_WLAN_SYNC_TSF_PLUS_DISABLE_SOCK_TS
is not.
Change-Id: I413e85fadf93264cd41c2739b6d870aa08d60efb
CRs-Fixed: 3027378
In order to support four STA default interfaces
to be created and up after driver loaded, it
requires setting bmiss_offload_max_vdev=4 to
Hastings fw. So export this variable to be
configurable and can be modified if in need.
Change-Id: I25db5dd72de7d45c6be682891abba711edaf20dd
CRs-Fixed: 3030148
Currently max vdevs are defined as 6 in osif. Increase it to 9
in case of 11be.
Change-Id: If64306cfc55690d7523ee910074064051a1b1d78
CRs-Fixed: 3027377
Add support for CFR feature for adrastea target. A new feature
flag CONFIG_WLAN_CFR_ADRASTEA is introduced for this purpose.
Also adrastea do not support enhanced CFR so when only
WLAN_CFR_ENABLE and WLAN_CFR_ADRASTEA are enabled, some
compilation issues are seen as CONFIG_WLAN_ENH_CFR_ENABLE is
not set.
Fix these compilation issues as well as introduce a new feature
flag to add support for CFR in adrastea.
Change-Id: I52bc235c4d271004698163897c15721023410017
CRs-Fixed: 2705119
Use CONFIG_CNSS_OUT_OF_TREE to control if CNSS family drivers are
built from in-kernel-tree source or out-of-kernel-tree source since
the exposed header files will be in different paths. This is also
for backward compatibility.
Change-Id: Icc1253f65a596c8579424f056dcd0fcb5e73a4a1
CRs-fixed: 3022566
The current way in the driver to handle CONFIG_CNSS_UTILS=m and
CONFIG_WCNSS_MEM_PRE_ALLOC=m will not work if the flags are not
coming from kernel Kconfig directly (e.g. CNSS utils and prealloc
module sources are built out of kernel tree) since "cppflags-
$(CONFIG_FLAG) += -DCONFIG_FLAG" will not take effect if CONFIG_FLAG=m.
Fix it in a proper way which is same as handling CONFIG_CNSS_GENL.
Change-Id: Iab4bf34bd1ae89f947bc5f7080e18569810f5f58
CRs-fixed: 3022560
Add support for sending WMI_REQUEST_THERMAL_STATS_CMDID
to request for the thermal stats via vendor cmd:
QCA_WLAN_VENDOR_ATTR_THERMAL_CMD_TYPE_GET_THERMAL_STATS
This vendor cmd can either be used to clear the thermal
stats or to request for the thermal stats.
Added ini gThermalStatsTempOffset, which can
configure thermal temperature offset value for capturing
thermal stats in thermal range such as Thermal STATS
starts capturing from temperature threshold to temperature
threshold + offset.
If this ini is set to 0, then the events are disabled.
Also, add support for the FW event where the requested
thermal stats are sent in FW event
WMI_THERM_THROT_STATS_EVENTID().
The following attributes are sent in the events for every
level:
STATS_MIN_TEMPERATURE
STATS_MAX_TEMPERATURE
STATS_DWELL_TIME
STATS_TEMP_LEVEL_COUNTER
Change-Id: If8acdeec5bde33be346332ccaf39d78d0151203d
CRs-Fixed: 3016818
For platforms that don't have IPA module, 4 RX rings can be
enabled to map to 4 RX threads. This Change is to implement a
feature flag to separate the number of threads used for
different platforms.
Change-Id: I23744ca6333f29667b0860f386dc9fc45f29abe4
CRs-Fixed: 3018613
The purpose of the multicast Domain Name System (mDNS) is to resolve
host names to IP addresses within small networks that do not include
a local name server.
It utilizes essentially the same programming interfaces, packet formats
and operating semantics as the unicast DNS, and the advantage is zero
configuration service while no need for central or global server.
Based on mDNS, the DNS-SD (Service Discovery) allows clients to discover
a named list of services by type in a specified domain using standard
DNS queries.
Here, we provide the ability to advertise the available services by
responding to mDNS queries.
Change-Id: Id2a0468d49237c21062cfd1988e34903658cdad9
CRs-Fixed: 3008549
Fix AP+AP IPA offload path failure when NAPI over IPA enabled on mdm
platforms by adding QCA_CONFIG_RPS check.
QCA_CONFIG_RPS is same as CONFIG_RPS, default Y, but depend on CONFIG_SMP
as msm-5.4/net/Kconfig.
For AP+AP mode,
For LA, CONFIG_SMP on, then QCA_CONFIG_RPS on, use IPA exception path.
For mdm, CONFIG_SMP off, then QCA_CONFIG_RPS off, use IPA offload path.
For IPA napi enable status check, just use qdf_ipa_get_lan_rx_napi,
don't need MACRO IPA_LAN_RX_NAPI_SUPPORT.
Change-Id: I6b16f2a830d4e7829c9e539896ed2977895d367e
CRs-Fixed: 2992393
Add feature flag for conditional compilation of feature to enable
p2p+p2p on a device.
Change-Id: I2c95b39c3db6e51213f7625383c365799fff9e31
CRs-Fixed: 2991307
As part of new implementation for 802.11BE MLD(multi link device)
address also need to be generated, derive the address during the
driver probe for max supported MLD's.
Change-Id: I092aac0607a6b7e9e420b1c82a61869cc0b8a2d4
CRs-Fixed: 2993460
- Generate association response for secondary MLO links
- Update pe session and connect resp with partner link info
CRs-Fixed: 2977970
Change-Id: I17a820abef4f4df082c1f219f35599f669142670
Add CONFIG_WLAN_TSF_UPLINK_DELAY option for uplink delay feature
and enable it on WAIPIO.
Change-Id: I91f8433e853efb177bb1d9aea42cdc7f625a0d4e
CRs-Fixed: 2996368
Enable CONFIG_HIF_CPU_CLEAR_AFFINITY flag to
change rx_err_ring irq cpu affinity.
Change-Id: I3d2475210ffd5ac6acef7e0418eef26cf92e1302
CRs-Fixed: 2950630
Enable config flag to skip MSI configuration for
monitor status and destination rings in MISSION
mode.
Change-Id: If295a5afc6731bbec1ad7182590e0015f3a911ba
CRs-Fixed: 2992169
Add sub vendor command support for extended avoid frequency
list(QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_EXT). It will
exclude the channels that application doesn't prefer and
update to regulatory component.
Change-Id: I5164a0b2c4769e9749ef0e8140bded3f530087d4
CRs-Fixed: 2974529
With this change introduce featurization for dump in progress
and move implementation related to this feature to new files.
Change-Id: I4614aecde57a9c5ffec765f3afaa943c58956132
CRs-Fixed: 2979226
This reverts the change to do the memset of SW2TCL desc consumed by
HW to zero.
Change-Id: Ie56207cf483643f6e294df23f5445ca853a75d51
CRs-Fixed: 2984818
Currently we use hardware based feature flags in Kbuild file to
enable/disable certain feature flags. In case hardware changes, then we
would also need to edit Kbuild file to enable feature flags for the next
target. Instead, use CONFIG_<FEATURE_FLAG> from defconfig files to
enable DP feature flags. This will limit the changes for hardware update
to defconfig files only.
Change-Id: Icc8aa6ad51904946f9141a0f41728ed72b1f6d2f
CRs-Fixed: 2964342
There is potential risk when starting CFR and resume happens at same
time. Wake lock is added to CFR component, and this change enables
wake lock for enhanced CFR.
Change-Id: I1ebe8c11fad66b66adcad0b551756abf2c010cde
CRs-Fixed: 2977699
Enable connection manager LFR2 code path, then all targets which are
using LFR2 will switch to connection manager code path.
Change-Id: I37f831596699d39e635d88ee88faf841f3a36063
CRs-Fixed: 2968850
When FEATURE_HAL_DELAYED_REG_WRITE enabled, also enabled
SHADOW_WRITE_DELAY to avoid back to back shadow reg write.
Change-Id: I8d48496814e063ebd441db3520e3a5406c5db13e
CRs-Fixed: 2967202
Add debug log to print more details about the link vote id when
PCIe link suspend is not allowed.
Change-Id: I5069202436e0da37b8ae22f84e28ac06d35002b5
CRs-Fixed: 2964957
Enable the wlan IPA events for P2P GO/CLI mode for qca6390 to avoid RX
packets get dropped due to IPA interface context is not created.
Change-Id: I1e2c5e4085874280779d8d8d07efdb1f33e6d90b
CRs-Fixed: 2853271
Set the newly added flag for wlan_cfg80211_crypto_add_key():
set to true if the request is from north bound, false otherwise.
Move processing of install key complete event into
crypto component.
Change-Id: I981e3722966c5b44255b3e29b7df3fbccfa087c8
CRs-Fixed: 2839454
Add support for QCA_NL80211_VENDOR_SUBCMD_GET_RADAR_HISTORY vendor
command. This command will return the current NOL list in driver
and the last Radar detection result in previous SAP active state
(includes CAC state).
Change-Id: I719630c39b89c1813ca05c4356dce627d72d82e2
CRs-Fixed: 2966501
Added flag for HTT HTC tx based completion. currently
packet are freed using htt htc misc list.
Change-Id: I2e7e4d59cadf30f4bb14eaefc045240d1ebc1aaa
CRs-Fixed: 2922547
For some of the stability issues triggered by H.W,
by the time host detects it most of the QDF history
is getting overwritten to avoid this increasing QDF
nbuf history. So that there will be less chance of
events getting overwritten.
Change-Id: Ia4bad1a175976af2e56126b56ae8c92a988e4289
CRs-Fixed: 2942868
Avoid obj mgr logging of get ref API print on console
for MCC as it leads to excessive logging and assert.
Change-Id: I75fb9381a7c122f4d7701888da35c7e38836250e
CRs-Fixed: 2941196
Enable the history support to log Tx descriptors programmed
in Tx and completion HW rings.
Change-Id: I5ce308354714da78baa05500bc73e1a9ec91b958
CRs-Fixed: 2935363
obj_mgr_alert() function is currently used in
wlan_objmgr_iterate_log_del_obj_handle() to print and is causing
spinlock to be held too long and timing out. Thus, increase the
periodicity of LOG_DEL_OBJ_TIMEOUT_VALUE_MSEC to 10 seconds.
Change-Id: I48a7b2ce031393493b9d19c9dd365a725c60284e
CRs-Fixed: 2930279
For api's in wlan_hdd_rx_monitor.h, replace target
specific conditional compilation with feature specific
conditional compilation.
CRs-Fixed: 2819131
Change-Id: I2678192ad5dbb1a4515bd04e67ca23f71f92a2d1
Tx MPDU aggregation is not happening in HE80 11ax connection
resulting in low throughput for HST.
Fix is to enable TX_AGGREGATION_SIZE_ENABLE for HST.
Change-Id: Ieca8464991a6a194d6f02b70fe4972aca288b541
CRs-Fixed: 2925514
IPA_WDI3_TX_TWO_PIPES is added to enable two TX pipes
configuration for IPA WDI 3.0 interfaces.
Enable IPA_WDI3_TX_TWO_PIPES on sdxprairie platform.
Change-Id: I34fe0af56b169ebad9d7bb29b38838dd44503736
CRs-Fixed: 2750082
CONFIG_CNSS_UTILS is controlled in the msm kernel config, while it is
not in the customer kernel.
Since it is a wlan feature, make CONFIG_CNSS_UTILS as wlan driver build
option, so that driver can enable this feature dynamically when building
wlan driver.
Change-Id: Ib8232a67da33e4613524c67cead5b90014fd371d
CRs-Fixed: 2922303
Currently latency detection timer timeout and threshold values are
used as 2 and 1.9 seconds respectively. After going through few
issues, 2seconds found to be too aggressive and hence increasing
these values to 4 and 3.9 seconds respectively.
Change-Id: Ie9314b517a7a8e47460effc86e5b3fb939dcbb33
CRs-Fixed: 2921474
Update the wma structures with the eht capabilities received
from the firmware.
Change-Id: If571ab857e1f71b972655d9d48902b28e3974b1e
CRs-Fixed: 2911863
As part of 11be enhancements, firmware will send the 11be hardware
capabilities that are supported by the device. Add new HDD APIs to
store these 11be capabilities in the host driver.
Change-Id: Ib3baa41ea3d8ef2ce49b88e4b48d8bc29556cd66
CRs-Fixed: 2908045
Currently Kbuild handles WLAN_CONFIG_OVERRIDE directives by writing
the overrides into a file and then including the file. This violates
one of the requirements of the Hermetic Build feature which forbids
modifying the source directory. This is also subject to a race
condition where multiple concurrent builds attempt to write to the
file in parallel, and one of the builds ends up consuming the
overrides from both builds.
To avoid these issues update the WLAN_CFG_OVERRIDE handling to no
longer use a file, but to instead just $(eval) the overrides.
Change-Id: Iac159228a82b0a8134e272ce63ed568050e8e6ae
CRs-Fixed: 2917351
KERNEL_SUPPORTS_NESTED_COMPOSITES := y is used to enable nested
composite support. The nested composite support is available in some
MSM kernels, and is available in all GKI kernels beginning with
5.10.20, but unfortunately is not available in any upstream kernel.
When the feature is present in an MSM kernel, the flag is explicitly
set in the kernel sources. When a GKI kernel is used, there isn't a
flag set in the sources. Therefore add logic to set the flag if we are
building with GKI kernel 5.10.20 or greater.
Change-Id: I13cd1a07915e9d187da22259cc61d9481e908e79
CRs-Fixed: 2914541
Update comments for temp change done to enable connection mgr, as
CONFIG_CM_ENABLE will be removed once Connection manager
LFR2 changes are done.
Change-Id: I22bc1f3f9fe5a69206ac496e99a60beb87dc1e36
CRs-Fixed: 2921657
Enable DUMP_REO_QUEUE_INFO_IN_DDR to send cache flush cmd
to REO using cmd: iwpriv wlan0 txrx_stats 34 0
Cache flush cmd will invalidate the h/w cache and ensure
that h/w writes to DDR.
In the cmd callback, the reo status tlvs are processed
and the vaddr of the reo queue desc is used to read the
queue information from DDR and dump it in the host driver logs.
Change-Id: I4521b777d13c490ac687f9ff673182262bc52f62
CRs-Fixed: 2899824
The current implementation of add-wlan-objs does not work correctly
with GNU Make 3.81 which is widely in use. So refine the function in a
manner that works with 3.81 as well as newer versions of Make.
Change-Id: Ic689367cccc16cf6ab23eeeb58665d84c5db3a26
CRs-Fixed: 2903606
Set system state in hif ctx to suspend or resume on
system suspend and resume respectively.
Change-Id: If1904a4fe5c861deed1b35071be10cb8cc8d6407
CRs-Fixed: 2899520
In Kernel 5.4/4.19, CNSS2 will check if the current enumerated
device id matches with the device id in pld_pcie_id_table[]
by calling cnss_wlan_register_driver(). When using ROME, the
enumerated id is 0x3e, but it is not defined in pld_pcie_id_table
if CONFIG_AR6320_SUPPORT is not set. To avoid this issue, add
compilation flag for CONFIG_AR6320_SUPPORT, then set it in your
qcacld build env for ROME chip.
Change-Id: I7b0fee679923402c43487299e31696d847552335
CRs-Fixed: 2906988
wlan_hdd_state_ctrl_param_create() creates a control file that is
used to synchronize the wlan driver with the Wi-Fi HAL in
userspace.
Currently the driver creates the file at the path /dev/<module>.
The WIFI_DRIVER_STATE_CTRL_PARAM configuration item defines the path
that the Wi-Fi HAL uses, and this is /dev/wlan.
So when the driver is built with a module name of "wlan" the file is
created at the expected path. However when the driver is built with a
different name, as is done when TARGET_MULTI_WLAN is enabled, the file
is not created at the expected path.
Therefore change the driver to always create the file at the path
specified in the WIFI_DRIVER_STATE_CTRL_PARAM configuration item.
In addition do not even enable the functionality if the
WIFI_DRIVER_STATE_CTRL_PARAM configuration item is not set
(i.e. on non-Android platforms).
Change-Id: I8a7f0a9b22e3f49d02f896150bd452f80af9c022
CRs-Fixed: 2905381