qcacld-3.0: Assign combined ACS weight to 6 GHz PSC channel
For bw higher than 20 MHz ACS request, such as 160 MHz, weight calculation will combine the neighbor channel's weight which maybe Non PSC channel, the previous setting of combined weight to channel of lowest weight of neighbor channel. That maybe Non PSC channel, that causes the final ACS result is Non PSC channel, which is unexpected for standalone SAP. Fix by set combined weight to PSC channel, so that PSC channel will have a valid weight in final sorting with 5 GHz or 2 GHz list. Change-Id: Ic37d005af524f5ff2c8cb2c86647f02ced7c32d7 CRs-Fixed: 3394384
此提交包含在:
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2012-2021 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) 2022-2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -203,6 +203,32 @@
|
||||
0, \
|
||||
"Force start SAP")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* acs_prefer_6ghz_psc - Select 6 GHz PSC channel as priority
|
||||
* @Min: 0
|
||||
* @Max: 1
|
||||
* @Default: 1
|
||||
*
|
||||
* This config is used to configure ACS logic to select PSC channel as
|
||||
* perefered result. "normalize_acs_weight" INI can make the PSC
|
||||
* channel priority higher than NON PSC, but it is for a single channel's
|
||||
* weight, for bw 160 or bw 80 combined channel weight, it has less
|
||||
* help.
|
||||
*
|
||||
* Related: None
|
||||
*
|
||||
* Supported Feature: ACS
|
||||
*
|
||||
* Usage: Internal
|
||||
*
|
||||
* </ini>
|
||||
*/
|
||||
#define CFG_ACS_PREFER_6GHZ_PSC CFG_BOOL( \
|
||||
"acs_prefer_6ghz_psc", \
|
||||
1, \
|
||||
"Select 6 GHz PSC channel as priority")
|
||||
|
||||
/*
|
||||
* <ini>
|
||||
* np_chan_weight - chan weightage for non preferred channels
|
||||
@@ -248,6 +274,7 @@
|
||||
CFG(CFG_USER_ACS_DFS_LTE) \
|
||||
CFG(CFG_EXTERNAL_ACS_POLICY) \
|
||||
CFG(CFG_NORMALIZE_ACS_WEIGHT) \
|
||||
CFG(CFG_ACS_PREFER_6GHZ_PSC) \
|
||||
CFG(CFG_ACS_FORCE_START_SAP) \
|
||||
CFG(CFG_ACS_NP_CHAN_WEIGHT)
|
||||
|
||||
|
@@ -1512,6 +1512,7 @@ struct acs_weight_range {
|
||||
* @num_weight_range: num of ranges provided by user
|
||||
* @force_sap_start: Force SAP start when no channel is found suitable
|
||||
* by ACS
|
||||
* @acs_prefer_6ghz_psc: Select 6 GHz PSC channel as priority
|
||||
* @np_chan_weightage: Weightage to be given to non preferred channels.
|
||||
*/
|
||||
struct wlan_mlme_acs {
|
||||
@@ -1525,6 +1526,7 @@ struct wlan_mlme_acs {
|
||||
struct acs_weight_range normalize_weight_range[MAX_ACS_WEIGHT_RANGE];
|
||||
uint16_t num_weight_range;
|
||||
bool force_sap_start;
|
||||
bool acs_prefer_6ghz_psc;
|
||||
uint32_t np_chan_weightage;
|
||||
};
|
||||
|
||||
|
新增問題並參考
封鎖使用者