1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 3 #ifndef __BL31_H__ 4 #define __BL31_H__ 5 6 #include <types.h> 7 8 #include <arm-trusted-firmware/include/export/lib/bl_aux_params/bl_aux_params_exp.h> 9 10 /* Load and enter BL31, set it up to exit to payload according to arguments. */ 11 void run_bl31(u64 payload_entry, u64 payload_arg0, u64 payload_spsr); 12 13 /* Return platform-specific bl31_plat_params. SoCs should avoid overriding this 14 and stick with the default BL aux parameter framework if possible. */ 15 void *soc_get_bl31_plat_params(void); 16 17 /* Add a BL aux parameter to the list to be passed to BL31. Only works for SoCs 18 that use the default soc_get_bl31_plat_params() implementation. */ 19 void register_bl31_aux_param(struct bl_aux_param_header *param); 20 21 #endif /* __BL31_H__ */ 22