1 /*
2  * Arm SCP/MCP Software
3  * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #include <morello_mcp_mhu.h>
9 #include <morello_mcp_mmap.h>
10 
11 #include <mod_mhu.h>
12 
13 #include <fwk_element.h>
14 #include <fwk_id.h>
15 #include <fwk_module.h>
16 
17 #include <fmw_cmsis.h>
18 
19 static const struct fwk_element
20     mhu_element_table[MORELLO_MHU_DEVICE_IDX_COUNT + 1] = {
21         [MORELLO_MHU_DEVICE_IDX_S_SCP] = {
22             .name = "MHU_S_SCP",
23             .sub_element_count = 1,
24             .data = &((struct mod_mhu_device_config){
25                 .irq = MHU_SCP_SEC_IRQ,
26                 .in = MHU_SCP_TO_MCP_S,
27                 .out = MHU_MCP_TO_SCP_S,
28             }),
29         },
30         [MORELLO_MHU_DEVICE_IDX_COUNT] = { 0 },
31 };
32 
mhu_get_element_table(fwk_id_t module_id)33 static const struct fwk_element *mhu_get_element_table(fwk_id_t module_id)
34 {
35     return mhu_element_table;
36 }
37 
38 struct fwk_module_config config_morello_mhu = {
39     .elements = FWK_MODULE_DYNAMIC_ELEMENTS(mhu_get_element_table),
40 };
41