qcacmn: CTL changes for Beeliner family
For Beeliner family of chipsets, the number of values expected is 688 for 2G and 1540 for 5G Change-Id: I2c47ed98f639c09453687fce7f713946304a7036 CRs-fixed: 1071083
This commit is contained in:

committed by
qcabuildsw

parent
82ea32676c
commit
9b7f47eac5
@@ -3709,6 +3709,27 @@ send_set_ctl_table_cmd_non_tlv(wmi_unified_t wmi_handle,
|
||||
#define WHAL_NUM_CTLS_2G 18
|
||||
#define WHAL_NUM_BAND_EDGES_5G 8
|
||||
#define WHAL_NUM_BAND_EDGES_2G 4
|
||||
|
||||
/*Beelinier 5G*/
|
||||
#define WHAL_NUM_CTLS_5G_11A 9
|
||||
#define WHAL_NUM_BAND_EDGES_5G_11A 25
|
||||
#define WHAL_NUM_CTLS_5G_HT20 24
|
||||
#define WHAL_NUM_BAND_EDGES_5G_HT20 25
|
||||
#define WHAL_NUM_CTLS_5G_HT40 18
|
||||
#define WHAL_NUM_BAND_EDGES_5G_HT40 12
|
||||
#define WHAL_NUM_CTLS_5G_HT80 18
|
||||
#define WHAL_NUM_BAND_EDGES_5G_HT80 6
|
||||
#define WHAL_NUM_CTLS_5G_HT160 9
|
||||
#define WHAL_NUM_BAND_EDGES_5G_HT160 2
|
||||
|
||||
/* Beeliner 2G */
|
||||
#define WHAL_NUM_CTLS_2G_11B 6
|
||||
#define WHAL_NUM_BAND_EDGES_2G_11B 9
|
||||
#define WHAL_NUM_CTLS_2G_20MHZ 30
|
||||
#define WHAL_NUM_BAND_EDGES_2G_20MHZ 11
|
||||
#define WHAL_NUM_CTLS_2G_40MHZ 18
|
||||
#define WHAL_NUM_BAND_EDGES_2G_40MHZ 6
|
||||
|
||||
uint16_t len;
|
||||
wmi_buf_t buf;
|
||||
wmi_pdev_set_ctl_table_cmd *cmd;
|
||||
@@ -3716,11 +3737,63 @@ send_set_ctl_table_cmd_non_tlv(wmi_unified_t wmi_handle,
|
||||
if (!param->ctl_array)
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
|
||||
if (!param->is_acfg_ctl && param->ctl_len !=
|
||||
WHAL_NUM_CTLS_2G * WHAL_NUM_BAND_EDGES_2G * 2 +
|
||||
WHAL_NUM_CTLS_5G * WHAL_NUM_BAND_EDGES_5G * 2) {
|
||||
qdf_print("CTL array len not correct\n");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
/* CTL array length check for Beeliner family */
|
||||
if (param->target_type == TARGET_TYPE_AR900B ||
|
||||
param->target_type == TARGET_TYPE_QCA9984 ||
|
||||
param->target_type == TARGET_TYPE_IPQ4019 ||
|
||||
param->target_type == TARGET_TYPE_QCA9888) {
|
||||
if (param->is_2g) {
|
||||
/* For 2G, CTL array length should be 688*/
|
||||
if (!param->is_acfg_ctl && param->ctl_len !=
|
||||
(4 + (WHAL_NUM_CTLS_2G_11B * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_2G_11B * 3) +
|
||||
1 + (WHAL_NUM_CTLS_2G_11B *
|
||||
WHAL_NUM_BAND_EDGES_2G_11B) +
|
||||
(WHAL_NUM_CTLS_2G_20MHZ * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_2G_20MHZ * 3) +
|
||||
1 + (WHAL_NUM_CTLS_2G_20MHZ *
|
||||
WHAL_NUM_BAND_EDGES_2G_20MHZ) +
|
||||
(WHAL_NUM_CTLS_2G_40MHZ * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_2G_40MHZ * 3) +
|
||||
(WHAL_NUM_CTLS_2G_40MHZ *
|
||||
WHAL_NUM_BAND_EDGES_2G_40MHZ) + 4)) {
|
||||
qdf_print("CTL array len not correct\n");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
} else {
|
||||
/* For 5G, CTL array length should be 1540 */
|
||||
if (!param->is_acfg_ctl && param->ctl_len !=
|
||||
(4 + (WHAL_NUM_CTLS_5G_11A * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_5G_11A * 3) +
|
||||
1 + (WHAL_NUM_CTLS_5G_11A *
|
||||
WHAL_NUM_BAND_EDGES_5G_11A) + 1
|
||||
+ (WHAL_NUM_CTLS_5G_HT20 * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_5G_HT20 * 3) +
|
||||
1 + (WHAL_NUM_CTLS_5G_HT20 *
|
||||
WHAL_NUM_BAND_EDGES_5G_HT20) +
|
||||
(WHAL_NUM_CTLS_5G_HT40 * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_5G_HT40 * 3) +
|
||||
(WHAL_NUM_CTLS_5G_HT40 *
|
||||
WHAL_NUM_BAND_EDGES_5G_HT40) +
|
||||
(WHAL_NUM_CTLS_5G_HT80 * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_5G_HT80 * 3) +
|
||||
(WHAL_NUM_CTLS_5G_HT80 *
|
||||
WHAL_NUM_BAND_EDGES_5G_HT80) +
|
||||
(WHAL_NUM_CTLS_5G_HT160 * 2) +
|
||||
(WHAL_NUM_BAND_EDGES_5G_HT160 * 3) +
|
||||
(WHAL_NUM_CTLS_5G_HT160 *
|
||||
WHAL_NUM_BAND_EDGES_5G_HT160))) {
|
||||
qdf_print("CTL array len not correct\n");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!param->is_acfg_ctl && param->ctl_len !=
|
||||
WHAL_NUM_CTLS_2G * WHAL_NUM_BAND_EDGES_2G * 2 +
|
||||
WHAL_NUM_CTLS_5G * WHAL_NUM_BAND_EDGES_5G * 2) {
|
||||
qdf_print("CTL array len not correct\n");
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
}
|
||||
|
||||
len = sizeof(wmi_pdev_set_ctl_table_cmd);
|
||||
|
Reference in New Issue
Block a user