Commit Graph

587 Commits

Author SHA1 Message Date
Srinivas Girigowda
3beefb408c qcacld-3.0: Replace IEEE80211_PMKID_LEN with PMKID_LEN
Replace IEEE80211_PMKID_LEN with PMKID_LEN which is defined
in wlan_cmn_ieee80211.h.

Change-Id: I0b59d4cbd6522e799e66b3b674b5a0cfa53b039a
CRs-Fixed: 2395980
2019-02-26 21:18:00 -08:00
Srinivas Girigowda
59053152f0 qcacld-3.0: Remove obsolete code from CDS
Remove obsolete code from CDS.

Change-Id: I4f4375ed52616eb238697f5edcf0bf099ceb32ba
CRs-Fixed: 2395980
2019-02-23 16:02:46 -08:00
Srinivas Girigowda
9cd6c340b0 qcacld-3.0: Replace IEEE80211_IS_BROADCAST with QDF_IS_ADDR_BROADCAST
Replace IEEE80211_IS_BROADCAST with QDF_IS_ADDR_BROADCAST.

Change-Id: I199797ea402ee68dd0addf6698aa5ccd0ddc8f97
CRs-Fixed: 2395998
2019-02-23 16:02:36 -08:00
hangtian
0aa4b545c5 qcacld-3.0: Revert set ol_rx_thread to SCHED_RR
Revert set ol_rx_thread to SCHED_RR, SCHED_RR could lead to
hdd_ctx->bus_bw_work delayed for long time, and throughput level is not
updated while running traffic, finally hdd_rx_packet_cbk drop packets(rx
path slow).

Change-Id: Idc48c4ff4f38e25124121f814492ea116555cd32
CRs-Fixed: 2398511
2019-02-22 01:27:43 -08:00
Srinivas Girigowda
af90ea7056 qcacld-3.0: Remove obsolete commented code
Remove obsolete commented code.

Change-Id: I80c62de2b82301f107fcb30f5909a6aa165a2e59
CRs-Fixed: 2395203
2019-02-09 15:48:00 -08:00
Wu Gao
2f2cddb2ea qcacld-3.0: Cleanup unused WNI_CFG_DNLD_REQ
WNI CFG needn't to download since all wni cfg refactored based on new
cfg framework, so remove WNI_CFG_DNLD_REQ.

Change-Id: Icd85b7797fcbc41debe55edb6b1f68478797d726
CRs-Fixed: 2387589
2019-01-30 14:31:19 -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
Harprit Chhabada
31e3e168b3 qcacld-3.0: clean up max scan count CFG/INI
Clean up CFG_MAX_SCAN_COUNT CFG CFG item.
Remove ini for max_scan_count. Use WLAN_MAX_ACTIVE_SCANS_ALLOWED
to initialize max_scan_count and send to firmware.

Change-Id: I52e07b63a82297d30f2532bc5a8e05004877b141
CRs-Fixed: 2382308
2019-01-29 09:57:48 -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
Yuanyuan Liu
755671ed02 qcacld-3.0: use fixed length for array
Fix error of "variable length array ‘duration’ is used ". Use fixed
length for array.

CRs-Fixed: 2383040
Change-Id: I4aee165cd626e56592c18b2211dc7c81e97d4cd4
2019-01-22 23:41:45 -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
hangtian
127c953c7f qcacld-3.0: Use qdf_mem_zero for zero initialization
Use qdf_mem_zero for zero initialization.

Change-Id: Ic2b8d907623cf67a4569aaf01398c1b3a2bff707
CRs-Fixed: 2376644
2019-01-14 08:38:03 -08:00
Wu Gao
9d117fbfc2 qcacld-3.0: Refactor three INI in PMO
Based on cfg framework, refactor below INI:
 - CFG_RA_RATE_LIMIT_INTERVAL_NAME
 - CFG_ACTIVE_UC_APF_MODE_NAME
 - CFG_ACTIVE_MC_BC_APF_MODE_NAME

