1
0

qcacmn: Validate the proposed bitmap and enable puncturing

When radar is found in any DFS channel, a radar bitmap is
generated based on the radar infected channels. For example,
if operating channel is 100 HT160 and radar found in 112,
then the generated bitmap is B0000_0010. This proposed bitmap
is compared with the valid puncturing patterns. In this case,
the proposed bitmap is valid puncturing pattern.

In case of a valid puncturing pattern, send the final
bitmap to DFS module and the module updates the DFS channel
puncturing pattern. If an invalid puncturing pattern is
found, return value zero and do not update DFS channel
puncturing pattern.

CRs-Fixed: 3273800
Change-Id: Iee23ac267bfea1b4815a72c2728555f96bed6466
Este cometimento está contido em:
Vijay Krishnan
2022-08-23 11:41:29 +05:30
cometido por Madan Koyyalamudi
ascendente d706698dd1
cometimento ef864278aa
9 ficheiros modificados com 166 adições e 13 eliminações

Ver ficheiro

@@ -1,5 +1,6 @@
/*
* Copyright (c) 2016-2021 The Linux Foundation. All rights reserved.
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
*
*
* Permission to use, copy, modify, and/or distribute this software for
@@ -53,14 +54,16 @@ void dfs_mlme_mark_dfs(struct wlan_objmgr_pdev *pdev,
uint8_t ieee,
uint16_t freq,
uint16_t vhtop_ch_freq_seg2,
uint64_t flags)
uint64_t flags,
uint16_t dfs_radar_bitmap)
{
if (global_dfs_to_mlme.mlme_mark_dfs)
global_dfs_to_mlme.mlme_mark_dfs(pdev,
ieee,
freq,
vhtop_ch_freq_seg2,
flags);
flags,
dfs_radar_bitmap);
}
#else /* Else of ndef MCL_DFS_SUPPORT */
static void dfs_send_radar_ind(struct wlan_objmgr_pdev *pdev,
@@ -84,7 +87,8 @@ void dfs_mlme_mark_dfs(struct wlan_objmgr_pdev *pdev,
uint8_t ieee,
uint16_t freq,
uint16_t vhtop_ch_freq_seg2,
uint64_t flags)
uint64_t flags,
uint16_t dfs_radar_bitmap)
{
struct wlan_objmgr_vdev *vdev;