Commit Graph

146 Commits

Author SHA1 Message Date
Varun Reddy Yeturu
cbaa004c02 qcacld-3.0: Add compile time flag RX_DESC_MULTI_PAGE_ALLOC
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
2019-05-23 20:34:56 -07:00
Frank Liu
7314020cf4 qcacld-3.0: Add genoa defconfig for multiple ko support
To build multipel ko for different wlan targets, add genoa support
which will be used on AUTO platform.

Change-Id: I55e8591624ca4fe03bc06572cd2c46510eded366
CRs-Fixed: 2429383
2019-05-23 09:30:41 -07:00
Sravan Kumar Kairam
dbb89a7c2f qcacld-3.0: Enable SMMU S1 flag for Kona
Enable IPA SMMU S1 translation feature flag for
kona target.

Change-Id: Ia16867dd730c658b043e58ac832a05d6abe58f05
CRs-Fixed: 2457687
2019-05-22 14:15:11 -07:00
Liangwei Dong
e6cbd79d28 qcacld-3.0: Enable CONFIG_HOST_OPCLASS
Enable CONFIG_HOST_OPCLASS for Auto platform

Change-Id: Ibfcd989c54f15eab770ecd3b151ef7e3b3d58b82
CRs-Fixed: 2450569
2019-05-21 13:14:22 -07:00
Rakshith Suresh Patkar
03eee08aad qcacld-3.0: Enable SMMU S1 TRANSLATION for LITO
Enable SMMU S1 TRANSLATION flag for LITO

Change-Id: If4bcdbbb5ac4036588383c83338a6e1fe4760272
CRs-Fixed: 2451546
2019-05-14 03:51:52 -07:00
Abhinav Kumar
dbbfd2c3ff qcacld-3.0: Support asynchronous beacon reporting feature
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
2019-05-10 19:06:56 -07:00
Rachit Kankane
3621f7b32a qcacld-3.0: Enable WLAN_FEATURE_PACKET_FILTERING
Enable WLAN_FEATURE_PACKET_FILTERING for Genoa

Change-Id: I7d438e42015217585e6145d52ec8c3469e149680
CRs-Fixed: 2449886
2019-05-10 01:34:32 -07:00
Jianmin Zhu
179d48eacf qcacld-3.0: Enable vdev SM for Rome and HST for AUTO platform
CONFIG_CMN_VDEV_MLME_SM := y

Change-Id: I52d0c9ec8bbff31abce0b092a96fdcd36bfa5245
CRs-Fixed: 2448794
2019-05-08 04:46:48 -07:00
Pragaspathi Thilagaraj
1f3f99fd1f qcacld-3.0: Add support for adaptive 11r
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
2019-05-02 08:15:49 -07:00
Nirav Shah
fd307befce qcacld-3.0: Enable CONFIG_CP_STATS for Genoa
Enable CONFIG_CP_STATS for Genoa.

Change-Id: Ie742546ca1e0eeb83aa5f4f53c46b275808ad51b
CRs-Fixed: 2442590
2019-05-01 10:18:19 -07:00
Lin Bai
3da65d478c qcacld-3.0: Disable DP_TRACE for SDXPRAIRIE perf build
For perf build on SDXPRAIRIE, no requirement for DP_TRACE feature.

Change-Id: I170e21e22614d926a5e48b99d64c218f30776ad1
CRs-Fixed: 2418590
2019-04-24 02:28:26 -07:00
Tiger Yu
8b119e9b61 qcacld-3.0: Use WLAN_FEATURE_DP_BUS_BANDWIDTH instead of MSM_PLATFORM
Use WLAN_FEATURE_DP_BUS_BANDWIDTH to instead of MSM_PLATFORM for better
reading.

Change-Id: Iaed4f77b09b80ca8872a69c832491598db021232
CRs-Fixed: 2423299
2019-04-18 02:33:09 -07:00
Ajit Pal Singh
17634e1e48 qcacld-3.0: Add config to enable/disable RX PN_check offload
Add config to enable/disable RX PN_check offload.
Offload PN check to FW for QCN7605 HL data path.

Change-Id: Ieab4442d73957a9e0314d637a513452616f7a48c
CRs-Fixed: 2433079
2019-04-18 00:28:12 -07:00
Sandeep Puligilla
2c8d6217c9 qcacld-3.0: Enable VDEV manager on genoa platform
Enable VDEV manager on genoa platform.

Change-Id: Ifd037902c7b47ce17edfec5544b74108e3f54a13
CRs-Fixed: 2433803
2019-04-16 02:50:11 -07:00
hangtian
1c37fb9ccc qcacld-3.0: Memory optimize for QCS403 platform
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
2019-04-12 05:20:10 -07:00
nakul kachhwaha
8b6c2315e3 qcacld-3.0: Enable CONFIG_HOST_OPCLASS for genoa
Enable CONFIG_HOST_OPCLASS to include supported
operating class feature in host driver for genoa.