Change-Id: I3b1ee6254de158ad6408dc8c61e83be571e180af
CRs-Fixed: 2379743
2019-01-13 18:45:51 -08:00
Jeff Johnson
783ef375c5 qcacld-3.0: Remove CDS_SCHED_THREAD_HEART_BEAT
Macro CDS_SCHED_THREAD_HEART_BEAT is unused, so remove it.

Change-Id: I28a2aa8117e5f9bacd20aadc086103f40585e922
CRs-Fixed: 2374848
2019-01-07 08:46:30 -08:00
Alok Kumar
ac74177daa qcacld-3.0: Avoid access of deleted peer during RX thread close
During SSR case in wlan_hdd_stop_modules(), ol_txrx_pdev_pre_detach()
cleanup the peer forcibly. Later RX Thread is getting closed as part
of cds_sched_close(). So chances of accessing deleted peer is there.

Shutdown RX thread before doing ol_txrx_pdev_pre_detach() to avoid
the chances of accessing deleted peer.

Change-Id: Iae27262396d8245eeb7a9b39cb678fad14815260
CRs-Fixed: 2349994
2019-01-02 12:04:27 -08:00
Jeff Johnson
a50ab22d4a qcacld-3.0: Remove cds_crypto_init()/deinit()
Functions cds_crypto_init() & cds_crypto_deinit() are unused,
so remove them.

Change-Id: If33ee8874b65a5b3e7d5f853b943d12bb1bbb84f
CRs-Fixed: 2371098
2018-12-21 15:10:10 -08:00
Jeff Johnson
6f3506eecc qcacld-3.0: Remove cds_upper_to_lower()
Utility function cds_upper_to_lower() is unused, so remove it.

Change-Id: I27464377fd10f0d3c4172ef4e3fe59ff6310aa61
CRs-Fixed: 2370775
2018-12-20 09:13:32 -08:00
Jeff Johnson
1fca7b0507 qcacld-3.0: Remove cds_get_monotonic_boottime()
Utility function cds_get_monotonic_boottime() is unused, so remove it.

Change-Id: I85ab8be34b2fde61f710384acb2b727456adf760
CRs-Fixed: 2370774
2018-12-20 09:13:32 -08:00
lifeng
0b46ae503e qcacld-3.0: Refine mlme reg configurations
Refine mlme reg configurations based on converged cfg component.
Remove related legacy codes.

Change-Id: I524b29d2d03e60111fa1759d11e32236bb3aa3fa
CRs-Fixed: 2357961
2018-12-19 04:56:44 -08:00
Mohit Khanna
8141877926 qcacld-3.0: changes for GRO for TCP packets
Add support for GRO functionality for TCP packets.

CRs-Fixed: 2346997
Change-Id: I9d38c926af4114e90427f5b5c632cd02b9eb3160
2018-12-18 00:07:46 -08:00
Jeff Johnson
73aa097a88 qcacld-3.0: Remove unused cds_utils macro IV_SIZE_AES_128
Macro IV_SIZE_AES_128 in cds_utils.c is unused, so remove it.

Change-Id: Ibb757b22168848d959b5fe8974efac45d353fad1
CRs-Fixed: 2366961
2018-12-17 13:12:01 -08:00
Jeff Johnson
51a8052b29 qcacld-3.0: Replace cds_rand_get_bytes()
The functionality provided by cds_rand_get_bytes() replicates
functionality provided by qdf_get_random_bytes(), so use
qdf_get_random_bytes().

Change-Id: I0b855556c9a9861c7067dfadaf0b8a4cdaf8709e
CRs-Fixed: 2366960
2018-12-17 13:12:01 -08:00
Jeff Johnson
b77c0e3843 qcacld-3.0: Use MAX_PMKID_LEN in cds_fils_connection_info
Currently in cds_config.h the macro MAX_PMKID_LEN is not used, and the
pmkid field in struct cds_fils_connection_info uses the "magic number"
16, so replace the magic number with the macro.

