1877cf3ffSSoby Mathew/* 2*6dc5979aSYann Gautier * Copyright (c) 2016-2022, ARM Limited and Contributors. All rights reserved. 3877cf3ffSSoby Mathew * 482cb2c1aSdp-arm * SPDX-License-Identifier: BSD-3-Clause 5877cf3ffSSoby Mathew */ 6877cf3ffSSoby Mathew 7877cf3ffSSoby Mathew#include <arch.h> 8877cf3ffSSoby Mathew#include <asm_macros.S> 9877cf3ffSSoby Mathew 10ceada2b5SEtienne Carriere .weak plat_report_exception 11*6dc5979aSYann Gautier .weak plat_report_prefetch_abort 12*6dc5979aSYann Gautier .weak plat_report_data_abort 13877cf3ffSSoby Mathew .weak plat_reset_handler 141a0a3f06SYatharth Kochar .weak plat_disable_acp 15ceada2b5SEtienne Carriere .weak bl1_plat_prepare_exit 16877cf3ffSSoby Mathew .weak platform_mem_init 17877cf3ffSSoby Mathew .weak plat_panic_handler 18877cf3ffSSoby Mathew 19877cf3ffSSoby Mathew /* ----------------------------------------------------- 20877cf3ffSSoby Mathew * Placeholder function which should be redefined by 21877cf3ffSSoby Mathew * each platform. 22877cf3ffSSoby Mathew * ----------------------------------------------------- 23877cf3ffSSoby Mathew */ 24ceada2b5SEtienne Carrierefunc plat_report_exception 25ceada2b5SEtienne Carriere bx lr 26ceada2b5SEtienne Carriereendfunc plat_report_exception 27ceada2b5SEtienne Carriere 28801cf93cSAntonio Nino Diaz /* ----------------------------------------------------- 29801cf93cSAntonio Nino Diaz * Placeholder function which should be redefined by 30801cf93cSAntonio Nino Diaz * each platform. 31801cf93cSAntonio Nino Diaz * ----------------------------------------------------- 32801cf93cSAntonio Nino Diaz */ 33*6dc5979aSYann Gautierfunc plat_report_prefetch_abort 34*6dc5979aSYann Gautier bx lr 35*6dc5979aSYann Gautierendfunc plat_report_prefetch_abort 36*6dc5979aSYann Gautier 37*6dc5979aSYann Gautier /* ----------------------------------------------------- 38*6dc5979aSYann Gautier * Placeholder function which should be redefined by 39*6dc5979aSYann Gautier * each platform. 40*6dc5979aSYann Gautier * ----------------------------------------------------- 41*6dc5979aSYann Gautier */ 42*6dc5979aSYann Gautierfunc plat_report_data_abort 43*6dc5979aSYann Gautier bx lr 44*6dc5979aSYann Gautierendfunc plat_report_data_abort 45*6dc5979aSYann Gautier 46*6dc5979aSYann Gautier /* ----------------------------------------------------- 47*6dc5979aSYann Gautier * Placeholder function which should be redefined by 48*6dc5979aSYann Gautier * each platform. 49*6dc5979aSYann Gautier * ----------------------------------------------------- 50*6dc5979aSYann Gautier */ 51877cf3ffSSoby Mathewfunc plat_reset_handler 52877cf3ffSSoby Mathew bx lr 53877cf3ffSSoby Mathewendfunc plat_reset_handler 54877cf3ffSSoby Mathew 551a0a3f06SYatharth Kochar /* ----------------------------------------------------- 561a0a3f06SYatharth Kochar * Placeholder function which should be redefined by 571a0a3f06SYatharth Kochar * each platform. 581a0a3f06SYatharth Kochar * ----------------------------------------------------- 591a0a3f06SYatharth Kochar */ 601a0a3f06SYatharth Kocharfunc plat_disable_acp 611a0a3f06SYatharth Kochar bx lr 621a0a3f06SYatharth Kocharendfunc plat_disable_acp 631a0a3f06SYatharth Kochar 64877cf3ffSSoby Mathew /* --------------------------------------------------------------------- 65877cf3ffSSoby Mathew * Placeholder function which should be redefined by 66877cf3ffSSoby Mathew * each platform. 67877cf3ffSSoby Mathew * --------------------------------------------------------------------- 68877cf3ffSSoby Mathew */ 69877cf3ffSSoby Mathewfunc platform_mem_init 70877cf3ffSSoby Mathew bx lr 71877cf3ffSSoby Mathewendfunc platform_mem_init 72877cf3ffSSoby Mathew 73877cf3ffSSoby Mathew /* ----------------------------------------------------- 74ceada2b5SEtienne Carriere * void bl1_plat_prepare_exit(entry_point_info_t *ep_info); 75ceada2b5SEtienne Carriere * Called before exiting BL1. Default: do nothing 76ceada2b5SEtienne Carriere * ----------------------------------------------------- 77ceada2b5SEtienne Carriere */ 78ceada2b5SEtienne Carrierefunc bl1_plat_prepare_exit 79ceada2b5SEtienne Carriere bx lr 80ceada2b5SEtienne Carriereendfunc bl1_plat_prepare_exit 81ceada2b5SEtienne Carriere 82ceada2b5SEtienne Carriere /* ----------------------------------------------------- 83877cf3ffSSoby Mathew * void plat_panic_handler(void) __dead2; 84877cf3ffSSoby Mathew * Endless loop by default. 85877cf3ffSSoby Mathew * ----------------------------------------------------- 86877cf3ffSSoby Mathew */ 87877cf3ffSSoby Mathewfunc plat_panic_handler 88877cf3ffSSoby Mathew b plat_panic_handler 89877cf3ffSSoby Mathewendfunc plat_panic_handler 90