1ab1981dbSLouis Mayencourt /* 2*4c700c15SGovindraj Raja * Copyright (c) 2019-2020, Arm Limited. All rights reserved. 3ab1981dbSLouis Mayencourt * 4ab1981dbSLouis Mayencourt * SPDX-License-Identifier: BSD-3-Clause 5ab1981dbSLouis Mayencourt */ 6ab1981dbSLouis Mayencourt 7ab1981dbSLouis Mayencourt #ifndef FCONF_TBBR_GETTER_H 8ab1981dbSLouis Mayencourt #define FCONF_TBBR_GETTER_H 9ab1981dbSLouis Mayencourt 106f8a2565SSandrine Bailleux #include <assert.h> 116f8a2565SSandrine Bailleux 12ab1981dbSLouis Mayencourt #include <lib/fconf/fconf.h> 13ab1981dbSLouis Mayencourt 14ab1981dbSLouis Mayencourt /* TBBR related getter */ 156f8a2565SSandrine Bailleux #define tbbr__cot_getter(id) __extension__ ({ \ 166f8a2565SSandrine Bailleux assert((id) < cot_desc_size); \ 176f8a2565SSandrine Bailleux cot_desc_ptr[id]; \ 186f8a2565SSandrine Bailleux }) 19ab1981dbSLouis Mayencourt 20ce852841SLouis Mayencourt #define tbbr__dyn_config_getter(id) tbbr_dyn_config.id 21ce852841SLouis Mayencourt 22ce852841SLouis Mayencourt struct tbbr_dyn_config_t { 23ce852841SLouis Mayencourt uint32_t disable_auth; 246c972317SLouis Mayencourt void *mbedtls_heap_addr; 256c972317SLouis Mayencourt size_t mbedtls_heap_size; 26ce852841SLouis Mayencourt }; 27ce852841SLouis Mayencourt 28ce852841SLouis Mayencourt extern struct tbbr_dyn_config_t tbbr_dyn_config; 29ce852841SLouis Mayencourt 30ce852841SLouis Mayencourt int fconf_populate_tbbr_dyn_config(uintptr_t config); 31ce852841SLouis Mayencourt 32ab1981dbSLouis Mayencourt #endif /* FCONF_TBBR_GETTER_H */ 33