The pktlog will fail with ROME module due to the change IDs:
I24776caa3b78ec38d94421f243ec72d81ee3102d
Ifb70ac0993f2402201f88758845f730cf677b1a0
Define new macro PKTLOG_LEGACY for HELIUM/ROME to avoid the ROME PKTLOG
failure.
Change-Id: Ibaa20b7af208a261e0fd8682de45ad8eb4a69212
CRs-Fixed: 2520696
Add Feature Flag HIF_RECORD_RX_PADDR for Helium to record
paddr in CE descriptor history.
Change-Id: I5a6af11fecc00a26d1a334a983290a00be34895c
CRs-Fixed: 2525667
The member of type_specific_data is not valid for ROME module. Add macro
protection for type_specific_data in the ath_pktlog_hdr to avoid offset
error when getting the msdu id info during processing pktlog TX info.
Change-Id: Icb8b95cef9a32732116522e4fc3b39067ff36037
CRs-Fixed: 2522277
Introduce a new Kbuild option 'WLAN_CFG_OVERRIDE' to override
wlan configurations.
Value of this option is a list, which includes the config items
those need to override, its pattern is as below:
WLAN_CFG_OVERRIDE="WLAN_CFG_1=n WLAN_CFG_2=y WLAN_CFG_3=n"
For LA build, it makes use of this Kbuild option, and introduces
new android build options for different products:
WLAN_CFG_OVERRIDE_wlan: for single wlan driver case.
WLAN_CFG_OVERRIDE_<chip>: for multiple wlan drivers case, for
example WLAN_CFG_OVERRIDE_qca6390 and WLAN_CFG_OVERRIDE_qca6174.
Change-Id: I8e062c62d36e076a79032a47aa04501d4543a9c8
CRs-Fixed: 2515905
In Genoa SDIO ADMA implementation Host sends packets to FW in
multiples of SDIO Block size.
If the packet/bundle is not block aligned Host adds padding at the
end of Packet/Bundle.
If the TX packet plus padding exceeds one FW TX Buffer, Padding data
will occupy the next FW TX buffer. Same applies for bundle TX packet.
For above scenario, HTC_FLAGS_PADDING_CHECK of HTC header Flags is used
to notify the FW that - Padding data follows the currentHTC packet
Since the padding data will take one extra FW Tx Buffer, host need to
handle the extra Tx credit being used by the padding data/buffer
CRs-Fixed: 2516619
Change-Id: Ie2d2292fabb30e1a13eebe4d11b57f452e42afa8
Use QCS40X instead of QCS405 in config files. Kernel defconfig files for
QCS405 and QCS403 has been separated recently, and the arch has been
changed between these two chips. But all QCS related features and changes
in cld should all be included, so use CONFIG_ARCH_QCS40X to replace
CONFIG_ARCH_QCS405.
Change-Id: I6f0837bb3d3f1530aea5b2d4912741beb8c313bd
CRs-Fixed: 2519267
Add configuration for gpio pin used to send strobe to wlan hw.
The host driver will latch the current time and toggle the gpio
to generate a strobe to wlan hw.
The tsf will be latched on detecting the strobe and it will be
made available in a register for sw access.
The wlan fw will read this tsf and report it to driver using tsf event.
Change-Id: I4365d97d22836ddbbd2bf9913d4f723e5a870369
CRs-Fixed: 2495152
Avoid compiling ol_rx_reorder.c and ol_rx_reorder_timeout.c
for low latency and only compile for high latency
data path.
Change-Id: I1f3819fa093766abba87e5dc6dc44e6d2188740b
CRs-Fixed: 2506005
Remove "CMN_VDEV_MGR_TGT_IF_ENABLE" from Kbuild as target_if common
code is used for vdev operations and legacy code is removed.
Change-Id: I15fb2311aa1b6eeec506d9a6bdc720abaf93244e
CRs-Fixed: 2507456
Enable Motion Detection Feature for Genoa USB interface
using config flag CONFIG_FEATURE_MOTION_DETECTION
Change-Id: If345705619f231d195d79e50a9bb2478641bd4df
CRs-Fixed: 2501957
Featurize DHCP indication for SAP and disable it
for QCN7605 as this feature is broken for HL
Data Path.
Change-Id: If1db649131d887a2aab18461187403b4b9a2c5b4
CRs-Fixed: 2496032
The SDIO HIF for QCN7605 requires to use the SDIO Abstraction Layer.
Used the SDIO CNSS2 PLD layer api's to interface with SDIO AL
Change-Id: I839a580941e4651e3dcff4f87cda26cc567687fc
CRs-Fixed: 2275631
Define void * data members of cp_stats with specific type, remove void
pointer usage for part of cp stats code.
Change-Id: Iace37c0a546909b865d5185830a2e02b5b39b7d8
CRs-Fixed: 2492544
As for Rome, currently it usually just only support two
IPA interfaces offload, if use the default value 3, which
will cause the IPA pipe setup failure issue. So export
the max IPA interface numbers, and it's better to set
the appropriate value from build file according to
different requirement for different chipset and platform.
Meanwhile, it support SMMU on the sa415 platform, so
enable SMMU for it.
Change-Id: I2de31bcb4d38f5e7964d2cbdc2fc6f143eef510d
CRs-Fixed: 2480627
Currently ext scan is enabled by default in driver which
is increasing driver size significantly and ext scan
is not getting used anymore.
Disable ext scan with feature flag CONFIG_FEATURE_WLAN_EXTSCAN
to reduce driver size.
Change-Id: Id0fdeae6e6b71f53d3b73322aca659254d52cec8
CRs-Fixed: 2491452
Enable macro DP_RX_PKT_NO_PEER_DELIVER to deliver some RX pakcets
like Eapol even if there is no related peer found, this is
needed for the LFR roaming case.
Change-Id: Ia732c6448319bca122d405d25f2af410df0f4d68
CRs-Fixed: 2491507
New added header file target_if_pub.h is introduced due
to remove void usage for objmgr module, add include path
for this header file to compile.
Change-Id: I4f79e6d3213941b86fbadd42934cd355bcd0a511
CRs-Fixed: 2488101
Enable following special 4 ports concurrency for Auto HST
platform.
(SAP+STA) (2.4G MAC SCC)+(SAP+STA) (5G MAC SCC).
Change-Id: I6ab34606a98c1e4a670de63e12e54f2becd4d1d4
CRs-Fixed: 2457713
The host driver serialization module currently supports upto 4
commands in non scan pending queue. This is calculated at the
wlan_serialization_vdev_create_handler() as:
max_pending_cmds = (WLAN_SER_MAX_PENDING_CMDS /
WLAN_SER_MAX_VDEVS)
But in SAP case, if multiple STA sends deauth at the same time,
4 pending commands in non scan pending queue is not sufficient
and will result in only disassoc from the first 4 STA getting
honored.
The current host wlan driver supports 3 SAP mode and
2 STA vdevs amounting to a total of 5 vdevs supported.
So calculate the total non scan pending commands for
serialization based on the total peers supported for each
mode to fix this issue.
In SAP case, maximum 32 peer are supported and for STA case,
maximum 4 pending commands for serialization. So change the
max pending commands calculation as:
max_pending_cmds = (No. of sap modes supported * 32) +
(No .of STA modes supported *4 )
Change-Id: I30b2d79f2c15a092060dbdd729e1d035eb36fd83
CRs-Fixed: 2468945
Check if host is reaping a descriptor which is already
reaped then drop RX desc processing instead of asserting.
Macro DUP_RX_DESC_WAR added before dp_rx_dump_info_and_assert function
which does not assert for the case WAR is enabled.
Change-Id: I8a095d33e4f7e868340d9a76618c064af764386d
CRs-Fixed: 2487793
Add feature flag PCIE_REG_WINDOW_LOCAL_NO_CACHE to support no
caching of PCIE register window value in driver.
Change-Id: I427b784de874464b98a2acf67b9850e1e41f65aa
CRs-Fixed: 2487158
This command is used to send OEM data binary blobs
from application/service to firmware.
Change-Id: I0b5d7dd5a030b70e59c8581fb51d99079b38385f
CRs-Fixed: 2477332
Currently there is no ini support to configure frequencies
which needs to be avoided for the acs channel list which
may allow SAP to come up on a channel which is not preferred.
For Example there are many legacy clients which supports
2.4GHz but don't support channel 12 and 13 (or does not have
the capability to detect country change where channel 12 and
13 is valid).
In that case, if SAP comes up on channel 12/13, those legacy
clients won't be able to connect to AP.
Hence, Add a feature flag and ini to configure the frequency
list which can be avoided during acs.
Change-Id: Id106b38228f837ba056eb916004dc012e919ddd2
CRs-Fixed: 2472004
Move definition of HIF_CONFIG_SLUB_DEBUG_ON to driver Kbuild,
to cleanup CONFIG_MCL/CONFIG_WIN dependency.
Change-Id: I3f4abf546c5c9fe08531a14234f149a82cd14bf1
Featurize wmi multi mac service with the feature flag
WMI_MULTI_MAC_SVC, to cleanup CONFIG_MCL dependency.
Change-Id: Id159a514cf3773e4dcbc0ecd290014b828673882
In P2P GO mode, if the P2P client device is not VHT capable and
only HT capable, but the DUT P2P GO is VHT capable and advertises
2x2 NSS and sends packets with 2x2 rates, it results in interop
issues with HT only capable P2P client devices.
When GO is operating in DBS mode, GO beacons advertise 2x2
capability but include OMN IE to indicate current operating mode
of 1x1. But here peer device is only HT capable and will not
understand OMN IE.
Check if the P2P client device is only HT capable and has
"\x00\x50\xf2\x04". Then downgrade the P2P GO operation to 1x1
nss. Modify rx mcs map value in association response to enable
only mcs 0-7.
Change-Id: I7177c5aee9a560a20c50a63886c0ee77f7d617ae
CRs-Fixed: 2464925
As single CPU and low frequency platform, the held time of spin lock
easily exceed the max time allowed when system taking heavy payload.
then crash occur. To address this, Disable QDF_LOCK_STATS_BUG_ON on
SDXPRAIRIE platform.
Change-Id: I156a003b361f3653591102de1cde9b131c467968
CRs-Fixed: 2456386
qcacld-2.0 to qcacld-3.0 propagation
This change adds support for driver supported TCP
delayed ack to increase TCP RX performance in
third-party platform which does't support kernel
TCP delayed ack feature.
TCP delayed ack is dependent on count and timer
values. Whatever is achieved first will trigger
sending TCP ack.
This feature can be controlled through ini values.
gDriverDelAckTimerValue - timer value in ms
gDriverDelAckPktCount - delayed ack count
gDriverDelAckEnable - enable/disable feature
Change-Id: I8105bbb90965295b5a4aefeb00d344a90155974d
CRs-fixed: 2414224
Add feature flags DP_FLOW_CTL to featurize DP flowctl ops,
DP_PEER_MGMT to featurize peer handling in DP,
DP_POWER_SAVE to featurize power saving ops in DP.
Change-Id: I02f487fec846e9dd9ffcaf53a10e49e7a3365fff
Add a feature flag enabling support in defconfig
for the datapath event history logging feature.
CRs-Fixed: 2466616
Change-Id: I8fc2c76a927aea3e2e723cde87c69e59e03a9848
Propagation from qcacld2.0 to qcacld3.0.
The WMI CMD and EVENT of "get antenna isolation" are already defined,
but not used before in qcacld3.0.
Now, The host driver uses vendor command to get this information
instead of iwpriv command in qcacld-2.0.
The attribution of this feature is already defined in file
"qca_vendor.h". The name is "QCA_WLAN_VENDOR_ATTR_ANTENNA_ISOLATION".
So host driver will use vendor command
"QCA_NL80211_VENDOR_SUBCMD_GET_HW_CAPABILITY" to get the information
from lower layer.
Change-Id: I915768f622ddc9a70a95ce4fe952f19917a8f901
CRs-Fixed: 2447360
Add QCA_LL_PDEV_TX_FLOW_CONTROL for both
QCA_LL_LEGACY_TX_FLOW_CONTROL and QCA_LL_TX_FLOW_CONTROL_V2
disabled platform, avoid frame drop in driver which leads to bad TCP
TX throughput. Change NUM_TX_QUEUES to 5 for this case to avoid invalid
memory access in wlan_hdd_netif_queue_control().
Change-Id: Ifa649e31a41d1bf89eadc8cc7e9520f0e27b9fe4
CRs-Fixed: 2466996
Link BLM exposed APIs to the following:-
1. csr_get_scan_result:- Link this API with filter bssids in
the reject ap list maintained by the blacklist mgr.
2. lim_assoc_rej_add_to_rssi_based_reject_list:- Link this API
with the the blacklist mgr add bssid to reject list to add the
OCE and BTM related assoc rejects.
3. Userspace avoid list parsing logic for the userspace to set
the BSSID as avoided.
Change-Id: Id51ffb80cea3f845fefe14db25d0f7acda6ea0f3
CRs-Fixed: 2461281
Remove CONFIG_MCL for reduction limit to make code generic.
Initialize value for reduction limit i.e WLAN_SCHED_REDUCTION_LIMIT
to 0 for MCL. In case WLAN_SCHED_REDUCTION_LIMIT not defined, then
define WLAN_SCHED_REDUCTION_LIMIT to 32 for WIN.
Change-Id: I6f6e4c9b3df71110654d487fcdae0334eeee4091
CRs-Fixed: 2459119
Implement the interface to transfer the info between
host driver and firmware about the ap which has interop
issues with the DUT. It is detected by firmware and
forwarded to user sapce for persistent storage. And
user space configs these APs to firmware when the DUT
starts up next time.
CRs-Fixed: 2425202
Change-Id: I2e828d521f0e04862a01fa1c90626f51b7f65796
Add a compile time feature flag by name RX_DESC_MULTI_PAGE_ALLOC
which will enable the memory allocation of RX descriptors using
multiple pages instead of large contiguous memory.
Change-Id: Ia3803a3685c605c79a34a0c2c000d7ed4adb7d97
CRs-Fixed: 2456267
Remove CONFIG_MCL for Serialization msg queue depth to make code generic.
Initialize value for Serialization msg queue depth i.e
SCHEDULER_CORE_MAX_MESSAGES to 1000 for MCL. In case
SCHEDULER_CORE_MAX_MESSAGES not defined, then
SCHEDULER_CORE_MAX_MESSAGES define to 4000 for WIN.
Change-Id: I498cfb73ed7774d9d26b1374ee87b1a7691341d9
CRs-Fixed: 2457704
Add new vendor cmd : QCA_NL80211_VENDOR_SUBCMD_BEACON_REPORTING.
This subcommand is used to implement asynchronous beacon
reporting feature. Userspace can request driver/firmware to
report details of each beacon received whose bssid is same as
currently connected BSS's mac address. The driver will encapsulate
the details of these beacons as an asynchronous event within this
command id until userspace requests to stop sending beacons.
Change-Id: I9a32fe5431767b077983c7db90a2f825709f368c
CRs-Fixed: 2431351