Fix insmod Genoa wlan module failure for:
wlan: Unknown symbol wlan_set_vdev_crypto_prarams_from_ie.
wlan_set_vdev_crypto_prarams_from_ie is defined in
wlan_crypto_global_api.c
UMAC_CRYPTO_OBJS := $(UMAC_CRYPTO_CORE_DIR)/
wlan_crypto_global_api.o \
ifeq ($(CONFIG_CRYPTO_COMPONENT), y)
OBJS += $(UMAC_CRYPTO_OBJS)
endif
The crypto component is always required after convergence
between WIN/MCC, hence just unconditonally set
CONFIG_CRYPTO_COMPONENT := y in Kbuild.
Remove CONFIG_CRYPTO_COMPONENT := y in defconfig of each wifi
chip: default_defconfig, qca6174_defconfig, qca6390_defconfig.
Change-Id: Id0abe80673d59d9274401f1304b5ce1d906624eb
CRs-Fixed: 2596124
CONFIG_CRYPTO_COMPONENT is supposed to be enabled for all devices,
so enable it for Genoa as well.
Change-Id: Icf37a9052c329e362460342fe44d8fe70c5bb1ed
CRs-fixed: 2597797
Enable DP Bus Bandwidth feature in WHUNT config, this helps to
execute and detect issues in Bus Bandwidth feature code path.
Change-Id: Id4376236b77661519667c40c427c50af436a9dc2
CRs-Fixed: 2597300
When CONFIG_WLAN_DEBUGFS is disabled, source files depending on debugfs
will not be compiled.
CRs-Fixed: 2589891
Change-Id: I43496fe1fffc83c26d810b2a06b8c0f45edfc1c8
The PKTLOG function broken with Genoa caused by
2857937, so add the needed macro back to avoid
crash issue while PKTLOG enable.
Change-Id: I3f9621830dcad415868fdee5fbeef8fdb86604b0
When radar is injected at +/-30MHz separation from center frequency
in VHT 80MHz mode incorrect pulse duration is reported in the radar
summary reports and lead to decreased radar probablity detection.
Fix the issue by capturing pulses with such characteristics and
modify them to fit within the valid phyerror pulse duration range.
Change-Id: Ic6314a372d6909448fbe4eb694c41736d1719712
CRs-Fixed: 2577632
Fix compile issues when some features are disabled, the features are:
BUILD_DEBUG_VERSION
CONFIG_CP_STATS
CONFIG_HOST_OPCLASS
CONFIG_FEATURE_ROAM_DEBUG
There are some other features depends on each other, so enabled features to
qcs40x.snoc.perf_defconfig, the features are:
CONFIG_WLAN_FEATURE_FILS
CONFIG_WMI_ROAM_SUPPORT
CONFIG_WMI_STA_SUPPORT
CONFIG_REG_CLIENT
CONFIG_WLAN_FEATURE_DP_BUS_BANDWIDTH
CONFIG_WMI_CONCURRENCY_SUPPORT
CONFIG_LL_DP_SUPPORT
Change-Id: I6fa1eacb79576a955e593dbb9ac52083742275e3
CRs-Fixed: 2354496
Add credit tracking for HL Data Path in DPTRACE.
Also update proto_bitmap to dynamically enable/disable
credit tracking.
Change-Id: Idd9216b634586f3a81c2194ea4bd2122a472154a
CRs-Fixed: 2574053
Add configuration CONFIG_WLAN_SYNC_TSF_TIMER and macro
WLAN_FEATURE_TSF_TIMER_SYNC to capture and get the tsf
from firmware.
Change-Id: I62298791cbafed84f1d23f1a2ecb5c2835dcd137
CRs-Fixed: 2564860
Add logic to queue and bundle packets before
giving it to scheduler to ensure predictive HTC
bundling for improvement in TX throughput.
Change-Id: Ib00135ca59b4c5f0f05edc93dca115bf17174a36
CRs-Fixed: 2561671
Define debugfs node in driver to
export MIB counters to user app.
Define macro WLAN_FEATURE_MIB_STATS for this
feature that gets MIB statistics from fw.
Change-Id: Icae8826309094d17e8f6d4503f617a3a7116d3c9
CRs-Fixed: 2548241
The ANI level determines how well the device is coping with interference
in the wireless environment. Add support in the driver to query the ANI
level from the firmware and populate it for userspace entities to use.
Change-Id: I54934f670aa11737e11eca4d64e12f9dffb4f430
CRs-Fixed: 2554674
Enable Force wake feature through Kbuild
to access address range greater than BAR+4K
at runtime.
Change-Id: Ibe3c3b9b765c256493b1d5f9258e462760d45dc6
CRs-Fixed: 2557978
Enable ENABLE_QDF_PTR_HASH_DEBUG macro for Def build only to debug
qdf_ptr_hash related issue.
Change-Id: Ifa35afa716333d3bf777558e15d7b0295abce72c
CRs-Fixed: 2566025
1. Add whunt_defconfig for whunt target. New Features can be
enabled in it to run related whunt test cases.
2. Enable CONFIG_BAND_6GHZ and CONFIG_WLAN_FEATURE_11AX
for whunt 6GHz test.
Change-Id: I63b84086cbf28e1fe3ab44bedb4977e73212af29
CRs-Fixed: 2550575
In the REO status callback function for RX tid delete if the
cache flush cmd is not sent successfully to REO, add the REO
descriptor back to the free desc list and defer the deletion
to the callback function.
Changes are made under MCL feature flag REO_DESC_DEFER_FREE.
Change-Id: Ib6c077ebf763ab8feb4c45c17ff37d03252fe093
CRs-Fixed: 2558052
Make tx resource hi/low threshold configurable through
config files and update hi threashold from 7.5% to 8%.
Change-Id: I2e52b7910caedf6e0af24242b79e1e9d42c6b85b
CRs-Fixed: 2548100
Increase value of AST skid limit for QCN7605 to avoid
peer create failure in FW in case of AST hash collision.
Change-Id: If931229d3b1458556a6e5c1023fb646b7274bedd
CRs-Fixed: 2517716
CONFIG_WLAN_TX_FLOW_CONTROL_LEGACY may be not set yes, if only
CONFIG_ROME_IF is set pci in external file. Because it is set yes
only when CONFIG_HIF_PCI set yes, however, CONFIG_HIF_PCI set yes
after it. For example, in file default_defconfig, CONFIG_HIF_PCI
set to yes on line 465, however line 311 checking CONFIG_HIF_PCI
to enable CONFIG_WLAN_TX_FLOW_CONTROL_LEGACY. So, line 314 can't
be called, CONFIG_WLAN_TX_FLOW_CONTROL_LEGACY is not set yes.
Change "ifeq ($(CONFIG_HIF_PCI), y)" to "ifeq ($(CONFIG_ROME_IF),pci)"
to avoid it.
Change-Id: Id324cdb99d6ee2d20bc00e698836c3ea4c5e0a05
CRs-Fixed: 2496110
The functions hdd_sysfs_create_adapter_root_obj() and
hdd_sysfs_destroy_adapter_root_obj() are declared but not
implemented if CONFIG_WLAN_SYSFS is not defined but
CONFIG_FEATURE_BECN_STATS is defined. Do not enable
CONFIG_FEATURE_BECN_STATS if CONFIG_WLAN_SYSFS is not defined.
Change-Id: Iccf0ea4519416266e43533cfd34c9a3085820bee
CRs-Fixed: 2549288
Implement metering stats quota to support ipa offload sta plus
sap wifi sharing use cases.
Change-Id: Ic9d5ad817ffb4d671a43f3f3aebb2d8cce293873
CRs-Fixed: 2517696
Make HTC_MAX_MSG_PER_BUNDLE_TX configurable through config files.
Also set HTC_MAX_MSG_PER_BUNDLE_TX to 48 for QCN7605 usb.
Change-Id: If6616251f536c35db087d5623a81c8a3f02da725
CRs-Fixed: 2544743
On HST, only enable LFR3
On Rome, only enable LFR2
This change is for auto platforms
Change-Id: I67bd5877060621e756668e925031fd134bc1a0c2
CRs-Fixed: 2544840
IBSS code is placed under "QCA_IBSS_SUPPORT" feature flag. IBSS code is
disabled and to enable it define "QCA_IBSS_SUPPORT" in default_defconfig.
ex. CONFIG_QCA_IBSS_SUPPORT := y
Change-Id: I08619dbed4661d9fc132adbcd1de2cd4470a2737
CRs-Fixed: 2542078
Enable direct buffer rx component in Kbuild since spectral scan gen3
based on this feature.
Change-Id: I8d44b35ca0d334917b3c052cc8ab4e47db34e4a1
CRs-Fixed: 2505676
Add support for WMI over QMI to reduce power consumption for
periodic stats report.
Change-Id: Iec725b357d9bcfa33029aedf7c568814499bc130
CRs-fixed: 2521826
Since CONFIG_ROME_IF is defined as "PCI" for lithium, PKTLOG_LEGACY is
getting enabled for lithium product as well. Disable PKTLOG_LEGACY for
lithium chipsets.
Change-Id: Ida237cd03e7006514120f9b2e37c7ad5c3897294
CRs-Fixed: 2532170
Insmod failed for:
wlan: Unknown symbol ol_cfg_set_tx_free_at_download (err 0)
wlan: Unknown symbol ol_txrx_soc_attach (err 0)
The 2 functions are only implemented on legacy platform like
Helium.
Fixed by copy config from default_defconfig to
qca6390_defconfig.
Change-Id: I5e8838c6653571507e6143c28ad6a0f7e7b228e9
CRs-Fixed: 2535963
Enable configurable dfs_pri_multiplier. The ETSI typ2 type3 radar
detection ratio is lower than expected(>80%) while channel loading is
high(>30%). The host improvement for this are:
1. Add configurable dfs_pri_multiplier, controlled by
DFS_PRI_MULTIPLIER. Default value 2, min 1, max 10.
2. Lower adrastea ETSI type 2/3/4 radar filter rssi_threshold,
controlled by DFS_OVERRIDE_RF_THRESHOLD, dfs log shows that
QCS405 target report RSSI range [18, 45] while radar power
is 3 dbm. By using default rssi_threshold 24 will reject
many radar pulses, which leads to low detection ratio.
3. Calculate deltapri for each searchpri based on dfs_pri_multiplier
in dfs_count_the_other_delay_elements(), check deltapri
between [1, dfs_pri_multiplier] * refpri and searchpri, if
the primargin is desired, mark it as matched pulse.
4. Pick lowpri as refpri for the radar filter with
rf_ignore_pri_window equals to 0 while DFS_PRI_MULTIPLIER is
enabled. Observed original findref logic has some problems
which selects refpri is bigger than lowpri, which leads to
the lowpri pulses pri_match are set to 0, and in this case,
radar was not detected. Example for the issue, assume
rf->rf_pulseid 34 (ETSI type 2) has 7 pulses with pri:
1489, 2978, 2978, 2978, 1489, 2978, 1489 us in this case,
highscore is 4 (2978), scoreindex is 5, refpri is 2978, which
leads to: index 0, 4, 6 pulses with pri_match 0 in
dfs_count_the_other_delay_elements(). The fix is to select
lowpri as refpri(1489 in this case).
Change-Id: I1f3ca3298c9ab1f1e2651ad6b4a0a4810f83f8a1
CRs-Fixed: 2522506
This is a propagation of qcacld-2.0 commit 98821c7dcf49d ("qcacld-2.0:
Add CONFIG_MULTI_IF_LOG to support multi if log"). Add CONFIG_MULTI_IF_LOG
to support multi if log by assigning the specific netlink protocol
when dual wlan cards are loaded.
Change-Id: I3ea9574899c23a8d2ebbdea5b958cc3ad7947fe5
CRs-Fixed: 2525483
Some target chipset support fw stats version 2, but we didn't enable
it in some configure file. Enable it in these configure files which
depend on chipset.
Change-Id: Ief8b87bdb466a1838e6a61928f0154868f0ff220
CRs-Fixed: 2524266
6 GHZ has introduced new set of frequency based APIs. Also there is
conditional usage of 6 GHZ band. Add configuration items for these.
Change-Id: I22703989ec7e6711af640f1f9d0afded46026b8a
CRs-Fixed: 2513098
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
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
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 64 bit HTT header instead of 32 bit &
Enable CONFIG_QCN7605_SUPPORT for Genoa SDIO
Enable CONFIG_PLD_SDIO_CNSS2 for Genoa SDIO
CRs-Fixed: 2520815
Change-Id: Ib94bb2f24db838dcec7ad037a2c9149c8183b0c8
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
MPTA helper and Coex configuration features are not included
after latest system compilation updating. Modify configure
file qcs40x.snoc.perf_defconfig to include them.
Change-Id: I8ecad6c84bd4ca2d8e1b69f0cea14b61b2545ca3
CRs-Fixed: 2511723
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
Enable IPA3 in qca6390 for sdxprairie platform. The IPA
over gsi and smmu are also enabled to make IPA workable.
Change-Id: I5ce6b22dcc4a6678deb6a5ac2d712fb82b6c5bf3
CRs-Fixed: 2496838
Disable fw log parsing feature config flag for Lithium
targets as firmware will no longer use WMI events for
sending logs.
With Lithium config flag disabled:
text data bss dec hex wlan.ko size
6767311 251817 2424616 9443744 9019a0 17096KB
With Lithium config flag enabled:
text data bss dec hex wlan.ko size
6699206 81613 2423872 9204691 8c73d3 16768KB
Change-Id: I536a20a0c0d7c4abcee775e3007d1749a21b648b
CRs-Fixed: 2504803
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
Do not enable unit-test framework by default for all Lithium
targets. Unit-test framework should only be enabled in debug builds.
Change-Id: I709d13ebb35302787377c8f36a8db0f04c2e794e
CRs-Fixed: 2498069
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 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 functions hdd_sysfs_create_adapter_root_obj() and
hdd_sysfs_destroy_adapter_root_obj() are declared but not
implemented if CONFIG_WLAN_SYSFS is not defined but
CONFIG_FEATURE_BECN_STATS is defined. Do not enable
CONFIG_FEATURE_BECN_STATS if CONFIG_WLAN_SYSFS is not defined.
The monitor mode should not be supported by sdxprairie arch.
Change-Id: I583af70dfdba8f14e4967c805672ecd8a17640d1
CRs-Fixed: 2481850
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
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
CONFIG_CHNL_MATRIX_RESTRICTION should not be defined by default.
CONFIG_CHNL_MATRIX_RESTRICTION should not be defined by HST.
Change-Id: I36154976c4e106d9910977b5990f796b889eaf82
CRs-Fixed: 2476488
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
Disable LFR2 in cld-3.2 mainline as roaming is offloaded
to firmware in LFR3. Also fix linker issues with lfr2 disabled.
Featurize LFR2 properly with adding correct header files
and bringing LFR2 only functions under WLAN_FEATURE_HOST_ROAM
compile time flag.
Change-Id: Iac81b693feaab503d371753a4d16cc3e70df2a87
CRs-Fixed: 2459786
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
Currently the export symbols are enabled in the driver
which is increasing the text section of driver.
Since driver does not need export symbols, disable it.
Change-Id: I463835107fc2a86ee6b4ab36edc75571f644499f
CRs-Fixed: 2462388
NAN is not supported on ROME platform, Disable
CONFIG_QCACLD_FEATURE_NAN in qca6174_defconfig.
Change-Id: I579e26c351bc95e7739a0853f4bfb467aafabbda
CRs-Fixed: 2446747
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
WiFi chip in SDXPRAIRIE supports DBS, and it is OK to start AP+AP in
DFS channel in DBS mode.
If CONFIG_FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE is defined, AP+AP in
DFS channel in DBS mode fails to start.
Remove CONFIG_FEATURE_WLAN_STA_AP_MODE_DFS_DISABLE definition to make
AP+AP in DFS channel in DBS mode work for SDXPRAIRIE.
Change-Id: I1947b480aca2acb3245350c73935f6a4f9af964f
CRs-Fixed: 2459215
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
To build multipel ko for different wlan targets, add genoa support
which will be used on AUTO platform.
Change-Id: I55e8591624ca4fe03bc06572cd2c46510eded366
CRs-Fixed: 2429383
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
Adaptive 11r feature that enables the AP to support FT-AKM
without configuring the FT-AKM in the network. The AP will
advertise non-FT akm with a vendor specific IE having Adaptive
11r bit set to 1 in the IE data. The AP also advertises the
MDE in beacon/probe response.
The STA should check the adaptive 11r capability if the AP
advertises MDE in beacon/probe and adaptive 11r capability in
vendor specific IE. If adaptive 11r capability is found,
STA should advertise the FT equivalent of the non-FT AKM.
Introdue a compile time flag WLAN_ADAPTIVE_11R_ENABLED to
enable/disable adaptive 11r support.
If the AP is adaptive 11r capable, set the is_adaptive_11r_ap
flag in bss descrtiptor. This flag will be sent in join request
and populated to pe_session. Also mark the CSR session as
adaptive 11r session based on this flag.
Add changes to check for the adaptive 11r service capability
advertised by firmware. If the host driver connects to adaptive
11r AP, enable RSO only if the firmware advertises adaptive
11r capability, else RSO should be disabled.
If the connection is adaptive 11r connection and if the adaptive
11r ini is enabled, set the adaptive_11r flag in
wmi_roam_11r_offload_tlv_param sent over the wmi command
WMI_ROAM_SCAN_MODE to the firmware. This will enable firmware to
filter the adaptive 11r AP from roam scan results.
Change-Id: If27a2393e3f4bb68942f5ebcec0135f57627f16b
CRs-Fixed: 2437988
Use WLAN_FEATURE_DP_BUS_BANDWIDTH to instead of MSM_PLATFORM for better
reading.
Change-Id: Iaed4f77b09b80ca8872a69c832491598db021232
CRs-Fixed: 2423299
Memory optimize for QCS403 platform, 1x1 chip. Reduce CE1 htt data
dest ring buffer from 512 to 256, reduce CE2 wmi dest ring buffer from
128 to 64, reduce CE9 & CE10 desg ring buffer from 512 to 64, disable
CE11 pktlog. Note: this change only affect specific WLAN build config for
extremely saving memory, for debug purose, there is another build
selecting default WLAN config for reference HW.
Change-Id: I868e74b09cdb11df3dccaa3f9e051da55724983d
CRs-Fixed: 2432631
Enable CONFIG_HOST_OPCLASS to include supported
operating class feature in host driver for genoa.
Change-Id: I44d6a3aa7c1c3372186532f7ff1f4353aba41350
CRs-Fixed: 2429681
Implement NON-QC platform TSF and TSF PLUS.
Implement gettime of PTP.
Implement TSF PLUS for SAP/GO
CRs-Fixed: 2399624
Change-Id: Id4f41a94256a8f035ae408c168c246569185c534
Fast path is not supported in ROME, remove CONFIG_WLAN_FASTPATH
from qca6174_defconfig
Change-Id: I3606abfc6f375852159a9d94345e165fbe4d06c6
CRs-Fixed: 2428550
Add support to get the various Coex data from the debugfs.
This commit adds the support to get the various coex data:
* COEX STATE
* COEX DPWB STATE
* COEX TDM STATE
* COEX IDRX STATE
* COEX ANTENNA SHARING STATE
The specific state information can be read via the debugfs.
Example to read the COEX STATE logging:
sm6150:/ # cat /sys/kernel/debug/wlan/mws_coex_state
vdev_id = 0
coex_scheme_bitmap = 0
active_conflict_count = 0
potential_conflict_count = 0
chavd_group0_bitmap = 0
chavd_group1_bitmap = 0
chavd_group2_bitmap = 0
chavd_group3_bitmap = 0
Change-Id: I92272ad7edf44df22730ac0fa992d876840ba632
CRs-Fixed: 2413943
Resolve ipa compilation issue for targets with config
ipa unified api enable and have kernel version 4.9.
Change-Id: Ibf7c51e32850024ceeb154f18a272044482af5ba
CRs-Fixed: 2422172
Disable BMI for Lithium architecture instead of
CNSS2 as CNSS2 also used for Rome architecture.
CRs-Fixed: 2416745
Change-Id: I2d646eac483ca44689445faa1b3bbf7b0b3a05bb
Monitor mode feature not required on SDXPRAIRIE, and disable
it to save memory.
Change-Id: I206ef4441cc64218cbdcea08aaa3ce584aa99bf0
CRs-Fixed: 2418590
Disable QCA_LL_TX_FLOW_CONTROL_V2 for QCS405, for SCC imbalance issue:
when there is a vdev running TCP RX traffic, another vdev is running
UDP/TCP TX, the UDP TX vdev will be paused/unpaused frequently and
interfered by the TCP RX vdev, which is sending few TCP ack frames and
it's never get paused, successfully sending TCP ack will trigger more
TCP data packets from peer which compete with the UDP TX vdev for channel
access. When disable QCA_LL_TX_FLOW_CONTROL_V2, no vdev could send
packets to firmware when the tx_desc is in shortage, which makes the
throughput between vdevs more balance.
Change-Id: I2c4a36dae9a81905e6b92a80db9703a7342742c8
CRs-Fixed: 2376550
Coex priority on some scenarios need to be updated.
Host will transfer the chosen coex config attributes
by WMI command.
Change-Id: Ic28ad6af462b305ec9aaf3027d76bce9ae6320b1
CRs-Fixed: 2410493
Due to PTA matser limitation, zigbee joining network success rate
is low while wlan is working. Wlan host driver need to configure
some parameters including Zigbee state and specific WLAN periods
to enhance PTA master. This mechanism is called MPTA helper.
Vendor subcommand QCA_NL80211_VENDOR_SUBCMD_MPTA_HELPER_CONFIG
is added to realize this feature. NL attributes
qca_mpta_helper_vendor_attr is used to deliver parameters from
uplayer to host driver.
Change-Id: Ic76130e4b92c88e8034f6a0c6c0447c9c6dee945
CRs-Fixed: 2407801
Do not use MCL in the macro. Use feature name to define macro.
This is for CONFIG_MCL_REGDB cleanup.
Change-Id: I12af832d81815277ec6014ff5047bf960f01534a
CRs-Fixed: 2411995
Remove flag CONFIG_PER_VDEV_TX_DESC_POOL.
Legacy per vdev flow control implementation under
CONFIG_PER_VDEV_TX_DESC_POOL was never used in cld3.0 driver.
For a Genoa a new per vdev flow control implementation for HL systems,
was added under the flag QCA_HL_NETDEV_FLOW_CONTROL.
Hence remove CONFIG_PER_VDEV_TX_DESC_POOL and replace it with
QCA_HL_NETDEV_FLOW_CONTROL or QCA_LL_LEGACY_TX_FLOW_CONTROL whereever
applicable.
Change-Id: Ibdf88e60cff7d3be46924ce7605f468781b5b856
CRs-Fixed: 2373790
Add the support to allow user space applications through cfg80211
vendor command to check if wlan firmware is alive or not.
Change-Id: I96bb16e01974f7689493577741a36e3832963996
CRs-Fixed: 2399508
Epping mode is currently borken in qcacld-3.2 codebase.
Fix epping mode for QCN7605 for USB and PCIe interface.
Change-Id: I12a11989d86f255e7ec61c98e328fbb755fc39ae
CRs-Fixed: 2400179
The CONVERGED_TDLS_ENABLE feature flag was originally introduced when
the TDLS feature was being componentized so that one could select
either the legacy implementation or the componentized implementation.
That componentization activity has concluded and the legacy
implementation no longer exists. To align with the current usage
switch to exclusively using the FEATURE_WLAN_TDLS feature flag since
that more accurately describes the code being protected.
Change-Id: I2cdb4c6ddba22c5b1d29e87403e5e1c87ce5cbfe
CRs-Fixed: 2395728
Currently 11d offload functionality is in reg_host_11d.c and
reg_host_11d.h files and are getting controlled with a
feature flag HOST_11D_SCAN.
HOST_11D_SCAN flag is to enable host 11d scan and 11d offload
feature should not be controlled with this flag.
Move 11d offload functionality to separate files
reg_offload_11d_scan.c and reg_offload_11d_scan.h and
compilation rule for these files.
Change-Id: I9bb73a5d995083cb746b76901a2db0d37a9b9827
CRs-Fixed: 2382525
As per new requirements to debug game latency related issues,
implement an iwpriv command which:
1) sends a bitmask to FW's Wireless Latency Manager module (WLM).
2) receives from WLM a measurement header along with measurement data.
3) converts both the header and data to a hexadecimal encoded string.
4) returns the hexadecimal encoded string to userspace
Change-Id: Ic79c4b757fe2d4e806306750250e3c102745c486
CRs-Fixed: 2388920
To reduce hard coding in the driver, add the following build config
options with defaults to the Kbuild:
* CONFIG_WLAN_MAX_PSOCS
* CONFIG_WLAN_MAX_PDEVS
* CONFIG_WLAN_MAX_VDEVS (supercedes CONFIG_SIR_MAX_SUPPORTED_BSS)
* CONFIG_WLAN_PSOC_MAX_VDEVS
* CONFIG_WLAN_PDEV_MAX_VDEVS
Change-Id: I14fce4bf34eb511214ad0b31be72336a2620b960
CRs-Fixed: 2393150
Flag WLAN_FEATURE_NAN_DATAPATH was added to protect NAN Datapath
related code, while WLAN_FEATURE_NAN_CONVERGENCE was added to
protect the converged code inside NAN Component. Since the
original NAN Discovery related code has now been moved inside
NAN component and NAN Datapath cannot exist without NAN Discovery,
keeping these flags separate doesn't make sense. Combine these
two flags with WLAN_FEATURE_NAN flag which is the original NAN
feature flag.
As a cleanup of NAN code, combine all NAN related flags with
WLAN_FEATURE_NAN flag.
Change-Id: If98ecaace17f8724e9c28325ef61e721f42e1d8f
CRs-Fixed: 2377375
When RX_PERFORMANCE is set, bind ol_rx_thread to perf CPU.
Do not update tdls stats and acquire rx_wakelock while
throughput is high, to avoid station drop packets caused
by slow process of ol_rx_data_cb(hdd_rx_packet_cbk).
Change-Id: I411f5ce67b04a70b194b0e8a7f8014b9c2c9bef7
CRs-Fixed: 2373936
Implement a WAR to address a BT coex issue, along with a private ioctl
which can be used to switch the WAR on or off dynamically.
Change-Id: I9d29c141106db479039789d67c45a455e96a118b
CRs-Fixed: 2383150
Revert change I4e2a8d7f98907c205cc6988d8af309e7a5515b89 since
it introduced a build failure on some platforms along with an
inappropriately copyright change.
Change-Id: I1450c69211347afaa79642d99dd153f99f349694
CRs-Fixed: 2386432
Regulatory component is getting updated to reduce the
code size based on different regulatory features. In this
process new regulatory files are getting added and some
of the files are getting removed.
To compile the newly added files update the required changes
in driver Kbuild file.
Some of the functins which are not supposed to be invoked from
outside the component directly, replace those function calls
with the appropriate wrapper functions.
Change-Id: I31a25268250b99f4f156c4f149966213746d999e
CRs-Fixed: 2373780
When RX_PERFORMANCE is set, bind ol_rx_thread to perf CPU.
Do not update tdls stats and acquire rx_wakelock while
throughput is high, to avoid station drop packets caused
by slow process of ol_rx_data_cb(hdd_rx_packet_cbk).
Change-Id: I4e2a8d7f98907c205cc6988d8af309e7a5515b89
CRs-Fixed: 2373936
In some platforms sysfs entry is not enabled, beacon reception stats
which is dependent on sysfs is not correctly protected under sysfs
definition this can lead to symbol missing error in these platforms.
WARNING: "hdd_sysfs_destroy_adapter_root_obj"
WARNING: "hdd_sysfs_create_adapter_root_obj"
Also when the CONFIG_MOBILE_ROUTER is disabled there is an
skip_acs_scan_timer leak. skip_acs_scan_timer is initialized in the
ACTIVE_DOMAIN, move it to the INIT_DOMAIN to resolve the timer leak.
Change-Id: I75fb97aa69d7f84ead4a8b693123162d9940d78c
CRs-Fixed: 2379766
On QCS405 platform, it's observed that cds_ol_rx_pkt_freeq is empty
while receiving UDP packets, driver try to allocate cds_ol_rx_pkt in
ol_rx_data_process but failed. This leads to lots of frames got dropped.
Raise cds_ol_rx_thread scheduler policy to SCHED_RR to compete with
CE tasklet scheduler speed. With this change, found cds_ol_rx_pkt_freeq
is not going to be empty while receiving UDP packets.
Change-Id: I4bee3d69c2754ec6be10a2b623b4ebe8b2c0859b
CRs-Fixed: 2373936
Enable FEATURE_WLAN_FT_IEEE8021X and FEATURE_WLAN_FT_PSK for Genoa as
targeted kernel version is 4.4.
Change-Id: I599be887b0021e7f53622c840dc76d5e3b47376a
CRs-Fixed: 2359886
Enable the unit test cases for qdf_types, recently added in
I7536a973141a6311662390e42da749f48239bef8.
Change-Id: I4264696d61443acf1bd0993f91de06119471b25f
CRs-Fixed: 2359296
Implementation of Host driver support to collect per Vdev Beacon
reception Stats from firmware and display the stats in sysfs.
"adb shell cat /sys/class/net/wlan0/beacon_stats"
vdev id: 0
Total Beacon Count: 255
Total Beacon Miss Count: 21
Beacon Miss Bit map [0x800] [0x10000000] [0x22000400] [0x100]
[0x84000000] [0x4030002] [0x5034000] [0x28084]
Change-Id: Iadd31042320f7815a6a6f4733f5393dba93b5b3e
CRs-Fixed: 2360913
Replace legacy string in vdevmgr with ext string.
Also adds new compile CMN_VDEV_MLME_CMPT_ENABLE macro
for VDEV MLME component.
Change-Id: I40ce0c2ee4d653d2f4ce68093e8ad1b2c78bece8
CRs-Fixed: 2361525
Add descriptor timestamp debug info in ol_tx_desc_t and
add APIs to set these values.
Change-Id: I686fccff4268811474630dbea8369fabe82d1517
CRs-Fixed: 2333654
Excessive logging detection was recently added via
If83c6dfccb9d191b02a3a7166b065c0a0704f969. While we would like to enable
this feature with a maximum number of logs per second of 100, there are
still a few outstanding problem areas, like dumping stats via IOCTL.
Instead enable the feature with a max of 500 to catch egregious
regressions, and plan to decrease this to 100 or less once the problem
areas are addressed.
Change-Id: I5b880c2354ec4828e1773eeb43de43a4649d4803
CRs-Fixed: 2340011
All the changes related to Shadow register V2 are added to
defconfig build for lithium platform.
Kickstart them by enabling CONFIG_SHADOW_V2 in config.
CRs-Fixed: 2343779
Change-Id: I07c93b5d43edc5010e501ab06cc7050a6e8c9c7f
Add SCALE_INCLUDES CONFIG parameter to compile HALhwio.h for QCA6390
as msmhwio.h file is now deprecated.
Change-Id: I4a883101a0ba15d2ab1efcd7bde312e22099a693
CRs-Fixed: 2332023
Featurize MCL only WMI APIs by compiling them as a separate source.
It enables profiles/configs to selectively compile the WMI APIs
based on whether the feature is required or not.
Featurize WMI APIs and TLVs that are specific to MCL -
- DSRC
- NAN
- P2P
- PMO
- roaming
- concurrency
- STA
- Generic MCL specific WMI (STA)
Change-Id: I3b005b8f60491c7d27cf221b7505116e1b9c1a38
CRs-Fixed: 2333916
Enable TSF for Adrastea arch on Vipertooth chip firstly and
expose TSF time mapping via file system
CRs-Fixed: 2320218
Change-Id: Ifda0d8035717ad21edb1a393ef32f1157ab59105
QCA6290 non-AX chipset is deprecated, so enable changes for QCA6290 AX
chipset by default.
Change-Id: I09b52dc58c1a79e36502671de94021d5940d0072
CRs-fixed: 2331182
wbuff is a module which maintains a pre-allocated pool of
skbs for each registered module and allocates skbs when
requested.
Change-Id: Ia4d13479d8a1342227a2ecbaf29cc7a89bc5e30b
CRs-Fixed: 2313446
Enable QDF lock stats debug feature in defconfig builds to detect
spin lock abuse in driver and fix it.
Change-Id: I264120d1ca722bac871173f2268737a943c2f5e0
CRs-Fixed: 2311639
Enable the mtrace logging by adding CONFIG_ENABLE_MTRACE
flag in Kbuild and defconfig file.
Change-Id: I832ab008dc4b7eb7e3124382ebe395cb01464a20
CRs-Fixed: 2311833
1) CONFIG_MPC_UT_FRAMEWORK should only be enabled for slub debug build
2) CONFIG_MPC_UT_FRAMEWORK should be protected under
gEnableUnitTestFramework INI setting.
CRs-Fixed: 2309562
Change-Id: I314ec928af2a350d518eb8f8dd62dbadee1746e8
P2P Listen offload is not a requirement for Genoa, hence featurize
P2P listen offload code to save memory foot-print for Genoa.
Change-Id: If50c784bb4cd6daac513a0654364e78cd636c9d3
CRs-Fixed: 2304554
Host provides INI way to control voltage configs, featurizing the
same for Genoa.
Change-Id: Ia58d84eb2e2a67ead189a51d2a0b98230513f8f9
CRs-Fixed: 2304125
Phase 1, after ftm componentization, we could now support to remove
the ftm related components when FTM is disable from the build
configuration.
Size changes: after removing the ftm related binaries, we could save
15KB from module size.
Change-Id: Ib363f1d6204b07947a46f32673c4f8ad6fb3dbd3
CRs-fixed: 2258441
Disable this feature for MOBILE_ROUTER product, since some MOBILE_ROUTER
platform will attach two wlan cards with separate wlan driver,
during second driver loading process, it will report a warning of
"cannot create duplicate filename" as node with same name has been
created after first driver was loaded.
Change-Id: I9e06439b3a6dacdf4eb5ae87898338ab1eeb8b16
CRs-Fixed: 2295391
Make changes to the Kbuild and config files to
enable and compile crypto common component
Change-Id: Ie16acd71d7794aa8ffaf6e48596bc6f46294a1df
CRs-Fixed: 2294394
The Driver Synchronization Core (DSC) is a set of synchronization
primitives for use by the driver's orchestration layer. It provides APIs
for ensuring safe state transitions (including bring up and tear down)
of major driver objects: a single driver, associated psocs, and their
associated vdevs.
APIs are divided into two categories: mutual exclusion of conflicting
transitions, and operation tracking, blocking, and waiting capabilities.
For part 6, enable the DSC component.
Change-Id: I0ac37f479a4a38e346fb91ad041a4f51ccc6c879
CRs-Fixed: 2290260
Separate out HL and LL Tx Data Path in different files
to compile out features cleanly.
Change-Id: I9033a5bc83bbc95ff00be3f46dc6eda65eab9e71
CRs-Fixed: 2287346
Propagation from prima to qcacld-3.0
Add support to disable channel list received with command
"SET_DISABLE_CHANNEL_LIST".
As part of this command, number of channels and list
of that many channels should be given. When SAP comes up, disable
the channels received in the command. If any of the interface
is up on any of the channel from the list, first disconnect
the interface and start the interface on the new channel.
Change-Id: I3c7810bfde78878a3e60570a13bf2741e1da599b
CRs-Fixed: 2205305
Max 3 BSS sessions and 10 peers are required in Genoa.
To support this, reduce SIR_MAX_SUPPORTED_BSS to 3 and
SIR_SAP_MAX_NUM_PEERS to 10.
Change-Id: Ic773b5b38193d446288321c2dfd740f6de57704e
CRs-Fixed: 2283825
Do not enable HL Flow Control config flags in Kbuild.
Instead depend on defconfig settings to enable/disable HL Flow
control flags.
Change-Id: I734c4cd26d056ce28ce064e8d353075ad22e39ee
CRs-Fixed: 2284686
Map all enter/exit log macros to enter/exit QDF TRACE macro
to provide option to compile out enter/exit logs if required.
Change-Id: I0c6cd633705e820fcfeb47e3f81a3522c9ef1974
CRs-Fixed: 2274850
Add support for action OUI extensions which can be used by station
to control mode of connection, connected AP's in-activity time and
Tx rate etc.,
Change-Id: Ie85e29c4b0ed7ac2815709d7a4e607c4ba46c6ca
CRs-Fixed: 2254502
Adds support in pld_usb.c for registering with CNSS driver.
pld_usb can now register directly with Linux USB stack or with
CNSS driver.
For QCN7605, registration is to be done with CNSS.
Change-Id: Ibf7e51679e1848bcd8e1acfa43c457f42ff40c0b
CRs-Fixed: 2269602
Add Genoa specific default target configurations for
offload configs, max tx pattern config and max sta
vdev config
Change-Id: Id682b1103d87021e207de335721805515db6a932
CRs-Fixed: 2258999
Enable features for genoa, create new file genoa.common
where we added list of common features and then include
this common file in all other genoa defconfig variants.
Change-Id: I50a1f4f95a96ce2e489002131b5cc9215c17a0ae
CRs-Fixed: 2272740
1) Add perf,debug config files for Genoa USB attach
2) Changes to sdio config files for Genoa HL data path flags
CRs-Fixed: 2269442
Change-Id: I720d7d2aa2167380e06251eab51629bd64117272
Currently define flags CONFIG_PLD_SDIO_CNSS and
CONFIG_PLD_PCIE_CNSS are inferred by examining
two different configuration options in kbuild.
In order to configure it from defconfig files
create new configuration parameters
CONFIG_PLD_SDIO_CNSS_FLAG and
CONFIG_PLD_PCIE_CNSS_FLAG. Enable PCIE_CNSS_FLAG
only in case of PCIE build.
Change-Id: Ia1038f4aaf25f949005ec41c405232ec9981c988
CRs-Fixed: 2267172
Add the compilation flags for TWT feature to Kbuild.
Based on the compilation flag, include the source
files for compilation and also include the header
files path.
Change-Id: I45991b3c9e49e2aa0ff51a2650fde69ea447bf15
CRs-Fixed: 2238302
SDIO transfer between host and target can have multiple methods.
Legacy methods use the mailbox dma transfer method. Newer IP shall
use the adma transfer method.
Add build option for the transfer method.
Change-Id: Ibf2e20869d93f631db25008a95bdebf03875fcc0
CRs-Fixed: 2252432
File wlan_hdd_cfg80211.c is bloated and adding support for
upcoming Android Packet Filter v3 is going to increase its
size even more.
Create a new source file for APF related HDD modules and a
header file for declaring the API's.
Change-Id: I2fb3d7e017f4befbad7aacab3575ae2b48e88a45
CRs-Fixed: 2189825
new INI gNumVdevs is added to allow number of VDEV support
for both Host and FW. Also Updated logic to calculate num_peers
and num_tids.
Change-Id: Ife5ff24e9594c8986913c06899ac5e41c83fc75c
CRs-Fixed: 2245506
Total 16 number of WoW filters are PoRed for Genoa.
Define CONFIG_PMO_WOW_FILTERS in genoa defconfigs with value 16.
Change-Id: Iba3d9875c954b32a3f22cfd639f4508beb36a5d5
CRs-Fixed: 2257033
Define separate configuration options for the various data path
debug features and use those options to set the associated
ccflags macros.
Change-Id: Ia410557bb9fa22731d83b46e61f394b14781d61f
CRs-Fixed: 2255915
Changes to enable/disable feature based on
profiles, debug mode, interface type and
architecture in Kbuild.
Change-Id: Ic9eb552c183143b4a2e0738c52b2e0c50db63a93
CRs-Fixed: 2200122