1 /*
2  * Arm SCP/MCP Software
3  * Copyright (c) 2022, Arm Limited and Contributors. All rights reserved.
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 #include <scp_platform_mhu.h>
9 
10 #include <mod_mhu2.h>
11 #include <mod_tc2_bl1.h>
12 #include <mod_transport.h>
13 
14 #include <fwk_element.h>
15 #include <fwk_id.h>
16 #include <fwk_macros.h>
17 #include <fwk_module.h>
18 
19 static const struct fwk_element transport_element_table[] = {
20     [0] = {
21         .name = "SCP2RSS_EVENT",
22         .data = &((
23             struct mod_transport_channel_config) {
24             .transport_type = MOD_TRANSPORT_CHANNEL_TRANSPORT_TYPE_NONE,
25             .signal_api_id = FWK_ID_API_INIT(
26                                 FWK_MODULE_IDX_TC2_BL1,
27                                 MOD_TC2_BL1_API_TRANSPORT_FIRMWARE_SIGNAL_INPUT),
28             .driver_id =
29                 FWK_ID_SUB_ELEMENT_INIT(
30                     FWK_MODULE_IDX_MHU2,
31                     0,
32                     0),
33             .driver_api_id =
34                 FWK_ID_API_INIT(
35                     FWK_MODULE_IDX_MHU2,
36                     MOD_MHU2_API_IDX_TRANSPORT_DRIVER),
37         }),
38     },
39     [1] = { 0 },
40 };
41 
transport_get_element_table(fwk_id_t module_id)42 static const struct fwk_element *transport_get_element_table(fwk_id_t module_id)
43 {
44     return transport_element_table;
45 }
46 
47 const struct fwk_module_config config_transport = {
48     .elements = FWK_MODULE_DYNAMIC_ELEMENTS(transport_get_element_table),
49 };
50