Change-Id: I11e7f55d43e5cdd3f222f54434a33c94654f2384
CRs-Fixed: 2366959
2018-12-17 13:12:01 -08:00
Bala Venkatesh
cd9decb3f0 qcacld-3.0: Modify the MAX_TX_PWR_CAP to 30dbm
Modify the max tx power value form 22db to 30db
to cover regulatory power requirements.

Change-Id: Id24ed354ed364037ba0ff5dea9de9810fb255962
CRs-fixed: 2362060
2018-12-13 23:21:29 -08:00
Jeff Johnson
6606fe5561 qcacld-3.0: Remove unused DP CFG from struct cds_config_info
Previously change If7ad0e02c65e04ea13a308e680c9ba3b3d84ae25,
("qcacld-3.0: Add legacy DP CFG items and APIs") relocated support for
some datapath INI items from HDD to the legacy data path. As part of
this change some fields in struct cds_config_info are no longer being
used, so remove those fields.

Change-Id: I2ebcb5bd3964af7847b55d3d7300efd4823dc198
CRs-Fixed: 2363230
2018-12-10 02:07:01 -08:00
Jeff Johnson
10c50c4f99 qcacld-3.0: Remove CDS fw_state handling
Previous change I8331367dd41dd0cedfa65c63f1bb3ffcb535e1c9
("qcacld-3.0: Call icnss API to check if WLAN FW is down") relocated
the source of firmware status from the wlan driver to the platform
driver. The legacy fw_state handling in CDS is no longer used, so
remove it.

Change-Id: Id8de0bd9441ecf7bb7e5931c503e16b62cbcfbf8
CRs-Fixed: 2363229
2018-12-10 02:06:57 -08:00
Jeff Johnson
56bc912552 qcacld-3.0: Remove struct cds_sme_cbacks
The functionality previously provided by struct cds_sme_cbacks has
been incorporated into the policy manager, and the struct is now
unused, so remove it.

Change-Id: Ia30cc18b5338073b9c96a29ca12b1383d31b4990
CRs-Fixed: 2363228
2018-12-10 02:06:53 -08:00
Jeff Johnson
362b08ff74 qcacld-3.0: Remove obsolete CDS Packet Tracking macros
CDS contains a set of CDS_PKT_TRAC_* macros that were used by a prior
version of the driver. The current driver uses a different mechanism,
so remove the now unused CDS_PKT_TRAC_* macros.

Change-Id: I4f0e3a44e6786d3ed03e22807811878b2a187185
CRs-Fixed: 2362715
2018-12-06 23:09:53 -08:00
Jeff Johnson
85cd2e7c65 qcacld-3.0: Remove ol_rx_queue_len from cds_sched_context
The cds_sched_context contains an ol_rx_queue_len field that is
unused, so remove it.

Change-Id: Ib2a03a61a19424f3cb41c975a886b12f674de247
CRs-Fixed: 2362714
2018-12-06 21:03:43 -08:00
Jeff Johnson
21724f4455 qcacld-3.0: Remove obsolete struct hdd_context_s reference
In CDS there is a forward reference to struct hdd_context_s, However
this forward reference is not used, and in fact that struct name is no
longer in use in the driver, so remove it.

Change-Id: Iecf43870b22143f656bb9b8e413ae46c2f59bab4
CRs-Fixed: 2362713
2018-12-06 21:03:40 -08:00
Jeff Johnson
5f32b68b21 qcacld-3.0: Remove obsolete cds_packet definitions
The cds_packet infrastructure has been partially converted to QDF.  As
a result some of the legacy definitions are no longer being used, so
remove them.

