blob: 08c555d902711d7fb9f2f550e53619de38cfb9d2 [file] [log] [blame]
Achin Gupta4f6ad662013-10-25 09:08:21 +01001/*
Roberto Vargas9fb8af32018-02-12 12:36:17 +00002 * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
Achin Gupta4f6ad662013-10-25 09:08:21 +01003 *
dp-arm82cb2c12017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Achin Gupta4f6ad662013-10-25 09:08:21 +01005 */
6
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +00007#ifndef BL31_H
8#define BL31_H
Achin Gupta4f6ad662013-10-25 09:08:21 +01009
Dan Handley97043ac2014-04-09 13:14:54 +010010#include <stdint.h>
Achin Gupta4f6ad662013-10-25 09:08:21 +010011
Achin Gupta4f6ad662013-10-25 09:08:21 +010012/*******************************************************************************
13 * Function prototypes
14 ******************************************************************************/
Dan Handleyc6bc0712014-05-14 12:38:32 +010015void bl31_next_el_arch_setup(uint32_t security_state);
Roberto Vargas9fb8af32018-02-12 12:36:17 +000016void bl31_set_next_image_type(uint32_t security_state);
Dan Handleyc6bc0712014-05-14 12:38:32 +010017uint32_t bl31_get_next_image_type(void);
Juan Castillo4f2104f2014-06-13 17:05:10 +010018void bl31_prepare_next_image_entry(void);
Roberto Vargas9fb8af32018-02-12 12:36:17 +000019void bl31_register_bl32_init(int32_t (*func)(void));
Soby Mathewcf0b1492016-04-29 19:01:30 +010020void bl31_warm_entrypoint(void);
Roberto Vargas7fabe1a2018-02-12 12:36:17 +000021void bl31_main(void);
22void bl31_lib_init(void);
Dan Handley97043ac2014-04-09 13:14:54 +010023
Antonio Nino Diazc3cf06f2018-11-08 10:20:19 +000024#endif /* BL31_H */