xref: /rk3399_ARM-atf/bl2/bl2_private.h (revision 09d40e0e08283a249e7dce0e106c07c5141f9b7e)
1 /*
2  * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef BL2_PRIVATE_H
8 #define BL2_PRIVATE_H
9 
10 #if BL2_IN_XIP_MEM
11 
12 #include <stdint.h>
13 
14 /*******************************************************************************
15  * Declarations of linker defined symbols which will tell us where BL2 lives
16  * in Trusted ROM and RAM
17  ******************************************************************************/
18 extern uintptr_t __BL2_ROM_END__;
19 #define BL2_ROM_END (uintptr_t)(&__BL2_ROM_END__)
20 
21 extern uintptr_t __BL2_RAM_START__;
22 extern uintptr_t __BL2_RAM_END__;
23 #define BL2_RAM_BASE (uintptr_t)(&__BL2_RAM_START__)
24 #define BL2_RAM_LIMIT (uintptr_t)(&__BL2_RAM_END__)
25 #endif
26 
27 /******************************************
28  * Forward declarations
29  *****************************************/
30 struct entry_point_info;
31 
32 /******************************************
33  * Function prototypes
34  *****************************************/
35 void bl2_arch_setup(void);
36 struct entry_point_info *bl2_load_images(void);
37 void bl2_run_next_image(const struct entry_point_info *bl_ep_info);
38 
39 #endif /* BL2_PRIVATE_H */
40