125ac8794SLouis Mayencourt /* 2*9e3f4093SYann Gautier * Copyright (c) 2019-2021, Arm Limited. All rights reserved. 325ac8794SLouis Mayencourt * 425ac8794SLouis Mayencourt * SPDX-License-Identifier: BSD-3-Clause 525ac8794SLouis Mayencourt */ 625ac8794SLouis Mayencourt 725ac8794SLouis Mayencourt #ifndef FCONF_DYN_CFG_GETTER_H 825ac8794SLouis Mayencourt #define FCONF_DYN_CFG_GETTER_H 925ac8794SLouis Mayencourt 1025ac8794SLouis Mayencourt #include <lib/fconf/fconf.h> 1125ac8794SLouis Mayencourt 12*9e3f4093SYann Gautier #define FCONF_INVALID_IDX 0xFFFFFFFFU 13*9e3f4093SYann Gautier 1425ac8794SLouis Mayencourt /* Dynamic configuration related getter */ 1525ac8794SLouis Mayencourt #define dyn_cfg__dtb_getter(id) dyn_cfg_dtb_info_getter(id) 1625ac8794SLouis Mayencourt 1725ac8794SLouis Mayencourt struct dyn_cfg_dtb_info_t { 1825ac8794SLouis Mayencourt uintptr_t config_addr; 19a4ff9d7eSManish V Badarkhe uint32_t config_max_size; 2025ac8794SLouis Mayencourt unsigned int config_id; 2125ac8794SLouis Mayencourt }; 2225ac8794SLouis Mayencourt 23*9e3f4093SYann Gautier unsigned int dyn_cfg_dtb_info_get_index(unsigned int config_id); 2425ac8794SLouis Mayencourt struct dyn_cfg_dtb_info_t *dyn_cfg_dtb_info_getter(unsigned int config_id); 2525ac8794SLouis Mayencourt int fconf_populate_dtb_registry(uintptr_t config); 2625ac8794SLouis Mayencourt 27f4417189SManish V Badarkhe /* Set config information in global DTB array */ 28f4417189SManish V Badarkhe void set_config_info(uintptr_t config_addr, uint32_t config_max_size, 29f4417189SManish V Badarkhe unsigned int config_id); 3082869675SManish V Badarkhe 3125ac8794SLouis Mayencourt #endif /* FCONF_DYN_CFG_GETTER_H */ 32