qcacld-3.0: Add GO+GO+STA policy mgr table

Update 2x2 dbs PCL table and DBS action tables
to support P2P GO + P2P GO + STA concurrency cases.

Change-Id: I87b77c64083f7e398fcec9f4efc60a887e18e7ef
CRs-Fixed: 2464109
Цей коміт міститься в:
Liangwei Dong
2019-05-09 03:01:57 -04:00
зафіксовано nshrivas
джерело 6342ad3723
коміт 869dd5dc3d
3 змінених файлів з 285 додано та 32 видалено

Переглянути файл

@@ -588,6 +588,21 @@ enum policy_mgr_one_connection_mode {
* @PM_NAN_DISC_NDI_MCC_24_2x2: NAN & NDI connection on MCC using 2x2 on 2.4 GHz
* @PM_NAN_DISC_NDI_DBS_1x1: NAN & NDI connection on DBS using 1x1
* @PM_NAN_DISC_NDI_DBS_2x2: NAN & NDI connection on DBS using 2x2
* @PM_P2P_GO_P2P_GO_SCC_24_1x1: P2P GO & P2P GO SCC on 2.4G using 1x1
* @PM_P2P_GO_P2P_GO_SCC_24_2x2: P2P GO & P2P GO SCC on 2.4G using 2x2
* @PM_P2P_GO_P2P_GO_MCC_24_1x1: P2P GO & P2P GO MCC on 2.4G using 1x1
* @PM_P2P_GO_P2P_GO_MCC_24_2x2: P2P GO & P2P GO MCC on 2.4G using 2x2
* @PM_P2P_GO_P2P_GO_SCC_5_1x1: P2P GO & P2P GO SCC on 5G using 1x1
* @PM_P2P_GO_P2P_GO_SCC_5_2x2: P2P GO & P2P GO SCC on 5G using 2x2
* @PM_P2P_GO_P2P_GO_MCC_5_1x1: P2P GO & P2P GO MCC on 5G using 1x1
* @PM_P2P_GO_P2P_GO_MCC_5_2x2: P2P GO & P2P GO MCC on 5G using 2x2
* @PM_P2P_GO_P2P_GO_MCC_24_5_1x1: P2P GO 2.4G & P2P GO 5G dual band MCC
* using 1x1
* @PM_P2P_GO_P2P_GO_MCC_24_5_2x2: P2P GO 2.4G & P2P GO 5G dual band MCC
* using 2x2
* @PM_P2P_GO_P2P_GO_DBS_1x1: P2P GO & P2P GO on DBS using 1x1
* @PM_P2P_GO_P2P_GO_DBS_2x2: P2P GO & P2P GO on DBS using 2x2
* @PM_P2P_GO_P2P_GO_SBS_5_1x1: P2P GO & P2P GO on SBS using 1x1
*
* These are generic IDs that identify the various roles in the
* software system
@@ -709,7 +724,19 @@ enum policy_mgr_two_connection_mode {
PM_NAN_DISC_NDI_MCC_24_2x2,
PM_NAN_DISC_NDI_DBS_1x1,
PM_NAN_DISC_NDI_DBS_2x2,
PM_P2P_GO_P2P_GO_SCC_24_1x1,
PM_P2P_GO_P2P_GO_SCC_24_2x2,
PM_P2P_GO_P2P_GO_MCC_24_1x1,
PM_P2P_GO_P2P_GO_MCC_24_2x2,
PM_P2P_GO_P2P_GO_SCC_5_1x1,
PM_P2P_GO_P2P_GO_SCC_5_2x2,
PM_P2P_GO_P2P_GO_MCC_5_1x1,
PM_P2P_GO_P2P_GO_MCC_5_2x2,
PM_P2P_GO_P2P_GO_MCC_24_5_1x1,
PM_P2P_GO_P2P_GO_MCC_24_5_2x2,
PM_P2P_GO_P2P_GO_DBS_1x1,
PM_P2P_GO_P2P_GO_DBS_2x2,
PM_P2P_GO_P2P_GO_SBS_5_1x1,
PM_MAX_TWO_CONNECTION_MODE
};

Переглянути файл

@@ -1438,6 +1438,76 @@ static enum policy_mgr_two_connection_mode
return index;
}
static enum policy_mgr_two_connection_mode
policy_mgr_get_third_connection_pcl_table_index_go_go(void)
{
enum policy_mgr_two_connection_mode index = PM_MAX_TWO_CONNECTION_MODE;
/* SCC */
if (pm_conc_connection_list[0].chan ==
pm_conc_connection_list[1].chan) {
if (WLAN_REG_IS_24GHZ_CH(
pm_conc_connection_list[0].chan)) {
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_SCC_24_1x1;
else
index = PM_P2P_GO_P2P_GO_SCC_24_2x2;
} else {
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_SCC_5_1x1;
else
index = PM_P2P_GO_P2P_GO_SCC_5_2x2;
}
/* MCC */
} else if (pm_conc_connection_list[0].mac ==
pm_conc_connection_list[1].mac) {
if ((WLAN_REG_IS_24GHZ_CH(
pm_conc_connection_list[0].chan)) &&
(WLAN_REG_IS_24GHZ_CH(
pm_conc_connection_list[1].chan))) {
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_MCC_24_1x1;
else
index = PM_P2P_GO_P2P_GO_MCC_24_2x2;
} else if ((WLAN_REG_IS_5GHZ_CH(
pm_conc_connection_list[0].chan)) &&
(WLAN_REG_IS_5GHZ_CH(
pm_conc_connection_list[1].chan))) {
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_MCC_5_1x1;
else
index = PM_P2P_GO_P2P_GO_MCC_5_2x2;
} else {
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_MCC_24_5_1x1;
else
index = PM_P2P_GO_P2P_GO_MCC_24_5_2x2;
}
/* SBS or DBS */
} else if (pm_conc_connection_list[0].mac !=
pm_conc_connection_list[1].mac) {
/* SBS */
if ((WLAN_REG_IS_5GHZ_CH(pm_conc_connection_list[0].chan)) &&
(WLAN_REG_IS_5GHZ_CH(pm_conc_connection_list[1].chan))) {
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_SBS_5_1x1;
} else {
/* DBS */
if (POLICY_MGR_ONE_ONE ==
pm_conc_connection_list[0].chain_mask)
index = PM_P2P_GO_P2P_GO_DBS_1x1;
else
index = PM_P2P_GO_P2P_GO_DBS_2x2;
}
}
return index;
}
static enum policy_mgr_two_connection_mode
policy_mgr_get_third_connection_pcl_table_index_nan_ndi(void)
{
@@ -1572,6 +1642,10 @@ enum policy_mgr_two_connection_mode
(PM_NAN_DISC_MODE == pm_conc_connection_list[1].mode)))
index =
policy_mgr_get_third_connection_pcl_table_index_nan_ndi();
else if ((pm_conc_connection_list[0].mode == PM_P2P_GO_MODE) &&
(pm_conc_connection_list[1].mode == PM_P2P_GO_MODE))
index =
policy_mgr_get_third_connection_pcl_table_index_go_go();
policy_mgr_debug("mode0:%d mode1:%d chan0:%d chan1:%d chain:%d index:%d",
pm_conc_connection_list[0].mode,

Переглянути файл

@@ -132,8 +132,7 @@ pm_second_connection_pcl_dbs_2x2_table = {
[PM_STA_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_SAP_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_P2P_CLIENT_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_P2P_GO_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_IBSS_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -144,8 +143,7 @@ pm_second_connection_pcl_dbs_2x2_table = {
[PM_STA_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_SAP_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_P2P_CLIENT_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_P2P_GO_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_IBSS_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -159,8 +157,7 @@ pm_second_connection_pcl_dbs_2x2_table = {
PM_24G_SCC_CH_SBS_CH, PM_24G_SCC_CH_SBS_CH},
[PM_P2P_CLIENT_MODE] = { PM_24G_SCC_CH_SBS_CH,
PM_24G_SCC_CH_SBS_CH, PM_24G_SCC_CH_SBS_CH},
[PM_P2P_GO_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -174,8 +171,7 @@ pm_second_connection_pcl_dbs_2x2_table = {
PM_24G_SCC_CH_SBS_CH, PM_24G_SCC_CH_SBS_CH},
[PM_P2P_CLIENT_MODE] = { PM_24G_SCC_CH_SBS_CH,
PM_24G_SCC_CH_SBS_CH, PM_24G_SCC_CH_SBS_CH},
[PM_P2P_GO_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE,
PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -666,8 +662,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
[PM_SAP_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -679,8 +674,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
[PM_SAP_MODE] = {PM_5G_SCC_CH, PM_5G_SCC_CH, PM_5G_SCC_CH},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -692,8 +686,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
[PM_SAP_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -705,8 +698,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
[PM_SAP_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -721,8 +713,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_24G_SCC_CH_SBS_CH},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -737,8 +728,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_24G_SCC_CH_SBS_CH},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -752,8 +742,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_24G_SBS_CH_MCC_CH, PM_24G, PM_24G_MCC_CH},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -767,8 +756,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_24G_SBS_CH_MCC_CH, PM_24G, PM_24G_MCC_CH},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -782,8 +770,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -797,8 +784,7 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -813,7 +799,8 @@ pm_third_connection_pcl_dbs_2x2_table = {
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
PM_SCC_ON_5_SCC_ON_24_5G, PM_SCC_ON_5_SCC_ON_24,
PM_SCC_ON_5_SCC_ON_24},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -828,7 +815,8 @@ pm_third_connection_pcl_dbs_2x2_table = {
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
PM_SCC_ON_5_SCC_ON_24_5G, PM_SCC_ON_5_SCC_ON_24,
PM_SCC_ON_5_SCC_ON_24},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
@@ -1030,7 +1018,166 @@ pm_third_connection_pcl_dbs_2x2_table = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_SAP_SBS_5_1x1] = {
[PM_P2P_GO_P2P_GO_SCC_24_1x1] = {
[PM_STA_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_SCC_24_2x2] = {
[PM_STA_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_MCC_24_1x1] = {
[PM_STA_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_MCC_24_2x2] = {
[PM_STA_MODE] = {PM_5G, PM_5G, PM_5G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_SCC_5_1x1] = {
[PM_STA_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_SCC_5_2x2] = {
[PM_STA_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_MCC_5_1x1] = {
[PM_STA_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_MCC_5_2x2] = {
[PM_STA_MODE] = {PM_24G, PM_24G, PM_24G},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_MCC_24_5_1x1] = {
[PM_STA_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_MCC_24_5_2x2] = {
[PM_STA_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_SAP_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_DBS_1x1] = {
[PM_STA_MODE] = {
PM_SCC_ON_5_SCC_ON_24_5G, PM_SCC_ON_5_SCC_ON_24_5G,
PM_SCC_ON_5_SCC_ON_24_5G},
[PM_SAP_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_DBS_2x2] = {
[PM_STA_MODE] = { PM_SCC_ON_5_SCC_ON_24_5G, PM_SCC_ON_5_SCC_ON_24,
PM_SCC_ON_5_SCC_ON_24},
[PM_SAP_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_CLIENT_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_P2P_GO_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_IBSS_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NAN_DISC_MODE] = {
PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE},
[PM_NDI_MODE] = {PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE, PM_MAX_PCL_TYPE} },
[PM_P2P_GO_P2P_GO_SBS_5_1x1] = {
[PM_STA_MODE] = {
PM_SBS_CH_5G, PM_SBS_CH, PM_SBS_CH},
[PM_SAP_MODE] = {
@@ -1844,6 +1991,11 @@ static policy_mgr_next_action_three_connection_table_type
[PM_SAP_SAP_SCC_5_1x1] = {PM_DBS, PM_NOP},
[PM_SAP_SAP_SCC_5_2x2] = {PM_DBS, PM_NOP},
[PM_P2P_GO_P2P_GO_SCC_5_1x1] = {PM_DBS, PM_SBS},
[PM_P2P_GO_P2P_GO_SCC_5_2x2] = {PM_DBS, PM_SBS_DOWNGRADE},
[PM_P2P_GO_P2P_GO_MCC_5_1x1] = {PM_DBS, PM_SBS},
[PM_P2P_GO_P2P_GO_MCC_5_2x2] = {PM_DBS, PM_SBS_DOWNGRADE},
[PM_P2P_GO_P2P_GO_SBS_5_1x1] = {PM_DBS_UPGRADE, PM_NOP},
};
#endif