From 8178d6fcb07eb6b101d7af6f15fc740c902eafb9 Mon Sep 17 00:00:00 2001 From: Vignesh U Date: Tue, 5 Jun 2018 11:22:53 +0530 Subject: [PATCH] qcacmn: Stop and reset the DFS test timer for Full-offload DFS test timer is initialized and used by Full-offload but the timer is not reset during DFS reset. Reset DFS task timer during DFS reset. Change-Id: I5d5395744a98e5ca2a7a94971e7c1c6e6e0b174f CRs-Fixed: 2252612 --- umac/dfs/core/src/dfs.h | 6 ++++++ umac/dfs/core/src/misc/dfs.c | 9 +++++++++ umac/dfs/core/src/misc/dfs_filter_init.c | 5 ----- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/umac/dfs/core/src/dfs.h b/umac/dfs/core/src/dfs.h index 2438d404dcf1..42eeac994d89 100644 --- a/umac/dfs/core/src/dfs.h +++ b/umac/dfs/core/src/dfs.h @@ -2296,4 +2296,10 @@ void dfs_nol_free_list(struct wlan_dfs *dfs); */ int dfs_second_segment_radar_disable(struct wlan_dfs *dfs); +/** + * dfs_task_testtimer_reset() - stop dfs test timer. + * @dfs: Pointer to wlan_dfs structure. + */ +void dfs_task_testtimer_reset(struct wlan_dfs *dfs); + #endif /* _DFS_H_ */ diff --git a/umac/dfs/core/src/misc/dfs.c b/umac/dfs/core/src/misc/dfs.c index b47a4f01e8a0..9900258ee27a 100644 --- a/umac/dfs/core/src/misc/dfs.c +++ b/umac/dfs/core/src/misc/dfs.c @@ -136,6 +136,14 @@ void dfs_stop(struct wlan_dfs *dfs) dfs_clear_nolhistory(dfs); } +void dfs_task_testtimer_reset(struct wlan_dfs *dfs) +{ + if (dfs->wlan_dfstest) { + qdf_timer_stop(&dfs->wlan_dfstesttimer); + dfs->wlan_dfstest = 0; + } +} + void dfs_reset(struct wlan_dfs *dfs) { if (!dfs) { @@ -149,6 +157,7 @@ void dfs_reset(struct wlan_dfs *dfs) dfs_main_timer_reset(dfs); dfs->dfs_event_log_count = 0; } + dfs_task_testtimer_reset(dfs); } void dfs_detach(struct wlan_dfs *dfs) diff --git a/umac/dfs/core/src/misc/dfs_filter_init.c b/umac/dfs/core/src/misc/dfs_filter_init.c index ca40314949b9..d753459bb094 100644 --- a/umac/dfs/core/src/misc/dfs_filter_init.c +++ b/umac/dfs/core/src/misc/dfs_filter_init.c @@ -222,11 +222,6 @@ void dfs_main_timer_reset(struct wlan_dfs *dfs) qdf_timer_stop(&dfs->wlan_dfs_task_timer); dfs->wlan_radar_tasksched = 0; } - - if (dfs->wlan_dfstest) { - qdf_timer_stop(&dfs->wlan_dfstesttimer); - dfs->wlan_dfstest = 0; - } } void dfs_main_detach(struct wlan_dfs *dfs)