Change-Id: I44d6a3aa7c1c3372186532f7ff1f4353aba41350
CRs-Fixed: 2429681
2019-04-12 02:56:22 -07:00
Subrat Dash
5f36fbef77 qcacld-3.0: Add gettime of PTP for NON-QC platform
Implement NON-QC platform TSF and TSF PLUS.
Implement gettime of PTP.
Implement TSF PLUS for SAP/GO

CRs-Fixed: 2399624
Change-Id: Id4f41a94256a8f035ae408c168c246569185c534
2019-04-09 11:56:39 -07:00
donglian
79202c8ab6 qcacld-3.0: Disable fast path in ROME architecture
Fast path is not supported in ROME, remove CONFIG_WLAN_FASTPATH
from qca6174_defconfig

Change-Id: I3606abfc6f375852159a9d94345e165fbe4d06c6
CRs-Fixed: 2428550
2019-04-09 01:53:17 -07:00
Rakshith Suresh Patkar
3c0d283987 qcacld-3.0: Enable SMMU S1 TRANSLATION for TRINKET
Enable SMMU S1 TRANSLATION flag for TRINKET

Change-Id: I95b42e712d2db7805b8e38ccc67acb56ad6f24e0
CRs-Fixed: 2423359
2019-04-04 01:52:18 -07:00
Mohit Khanna
cf139fe9b6 qcacld-3.0: Enable RX_DESC_DEBUG_CHECK debug flag
Enable the flag in kbuild file for SLUB builds.

Change-Id: I4fbf3b775258567d7f9651b52b9f61401fb3a270
CRs-Fixed: 2390775
2019-04-02 11:17:24 -07:00
hangtian
c847946ced qcacld-3.0: Add qcs40x.snoc.perf_defconfig
Add qcs40x.snoc.perf_defconfig. Enable CONFIG_FEATURE_TSO_DEBUG by
default, avoid spinlock bad magic issue(without spin_lock_init() for
tso_stats_lock).

Change-Id: If2fb00bd2298aa6f43418b3e4694aa995887b4f3
CRs-Fixed: 2424181
2019-03-31 20:56:47 -07:00
jiad
bce4f0f520 qcacld-3.0: Enable SMMU S1 for sdxprairie
Enable ENABLE_SMMU_S1_TRANSLATION option for sdxprairie.

Change-Id: I3eedee61bce6fbe2442fd15b282c054b5dd935d2
CRs-Fixed: 2425028
2019-03-30 04:53:12 -07:00
Arun Kumar Khandavalli
deda5a812c qcacld-3.0: Add support to improve coex logging
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
2019-03-29 00:47:53 -07:00
Nirav Shah
6f26133120 qcacld-3.0: Disable sw index inline update for Genoa PCIe
Disable sw index inline update for Genoa PCIe.

Change-Id: I80c6947604dbe61cc68f61a2daefb29e124e0663
CRs-Fixed: 2424876
2019-03-28 09:04:34 -07:00
Sravan Kumar Kairam
7efc0136ea qcacld-3.0: Resolve ipa compilation issue
Resolve ipa compilation issue for targets with config
ipa unified api enable and have kernel version 4.9.

Change-Id: Ibf7c51e32850024ceeb154f18a272044482af5ba
CRs-Fixed: 2422172
2019-03-25 14:24:21 -07:00
Jiani Liu
00d2dc0cb8 qcacld-3.0: Disable coex priorities configuration module for mainline
Disable coex priorities configuration module by default for mainline

Change-Id: I1b640b4fc53b654913ef8fd2a13171f284ce692f
CRs-Fixed: 2410493
2019-03-22 03:08:47 -07:00
Nirav Shah
cd8405ca09 qcacld-3.0: Disable BMI for Lithium architecture
Disable BMI for Lithium architecture instead of
CNSS2 as CNSS2 also used for Rome architecture.

CRs-Fixed: 2416745
Change-Id: I2d646eac483ca44689445faa1b3bbf7b0b3a05bb
2019-03-21 23:04:29 -07:00
Ajit Pal Singh
1d28d35436 qcacld-3.0: Disable packet log for Genoa USB
Disable packet log for Genoa USB

Change-Id: Ie7621540659aa6eabb558042992c2711f26e0134
CRs-Fixed: 2419936
2019-03-21 05:11:45 -07:00
Lin Bai
de6c5537d3 qcacld-3.0: Disable monitor mode for SDXPRAIRIE
Monitor mode feature not required on SDXPRAIRIE, and disable
it to save memory.