Change-Id: I6827c08c3f39da8b0a561d6c3e4fe6f7eb528a25
CRs-Fixed: 2362712
2018-12-06 21:03:36 -08:00
Arif Hussain
224d38154f qcacld-3.0: Refactor more dfs cfg items
Refactor following DFS cfg items
CFG_DISABLE_DFS_CH_SWITCH
CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_NAME
CFG_IGNORE_CAC_NAME
CFG_DFS_RADAR_PRI_MULTIPLIER_NAME
CFG_SAP_TX_LEAKAGE_THRESHOLD_NAME
CFG_DFS_BEACON_TX_ENHANCED
CFG_DISABLE_DFS_JAPAN_W53
CFG_ENABLE_NON_DFS_CHAN_ON_RADAR

Change-Id: I7f39ed0680919c6a383d9b8bae5864f979b6948c
CRs-Fixed: 2351995
2018-12-04 00:05:53 -08:00
Tiger Yu
13cdcc4194 qcacld-3.0: Change the policy & priority of RX thread
Change the policy & priority of RX thread to improve the RX throughput for
Specified platform.

Change-Id: Ie9df5de6f34d75264c4f3b7bdcb59ab92845a128
CRs-Fixed: 2354502
2018-11-30 06:45:09 -08:00
Wu Gao
51a6356b60 qcacld-3.0: Apply second part of LFR INIs changes
Since refined second part of LFR INIs, apply these changes in
SME/MAC/WMA layer.

Change-Id: I7994a9038d5bd094ce23bcd525ef8f5282974bfc
CRs-Fixed: 2346790
2018-11-29 18:11:48 -08:00
hangtian
e52fa917b9 qcacld-3.0: Fix uninitialized issue while BMI failed
Initialize gp_cds_context->cfg_ctx before any error case happened and
goto err_wma_close. Otherwise, in wma_wmi_service_close, it's trying to
free uninitialized gp_cds_context->cfg_ctx.

Change-Id: I822ecf77676b9d638c414afb544fdb41d7b1d146
CRs-Fixed: 2355042
2018-11-29 18:11:04 -08:00
Pragaspathi Thilagaraj
4b5c0601a2 qcacld-3.0: Add the MLME CFG items to new MLME component
Add the following mlme cfg items:
CFG_AP_PROTECTION_MODE_NAME
CFG_AP_OBSS_PROTECTION_MODE_NAME
CFG_AP_STA_SECURITY_SEPERATION_NAME
CFG_ENABLE_BT_CHAIN_SEPARATION
CFG_AP_QOS_UAPSD_MODE_NAME

Change-Id: Iabdfb7c2492c234cfc3e8f71f33801f0034e578d
CRs-Fixed: 2350626
2018-11-28 14:35:01 -08:00
Rakshith Suresh Patkar
ba55fd097f qcacld-3.0: Flush scheduler message queues before htc_stop
There is a window where wmi commands are reaching HTC while HTC is
getting stopped in other context irrespective of wma_wmi_stop() which
will lead to memory leaks.

To avoid this issue, flush all scheduler message queues before
proceeding to htc_stop.

Change-Id: I4d0742d7b9df6a9b0401fd4e840ff6a667d353da
CRs-Fixed: 2352291
2018-11-22 04:18:18 -08:00
Jeff Johnson
40894141cb qcacld-3.0: Refine sme_send_flush_logs_cmd_to_fw prototype()
There are currently multiple issues with sme_send_flush_logs_cmd_to_fw()
- Although this is an SME API the prototype is exposed in a CDS header
  file
- The API is defined to take a mac context parameter which is unused
- Although the function returns QDF_STATUS, the only caller treats the
  return value as an int errno

To address these issues
- Relocate the prototype to SME
- Remove the unused parameter
- Properly treat the return value as QDF_STATUS

Change-Id: Ia511565ee0b77148ee7cb1bf221e99a5b26ed446
CRs-Fixed: 2353530
2018-11-21 21:20:51 -08:00
Lin Bai
f5e8cc2dba qcacld-3.0: Fix compiler error on UP target
QCA_CONFIG_SMP defined to support some thread scheduling features on
SMP target, while some variants defined only for SMP purpose are
referred out of this MACRO, like is_ol_rx_thread_suspended,
ol_rx_event_flag and ol_suspend_rx_event.

