Commit Graph

539 Commits

Author SHA1 Message Date
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
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
Visweswara Tanuku
0b2e5e8e47 qcacld-3.0: Add config option for Thermal Throttling
Add driver config option for FW_THERMAL_THROTTLE_SUPPORT

Change-Id: I17fc8062cb18ed828578f97a1b24908f68e3a8cf
CRs-Fixed: 2419919
2019-03-28 16:50:16 -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
Dustin Brown
92acafe925 qcacld-3.0: Enable qdf_ptr_hash
Enable the recently added type, qdf_ptr_hash, added in
I7f5fc0c59ed220bde43044e7013b3c8573f1bf39.

Change-Id: I090adcb480e4dbce9934d17c82342c5b53cb8c9a
CRs-Fixed: 2421833
2019-03-26 17:16:33 -07:00
Dustin Brown
128e2d03bd qcacld-3.0: Enable qdf_slist
Enable the recently added type, qdf_slist, added in
I2959f34649a0d8e0b312d9d67c81de17753b9b6c.

Change-Id: I64ab3de7322846d2084f4f4bea01ab69bff52b32
CRs-Fixed: 2418502
2019-03-26 17:16:29 -07:00
Sravan Kumar Kairam
782f9c141c qcacld-3.0: Add feature flag to serialize reorder queue setup
Add feature flag to serialize update reorder queue setup wmi
command to firmware.

Change-Id: I91e3e2631d9a15500f61f5e449db71c047e0021a
CRs-Fixed: 2422772
2019-03-26 05:47:02 -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
Dustin Brown
05a0658f4a qcacld-3.0: Enable qdf_delayed_work
Enable the qdf_delayed_work type, recently added in
I76bc59dcd4222643d70c6a763e5bc4ee9f0a487c.

Change-Id: I6214879680f6251797d1db2986cf10d8f636314c
CRs-Fixed: 2419158
2019-03-24 19:26:47 -07:00
Dustin Brown
9c49a33a7b qcacld-3.0: Enable qdf_periodic_work
Enable the qdf_periodic_work type, recently added in
Iedf5486474fccadb35e146e6d289c27a7c1002d3.

Change-Id: I030db4e25684e4aad7b17fb7d6e41849c05d3857
CRs-Fixed: 2410006
2019-03-21 21:20:01 -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
Ashish Kumar Dhanotiya
f26de9c6bb qcacld-3.0: Enhancement of OS abstraction API's
The API's added in qal & qdf for abstracting the
OS calls are inlined and moved to the OS-specific
src directories.
Remove compilation of these specific files from qcacld Kbuild.

Change-Id: I0416ae721d4c86000672168da396966dd452363c
CRs-Fixed: 2418669
2019-03-20 22:09:13 -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
Harprit Chhabada
3946d611e9 qcacld-3.0: Define the scan related macros in Kbuild
Define the following scan related macros in the Kbuild.
This is part of CONFIG_MCL cleanup, where these macros
are removed from common.

MAX_SCAN_CACHE_SIZE 300
SCAN_MAX_REST_TIME 0
SCAN_MIN_REST_TIME 0
SCAN_BURST_DURATION 0
SCAN_PROBE_SPACING_TIME 0
SCAN_PROBE_DELAY 0
SCAN_MAX_SCAN_TIME 30000
SCAN_NETWORK_IDLE_TIMEOUT 0
HIDDEN_SSID_TIME (1*60*1000)
SCAN_CHAN_STATS_EVENT_ENAB (false)

Change-Id: I43e3a73e2b31c25ea688f913768cfd51d531bbbe
CRs-Fixed: 2412779
2019-03-13 19:41:12 -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
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
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
Jeff Johnson
7fe61d82e5 qcacld-3.0: Remove lim_get_session_info() usage
An ancestor of the current driver used mailboxes for communication
between SME and LIM, and serialization/deserialization routines were
used to encode and decode the mailbox messages. This mechanism is no
longer in use, but there are remnants still present.

One such remnant is the use of lim_get_session_info(). This API is
designed to extract the Session ID and the Transaction ID from a
serialized message. However this API is actually being used on
non-serialized messages, and as a result of struct padding by the
compiler it would never return a correct Transaction ID. Since we
should now never be sending serialized messages, remove the use of
lim_get_session_info() and instead directly access the elements in the
underlying structs.

Change-Id: Iadb548c36396226b14b904d3bd952c5b4260ff3b
CRs-Fixed: 2402359
2019-02-23 07:05:03 -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
Jeff Johnson
e77641ea77 qcacld-3.0: Fix DHCP_SERVER_OFFLOAD featurization
When the DHCP_SERVER_OFFLOAD feature is enabled the driver does not
build, so address the build issues.

Change-Id: I42103afd91c4bed2d04f22bdb6159e286ff12fa0
CRs-Fixed: 2399937
2019-02-18 20:50:17 -08:00
Jeff Johnson
74c6bb25ba qcacld-3.0: Conditionally build TDLS component
Currently the TDLS component code is unconditionally built which will
bloat images where TDLS is not required. Fix this by only building the
TDLS component when the TDLS feature is enabled.

Change-Id: I7496b8f07ed495b00e62fc3cf50a96e1829d9341
CRs-Fixed: 2399966
2019-02-16 21:28:39 -08:00
Dustin Brown
dc789027bf qcacld-3.0: Add qdf_status.c to the Kbuild
Change Iaa2efa5f662be014a61a8490c3fab411ec0f2054 added qdf_status.c.
Include this file in the Kbuild.

