blob: 7fd17bfe474fdb564e7aed2a0a7730d7ae48d554 [file] [log] [blame]
Dan Handleybcd60ba2014-04-17 18:53:42 +01001/*
Roberto Vargas05712702018-02-12 12:36:17 +00002 * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
Dan Handleybcd60ba2014-04-17 18:53:42 +01003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Dan Handleybcd60ba2014-04-17 18:53:42 +01005 */
6
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +00007#ifndef BL2_PRIVATE_H
8#define BL2_PRIVATE_H
Dan Handleybcd60ba2014-04-17 18:53:42 +01009
Jiafei Pan43a7bf42018-03-21 07:20:09 +000010#if BL2_IN_XIP_MEM
11/*******************************************************************************
12 * Declarations of linker defined symbols which will tell us where BL2 lives
13 * in Trusted ROM and RAM
14 ******************************************************************************/
15extern uintptr_t __BL2_ROM_END__;
16#define BL2_ROM_END (uintptr_t)(&__BL2_ROM_END__)
17
18extern uintptr_t __BL2_RAM_START__;
19extern uintptr_t __BL2_RAM_END__;
20#define BL2_RAM_BASE (uintptr_t)(&__BL2_RAM_START__)
21#define BL2_RAM_LIMIT (uintptr_t)(&__BL2_RAM_END__)
22#endif
23
Dan Handleybcd60ba2014-04-17 18:53:42 +010024/******************************************
Yatharth Kochar51f76f62016-09-12 16:10:33 +010025 * Forward declarations
26 *****************************************/
27struct entry_point_info;
28
29/******************************************
Dan Handleybcd60ba2014-04-17 18:53:42 +010030 * Function prototypes
31 *****************************************/
Dan Handleya17fefa2014-05-14 12:38:32 +010032void bl2_arch_setup(void);
Yatharth Kochar51f76f62016-09-12 16:10:33 +010033struct entry_point_info *bl2_load_images(void);
Roberto Vargas05712702018-02-12 12:36:17 +000034void bl2_run_next_image(const struct entry_point_info *bl_ep_info);
Dan Handleybcd60ba2014-04-17 18:53:42 +010035
Antonio Nino Diaz5eb88372018-11-08 10:20:19 +000036#endif /* BL2_PRIVATE_H */