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