Change-Id: I206ef4441cc64218cbdcea08aaa3ce584aa99bf0
CRs-Fixed: 2418590
2019-03-20 22:09:18 -07:00
hangtian
9a05f43a18 qcacld-3.0: Disable QCA_LL_TX_FLOW_CONTROL_V2 for QCS405
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
2019-03-19 02:24:18 -07:00
Jiani Liu
a5f17228c1 qcacld-3.0: Set Coex priorities among WLAN/BT/ZB
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
2019-03-18 13:07:08 -07:00
stonez
2d68648140 qcacld-3.0: Add MPTA helper support
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
2019-03-15 07:46:59 -07:00
bings
2f0f9f056e qcacld-3.0: Replace CONFIG_MCL_REGDB with CONFIG_REG_CLIENT
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
2019-03-12 00:56:11 -07:00
Ajit Pal Singh
f9a4a38bcf qcacld-3.0: Remove flag CONFIG_PER_VDEV_TX_DESC_POOL
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
2019-03-11 11:14:27 -07:00
Sravan Kumar Kairam
5c802f74f7 qcacld-3.0: Enable IPA offload for lithium dp
In default config file enable IPA offload feature for
lithium dp.

Change-Id: Id51d424bcb685be9387f800133af11eaf85b9cb9
CRs-Fixed: 2377094
2019-03-09 04:06:50 -08:00
Krunal Soni
888d401f27 qcacld-3.0: Add ENABLE_VERBOSE_DEBUG macro to Kbuild
Add ENABLE_VERBOSE_DEBUG macro to Kbuild to trigger DP/HAL/HIF
excessive logging controlling mechanism.

CRs-fixed: 2405032
Change-Id: I2af5f9bf39540f952138aa8308401a387fe62bf1
2019-03-07 05:15:15 -08:00
Sandeep Puligilla
feba0b1d96 qcacld-3.0: Enable VDEV manager module
Modify configuration file to enable the VDEV
manager functionality.

Change-Id: I97787eb2a94db87b33fd0eb33146cca783e8a04d
CRs-Fixed: 2402489
2019-03-06 10:59:46 -08:00
Ajit Pal Singh
a70e315601 qcacld-3.0: Add config option for CFG_TGT_NUM_MSDU_DESC
Add driver config option for CFG_TGT_NUM_MSDU_DESC

Change-Id: I9c738de779d03819e6920e9d3e260ec3d1fbd524
CRs-Fixed: 2390958
2019-03-02 13:31:05 -08:00
Qun Zhang
ef65562bcd qcacld-3.0: Support firmware state check through cfg80211 vendor cmd
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
2019-03-01 09:23:49 -08:00
Nirav Shah
6aeecf9cc4 qcacld-3.0: Fix epping mode for QCN7605
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
2019-02-21 01:46:24 -08:00
Jeff Johnson
2de587987d qcacld-3.0: Replace CONVERGED_TDLS_ENABLE feature flag
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
2019-02-20 09:09:34 -08:00
Ashish Kumar Dhanotiya
ddeb4d7b6d qcacld-3.0: Move 11d offload to separate file
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
2019-02-07 07:53:26 -08:00
Krunal Soni
f9ba53dbbc qcacld-3.0: Implement iwpriv cmd to get WLM stats from FW
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
2019-02-05 23:44:10 -08:00
Dustin Brown
a19834ba8b qcacld-3.0: Add max vdev/pdev/psoc build config options
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
2019-02-04 23:21:01 -08:00
Nachiket Kukade
2fb1fdb1ac qcacld-3.0: Combine all NAN related flags with WLAN_FEATURE_NAN
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
2019-02-04 10:44:30 -08:00
Sandeep Puligilla
1952217001 qcacld-3.0: Enable MBSSID feature
Enable MBSSID feature through compilation flag.

Change-Id: If8cdfad35bb55d201d4b90f78f57406e404edbf6
CRs-Fixed: 2382918
2019-01-30 14:31:24 -08:00
Yu Wang
6c4599c854 qcacld-3.0: add support for multi ko
To build multiple ko for different wlan targets

CRs-Fixed: 2381715
Change-Id: I50593edd316df33486d208abdb2d1019403a53ae
2019-01-30 00:02:51 -08:00
hangtian
2b9856fdde qcacld-3.0: Bind ol_rx_thread to perf CPU
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
2019-01-29 14:31:39 -08:00
Jeff Johnson
0187c628e3 qcacld-3.0: Implement temporary WAR for BT coex issue
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
2019-01-24 12:30:04 -08:00
Jeff Johnson
ba19429916 Revert "qcacld-3.0: Bind ol_rx_thread to perf CPU"
Revert change I4e2a8d7f98907c205cc6988d8af309e7a5515b89 since
it introduced a build failure on some platforms along with an
inappropriately copyright change.

Change-Id: I1450c69211347afaa79642d99dd153f99f349694
CRs-Fixed: 2386432
2019-01-24 12:30:00 -08:00