1 /* 2 * Arm SCP/MCP Software 3 * Copyright (c) 2024, Arm Limited and Contributors. All rights reserved. 4 * 5 * SPDX-License-Identifier: BSD-3-Clause 6 */ 7 8 #include <Mockfwk_module.h> 9 10 #include <mod_perf_controller.h> 11 12 #include <fwk_element.h> 13 #include <fwk_module_idx.h> 14 15 #define MAX_CORE_PER_CLUSTER 4U 16 17 enum test_perf_controller_cluster_idx { 18 TEST_BIG_CLUSTER, 19 TEST_LITTLE_CLUSTER, 20 TEST_CLUSTER_COUNT, 21 }; 22 23 struct fwk_element cluster_config[TEST_CLUSTER_COUNT] = { 24 [TEST_BIG_CLUSTER] = { 25 .sub_element_count = MAX_CORE_PER_CLUSTER, 26 .data = &(struct mod_perf_controller_cluster_config) { 27 .performance_driver_id = FWK_ID_ELEMENT_INIT(FWK_MODULE_IDX_TEST_PERF_CONT_DRVR,TEST_BIG_CLUSTER), 28 .performance_driver_api_id = FWK_ID_API_INIT(FWK_MODULE_IDX_TEST_PERF_CONT_DRVR,TEST_BIG_CLUSTER), 29 .power_model_id = FWK_ID_ELEMENT_INIT(FWK_MODULE_IDX_TEST_PERF_MODEL_DRVR,TEST_BIG_CLUSTER), 30 .power_model_api_id = FWK_ID_API_INIT(FWK_MODULE_IDX_TEST_PERF_MODEL_DRVR,TEST_BIG_CLUSTER), 31 }, 32 }, 33 [TEST_LITTLE_CLUSTER] = { 34 .sub_element_count = 1U, 35 .data = &(struct mod_perf_controller_cluster_config) { 36 .performance_driver_id = FWK_ID_ELEMENT_INIT(FWK_MODULE_IDX_TEST_PERF_CONT_DRVR,TEST_LITTLE_CLUSTER), 37 .performance_driver_api_id = FWK_ID_API_INIT(FWK_MODULE_IDX_TEST_PERF_CONT_DRVR,TEST_LITTLE_CLUSTER), 38 .power_model_id = FWK_ID_ELEMENT_INIT(FWK_MODULE_IDX_TEST_PERF_MODEL_DRVR,TEST_LITTLE_CLUSTER), 39 .power_model_api_id = FWK_ID_API_INIT(FWK_MODULE_IDX_TEST_PERF_MODEL_DRVR,TEST_LITTLE_CLUSTER), 40 }, 41 }, 42 }; 43