blob: bdbf80f32d1e4edc98db28bcfec7ed0c5c6b4a4d [file] [log] [blame]
Dan Handley5b827a82014-04-17 18:53:42 +01001/*
Joel Hutton9f85f9e2018-03-21 11:40:57 +00002 * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
Dan Handley5b827a82014-04-17 18:53:42 +01003 *
dp-arm82cb2c12017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Dan Handley5b827a82014-04-17 18:53:42 +01005 */
6
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +00007#ifndef BL1_PRIVATE_H
8#define BL1_PRIVATE_H
Dan Handley5b827a82014-04-17 18:53:42 +01009
Antonio Nino Diaz93c78ed2018-08-16 16:52:57 +010010#include <stdint.h>
Antonio Nino Diaz09d40e02018-12-14 00:18:21 +000011
12#include <lib/utils_def.h>
Yatharth Kochar48bfb882015-10-10 19:06:53 +010013
Sandrine Bailleux8f55dfb2014-06-24 14:02:34 +010014/*******************************************************************************
15 * Declarations of linker defined symbols which will tell us where BL1 lives
Sandrine Bailleuxc02fcc42016-06-15 13:53:50 +010016 * in Trusted ROM and RAM
Sandrine Bailleux8f55dfb2014-06-24 14:02:34 +010017 ******************************************************************************/
Joel Hutton9f85f9e2018-03-21 11:40:57 +000018IMPORT_SYM(uintptr_t, __BL1_ROM_END__, BL1_ROM_END);
Sandrine Bailleuxc02fcc42016-06-15 13:53:50 +010019
Joel Hutton9f85f9e2018-03-21 11:40:57 +000020IMPORT_SYM(uintptr_t, __BL1_RAM_START__, BL1_RAM_BASE);
21IMPORT_SYM(uintptr_t, __BL1_RAM_END__, BL1_RAM_LIMIT);
Sandrine Bailleux8f55dfb2014-06-24 14:02:34 +010022
Dan Handley5b827a82014-04-17 18:53:42 +010023/******************************************
24 * Function prototypes
25 *****************************************/
Dan Handleyc6bc0712014-05-14 12:38:32 +010026void bl1_arch_setup(void);
27void bl1_arch_next_el_setup(void);
Dan Handley5b827a82014-04-17 18:53:42 +010028
Yatharth Kochar7baff112015-10-09 18:06:13 +010029void bl1_prepare_next_image(unsigned int image_id);
Yatharth Kochar48bfb882015-10-10 19:06:53 +010030
31register_t bl1_fwu_smc_handler(unsigned int smc_fid,
32 register_t x1,
33 register_t x2,
34 register_t x3,
35 register_t x4,
36 void *cookie,
37 void *handle,
38 unsigned int flags);
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +000039#endif /* BL1_PRIVATE_H */