xref: /rk3399_ARM-atf/include/lib/fconf/fconf_tbbr_getter.h (revision 4c700c1563aff7b51df95f17e952e050b9b4e37f)
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