1 /* 2 * Arm SCP/MCP Software 3 * Copyright (c) 2020-2021, Arm Limited and Contributors. All rights reserved. 4 * 5 * SPDX-License-Identifier: BSD-3-Clause 6 */ 7 8 #include <fwk_id.h> 9 #include <fwk_macros.h> 10 #include <fwk_module.h> 11 #include <fwk_module_idx.h> 12 13 #include <juno_scmi.h> 14 #include <mod_scmi_reset_domain.h> 15 #include <mod_juno_reset_domain.h> 16 #include <mod_reset_domain.h> 17 18 static const struct mod_scmi_reset_domain_device agent_device_table_ospm[] = { 19 [JUNO_RESET_DOMAIN_IDX_UART] = { 20 .element_id = 21 FWK_ID_ELEMENT_INIT(FWK_MODULE_IDX_RESET_DOMAIN, 22 JUNO_RESET_DOMAIN_IDX_UART), 23 .permissions = MOD_SCMI_RESET_DOMAIN_PERM_ATTRIBUTES | 24 MOD_SCMI_RESET_DOMAIN_PERM_RESET, 25 }, 26 }; 27 28 static const struct mod_scmi_reset_domain_agent agent_table[] = { 29 [JUNO_SCMI_AGENT_IDX_PSCI] = { 0 /* No access */ }, 30 [JUNO_SCMI_AGENT_IDX_OSPM] = { 31 .device_table = agent_device_table_ospm, 32 .agent_domain_count = FWK_ARRAY_SIZE(agent_device_table_ospm), 33 }, 34 }; 35 36 struct fwk_module_config config_scmi_reset_domain = { 37 .data = &((struct mod_scmi_reset_domain_config) { 38 .agent_table = agent_table, 39 .agent_count = FWK_ARRAY_SIZE(agent_table), 40 }), 41 }; 42