blob: 42a74d22f9aa0ad19bd0697eae75d22f45b09c2c [file] [log] [blame]
Dan Handleybcd60ba2014-04-17 18:53:42 +01001/*
Joel Hutton5cc3bc82018-03-21 11:40:57 +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
7#ifndef __BL1_PRIVATE_H__
8#define __BL1_PRIVATE_H__
9
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010010#include <types.h>
Joel Hutton5cc3bc82018-03-21 11:40:57 +000011#include <utils_def.h>
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010012
Sandrine Bailleux467d0572014-06-24 14:02:34 +010013/*******************************************************************************
14 * Declarations of linker defined symbols which will tell us where BL1 lives
Sandrine Bailleux6c2daed2016-06-15 13:53:50 +010015 * in Trusted ROM and RAM
Sandrine Bailleux467d0572014-06-24 14:02:34 +010016 ******************************************************************************/
Joel Hutton5cc3bc82018-03-21 11:40:57 +000017IMPORT_SYM(uintptr_t, __BL1_ROM_END__, BL1_ROM_END);
Sandrine Bailleux6c2daed2016-06-15 13:53:50 +010018
Joel Hutton5cc3bc82018-03-21 11:40:57 +000019IMPORT_SYM(uintptr_t, __BL1_RAM_START__, BL1_RAM_BASE);
20IMPORT_SYM(uintptr_t, __BL1_RAM_END__, BL1_RAM_LIMIT);
Sandrine Bailleux467d0572014-06-24 14:02:34 +010021
Dan Handleybcd60ba2014-04-17 18:53:42 +010022/******************************************
23 * Function prototypes
24 *****************************************/
Dan Handleya17fefa2014-05-14 12:38:32 +010025void bl1_arch_setup(void);
26void bl1_arch_next_el_setup(void);
Dan Handleybcd60ba2014-04-17 18:53:42 +010027
Yatharth Kochara65be2f2015-10-09 18:06:13 +010028void bl1_prepare_next_image(unsigned int image_id);
Yatharth Kochar71c9a5e2015-10-10 19:06:53 +010029
30register_t bl1_fwu_smc_handler(unsigned int smc_fid,
31 register_t x1,
32 register_t x2,
33 register_t x3,
34 register_t x4,
35 void *cookie,
36 void *handle,
37 unsigned int flags);
Dan Handleybcd60ba2014-04-17 18:53:42 +010038#endif /* __BL1_PRIVATE_H__ */