Change-Id: I263924b4ec82d2e3137f659144251b4a43e5d30f
CRs-Fixed: 2395179
2019-02-12 13:09:46 -08:00
Jeff Johnson
181cca70eb Revert "qcacld-3.0: Enable crypto convergence set key and IE support"
This reverts commit Icf1a1f8150d8503f5527cf23b48dddfd4e9a5439.
Feature is causing WEP regression.

Change-Id: If638c88806d1cb93e92c61b516df464b1f62d678
CRs-Fixed: 2396619
2019-02-12 03:28:10 -08:00
Dustin Brown
6412d1f9cc qcacld-3.0: Move hdd_dsc to osif/sync
Move the contents of hdd_dsc to the new files added in osif/sync as part
of Ica94d32028d10d344294d6cc12d91a06efe1ab6c.

Change-Id: I556e9d2833edd2bd26266496b6000347649c5fbe
CRs-Fixed: 2396512
2019-02-11 23:58:12 -08:00
Dustin Brown
a17cacefdd qcacld-3.0: Add file structure for osif_sync
To better align with current organizational recommendations and allow
API use by os_if/nan, begin moving hdd_*_sync APIs to os_if. In step
one, create the new osif_sync file structure.

Change-Id: Ica94d32028d10d344294d6cc12d91a06efe1ab6c
CRs-Fixed: 2396511
2019-02-11 23:58:05 -08:00
Kiran Kumar Lokere
fa9c89344d qcacld-3.0: Enable crypto convergence set key and IE support
Enable crypto convergence set key and IE support features

Change-Id: Icf1a1f8150d8503f5527cf23b48dddfd4e9a5439
CRs-Fixed: 2358797
2019-02-09 09:45:15 -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
Wu Gao
0bdcbed515 qcacld-3.0: sta interface supports to tx p2p action frames
Required sta interface to support to tx p2p action frames, this is
part of customer requirement.

Change-Id: I1ebebce4d70dcba34427bb2276cd3e1cc23c2bd8
CRs-Fixed: 2388414
2019-01-29 14:31:45 -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
Wu Gao
9a94b4e7c6 qcacld-3.0: Cleanup legacy cfg related files
Since all wni cfg is refactored based on legacy new cfg framework, no
legacy cfg files is needed now. Cleanup related files in this change.

Change-Id: If46ae4c59f1010a655aa65e3502fc0c660e33cdc
CRs-Fixed: 2383387
2019-01-29 09:57:44 -08:00
Jianmin Zhu
ca0baaad8a qcacld-3.0: Remove legacy code of CONFIG_SERIALIZATION_V1 part
Remove g_self_recovery_stats and WE_GET_RECOVERY_STAT
Remove configs of CONFIG_SERIALIZATION_V1 part

Change-Id: I82e72f22215b8794517410e0b8892b5adadcf457
CRs-Fixed: 2386839
2019-01-28 01:57:02 -08:00
Abhishek Singh
d5cf22dffb qcacld-3.0: Change to include PDEV MLME component object
Changes to include PDEV MLME component object for VDEV SM.

Change-Id: I1f89e9bf5a4d5b17be7ec3c4fc52a5f8fe8f1862
CRs-Fixed: 2381858
2019-01-24 20:14:33 -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
Ashish Kumar Dhanotiya
aa9fdbb777 qcacld-3.0: Add support for new regulatory files
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
2019-01-23 15:14:09 -08:00
hangtian
0ec24dc0ab 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: I4e2a8d7f98907c205cc6988d8af309e7a5515b89
CRs-Fixed: 2373936
2019-01-23 06:37:20 -08:00
hangtian
cd2b2860b9 qcacld-3.0: Set cds_ol_rx_thread schedule policy to SCHED_RR
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
2019-01-18 21:28:30 -08:00
Harprit Chhabada
253e36ad50 qcacld-3.0: Modify Kbuild to add new beacon header file
In wmi new file, wmi_unified_bcn_api.c is added.
Add this file in Kbuild.

Change-Id: I4fdbf041b53b5f1606d324714f01088742a9307f
CRs-Fixed: 2366772
2018-12-26 20:27:24 -08:00
Rachit Kankane
2a3fd3981a qcacld-3.0: Enable FT_IEEE8021X and FT_PSK for Genoa
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
2018-12-26 07:47:30 -08:00
Ajit Pal Singh
25caf99381 qcacld-3.0: Enable QCN7605 support in Genoa USB config files
Enable QCN7605 support in Genoa USB config files

Change-Id: I540ab3aeaee40841696a26612c2d69f151946113
CRs-Fixed: 2369619
2018-12-26 01:21:09 -08:00
chenguo
ac840e5400 qcacld-3.0: Enable AC based flow control by default
Enable QCA_AC_BASED_FLOW_CONTROL in Kbuild file for for all
lithium platform, including HST.

CRs-Fixed: 2371232
Change-Id: I7e755d6211106f4a5c8e9d87905f6425ece4c5c3
2018-12-22 05:23:16 -08:00
Kiran Kumar Lokere
325de9f293 qcacld-3.0: Disable the WLAN_CONV_CRYPTO_IE_SUPPORT feature
Disable the WLAN_CONV_CRYPTO_IE_SUPPORT feature.

Change-Id: I0aa241ab8b6879809ac4669585cdfca6c23ab9ef
CRs-Fixed: 2369342
2018-12-19 04:56:49 -08:00