qcacmn: Reinit DFS after HW mode switch (phase 2)
Supported dynamic HW mode switches: DBS (full band 5G and 2G) <-> DBS_SBS (low band 5G, high band 5G and 2G) Description of the changes: 1. NOL conversion: a. Introduce a temporary NOL list copy structure in DFS psoc obj. b. When mode switch is triggered: i. Stop the NOL timers and clear the data, to avoid processing NOL expiry during mode switch. ii. Allocate the psoc NOL copy for the target num_radios. iii. Store the NOL data of each radio to the target pdev ID (pdev ID after mode switch) in the psoc NOL copy, using a unified mux/demux API. c. After mode switch is completed: i. Resume NOL by re-initializing the list from the temporary psoc copy. ii. Free the psoc copy after mode switch is complete. iii. Note: changes are made to support pause and resume of NOL, increasing NOL timeout by a few milliseconds. 2. PreCAC list conversion: a. When mode switch is triggered: i. Stop the existing preCAC timer and send ADFS abort command to FW. b. When mode switch is completed: i. Unify/separate the preCAC list if the target mode is DBS/DBS_SBS respectively, using a single API. ii. Start ADFS again. 3. Radar detection lock: a. While detecting radar, acquire a lock to avoid handling user triggered mode_switch during this process. Release the lock once radar processing is completed and CSA start is triggered. 4. Radar detection/CAC completion defer during mode switch: a. While detecting radar or CAC completion, check if mode switch is in progress. If yes, defer the processing and wait for mode switch to complete before handling the events. b. Note: Precedence is Radar over CAC, i.e., if CAC processing is waiting and radar is received, CAC completion is no longer handled. CRs-Fixed: 2580403 Change-Id: I506f3b569bad2e351c6f336e50f203cf5fa8b223
这个提交包含在:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2011, 2016-2019 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2011, 2016-2020 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2010, Atheros Communications Inc.
|
||||
* All Rights Reserved.
|
||||
*
|
||||
@@ -77,7 +77,7 @@
|
||||
#define DFS_LAST_IOCTL 29
|
||||
|
||||
#ifndef DFS_CHAN_MAX
|
||||
#define DFS_CHAN_MAX 1023
|
||||
#define DFS_CHAN_MAX 25
|
||||
#endif
|
||||
|
||||
/**
|
||||
|
在新工单中引用
屏蔽一个用户