platform_helpers.S 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /*
  2. * Copyright (c) 2016-2022, ARM Limited and Contributors. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #include <arch.h>
  7. #include <asm_macros.S>
  8. .weak plat_report_exception
  9. .weak plat_report_prefetch_abort
  10. .weak plat_report_data_abort
  11. .weak plat_reset_handler
  12. .weak plat_disable_acp
  13. .weak bl1_plat_prepare_exit
  14. .weak platform_mem_init
  15. .weak plat_panic_handler
  16. /* -----------------------------------------------------
  17. * Placeholder function which should be redefined by
  18. * each platform.
  19. * -----------------------------------------------------
  20. */
  21. func plat_report_exception
  22. bx lr
  23. endfunc plat_report_exception
  24. /* -----------------------------------------------------
  25. * Placeholder function which should be redefined by
  26. * each platform.
  27. * -----------------------------------------------------
  28. */
  29. func plat_report_prefetch_abort
  30. bx lr
  31. endfunc plat_report_prefetch_abort
  32. /* -----------------------------------------------------
  33. * Placeholder function which should be redefined by
  34. * each platform.
  35. * -----------------------------------------------------
  36. */
  37. func plat_report_data_abort
  38. bx lr
  39. endfunc plat_report_data_abort
  40. /* -----------------------------------------------------
  41. * Placeholder function which should be redefined by
  42. * each platform.
  43. * -----------------------------------------------------
  44. */
  45. func plat_reset_handler
  46. bx lr
  47. endfunc plat_reset_handler
  48. /* -----------------------------------------------------
  49. * Placeholder function which should be redefined by
  50. * each platform.
  51. * -----------------------------------------------------
  52. */
  53. func plat_disable_acp
  54. bx lr
  55. endfunc plat_disable_acp
  56. /* ---------------------------------------------------------------------
  57. * Placeholder function which should be redefined by
  58. * each platform.
  59. * ---------------------------------------------------------------------
  60. */
  61. func platform_mem_init
  62. bx lr
  63. endfunc platform_mem_init
  64. /* -----------------------------------------------------
  65. * void bl1_plat_prepare_exit(entry_point_info_t *ep_info);
  66. * Called before exiting BL1. Default: do nothing
  67. * -----------------------------------------------------
  68. */
  69. func bl1_plat_prepare_exit
  70. bx lr
  71. endfunc bl1_plat_prepare_exit
  72. /* -----------------------------------------------------
  73. * void plat_panic_handler(void) __dead2;
  74. * Endless loop by default.
  75. * -----------------------------------------------------
  76. */
  77. func plat_panic_handler
  78. b plat_panic_handler
  79. endfunc plat_panic_handler