Defines separate functions for SMP/UP target to avoid it.

Change-Id: I01884644b7b77e55514cf00426609643386480e8
CRs-Fixed: 2344683
2018-11-06 21:07:41 -08:00
jitiphil
377bcc1227 qcacld-3.0: Add legacy DP CFG items and APIs
Add the basic infra for legacy DP CFG items and the APIs
to be used from other components.

Change-Id: If7ad0e02c65e04ea13a308e680c9ba3b3d84ae25
CRs-Fixed: 2324099
2018-11-01 05:42:07 -07:00
Venkata Sharath Chandra Manchala
598f503a01 qcacld-3.0: Change return status
Return QDF_STATUS as return status
over an integer value.

Change-Id: Ib6083de9b3581e6d92ec18f39ca552a5ae0cfc2d
CRs-Fixed: 2311561
2018-10-26 10:39:16 -07:00
Wu Gao
d7dd6e4157 qcacld-3.0: Rename some ucfg APIs of PMO
To keep names of PMO ucfg APIs consistent, change some of them from
"pmo_ucfg_xxx" to "ucfg_pmo_xxx".

Change-Id: I77165be8c5c408c3f91f84a477c15be1c6ea15e8
CRs-Fixed: 2334109
2018-10-22 03:52:11 -07:00
yuanl
2746f07242 qcacld-3.0: expose TSF to user space by file system on Vipertooth
Enable TSF for Adrastea arch on Vipertooth chip firstly and
expose TSF time mapping via file system

CRs-Fixed: 2320218
Change-Id: Ifda0d8035717ad21edb1a393ef32f1157ab59105
2018-10-13 15:23:10 -07:00
Alok Kumar
62bf738e15 qcacld-3.0: Address the error path during WLAN suspend
In __wlan_hdd_cfg80211_suspend_wlan(), suspend process is bailed out
if hdd_suspend_wlan() < 0 due to which RX thread waits for completion
of ol_resume_rx_event.

Do completion of ol_resume_rx_event in __wlan_hdd_cfg80211_suspend_wlan
for error path to resume RX thread.

Change-Id: I8bf056f82d80e063b2e32a1a6573d7a36ced67dc
CRs-Fixed: 2327238
2018-10-09 21:35:40 -07:00
Liangwei Dong
7191780c4b qcacld-3.0: Register recovering state query callback
Register recovering state query callback to common qdf
platform component to provide recovering state.

Change-Id: If5d1b30f0617d9f8cef41787da1e829a792105f8
CRs-Fixed: 2320797
2018-10-09 12:37:18 -07:00
jitiphil
4c256a34d6 qcacld-3.0: Add IPA CFG items and APIs
Add IPA related INI config to IPA component.

Change-Id: I5bea63b83ddac62504ef38019aa4034c4e18bca7
CRs-Fixed: 2320921
2018-10-05 19:58:00 -07:00
Dundi Raviteja
8e33828530 qcacld-3.0: Relocate HDD ini items
Relocate below HDD ini items as per converged infrastructure.
1. private_wext_control
2. gInterfaceChangeWait
3. gTimerMultiplier
4. g_bug_on_reinit_failure
5. gEnableDumpCollect
6. gMulticastHostFwMsgs
7. wlanLoggingEnable
8. wlanLoggingToConsole
9. gWlanAutoShutdown
10. gEnablefwprint
11. gEnablefwlog
12. gEnablePacketLog

Change-Id: I913bbbcfd94eba609836afdcc134c3ccd7a8f46b
CRs-Fixed: 2322112
2018-10-04 22:52:43 -07:00
Yuanyuan Liu
dfb40924f5 qcacld-3.0: add check for qdf_ctx
Add NULL check for qdf_ctx to avoid dereference.

Change-Id: I75f5f2baafdf6b9c1a7587a3d17934c9246acccd
CRs-Fixed: 2326306
2018-10-03 18:37:25 -07:00