1/* 2 * Renesas SCP/MCP Software 3 * Copyright (c) 2020-2021, Renesas Electronics Corporation. All rights reserved. 4 * 5 * SPDX-License-Identifier: BSD-3-Clause 6 */ 7 8 .globl _vector_table 9 .globl _freertos_vector_table 10 .extern _entrypoint 11 12.section .vectors, "ax" 13.balign 2048 14_vector_table: 15 16.set VBAR, _vector_table 17 /* ----------------------------------------------------- 18 * Current EL with SP0 : 0x0 - 0x200 (at EL3) 19 * ----------------------------------------------------- 20 */ 21.org VBAR 22 b _entrypoint 23.org (VBAR + 0x80) 24 b . 25.org (VBAR + 0x100) 26 b . 27.org (VBAR + 0x180) 28 b . 29 30 /* ----------------------------------------------------- 31 * Current EL with SPx: 0x200 - 0x400 (at EL3) 32 * ----------------------------------------------------- 33 */ 34.org (VBAR + 0x200) 35 b . 36.org (VBAR + 0x280) 37 b . 38.org (VBAR + 0x300) 39 b . 40.org (VBAR + 0x380) 41 b . 42 43 /* ----------------------------------------------------- 44 * Lower EL using AArch64 : 0x400 - 0x600 (at EL3) 45 * ----------------------------------------------------- 46 */ 47.org (VBAR + 0x400) 48 b . 49.org (VBAR + 0x480) 50 b . 51.org (VBAR + 0x500) 52 b . 53.org (VBAR + 0x580) 54 b . 55 56 /* ----------------------------------------------------- 57 * Lower EL using AArch32 : 0x600 - 0x800 (at EL3) 58 * ----------------------------------------------------- 59 */ 60.org (VBAR + 0x600) 61 b . 62.org (VBAR + 0x680) 63 b . 64.org (VBAR + 0x700) 65 b . 66.org (VBAR + 0x780) 67 b . 68 69/****************************************************************************** 70 * Vector table to use when FreeRTOS is running. 71 *****************************************************************************/ 72.set FREERTOS_VBAR, (VBAR+0x0800) 73 74 /* ----------------------------------------------------- 75 * Current EL with SP0 : 0x0 - 0x200 (at EL3) 76 * ----------------------------------------------------- 77 */ 78.org(FREERTOS_VBAR) 79_freertos_vector_table: 80 b FreeRTOS_SWI_Handler 81.org (FREERTOS_VBAR + 0x80) 82 b FreeRTOS_IRQ_Handler 83.org (FREERTOS_VBAR + 0x100) 84 b FreeRTOS_IRQ_Handler 85.org (FREERTOS_VBAR + 0x180) 86 b . 87 88 /* ----------------------------------------------------- 89 * Current EL with SPx: 0x200 - 0x400 (at EL3) 90 * ----------------------------------------------------- 91 */ 92.org (FREERTOS_VBAR + 0x200) 93 b FreeRTOS_SWI_Handler 94.org (FREERTOS_VBAR + 0x280) 95 b FreeRTOS_IRQ_Handler 96.org (FREERTOS_VBAR + 0x300) 97 b FreeRTOS_IRQ_Handler 98.org (FREERTOS_VBAR + 0x380) 99 b . 100 101 /* ----------------------------------------------------- 102 * Lower EL using AArch64 : 0x400 - 0x600 (at EL3) 103 * ----------------------------------------------------- 104 */ 105.org (FREERTOS_VBAR + 0x400) 106 b . 107.org (FREERTOS_VBAR + 0x480) 108 b . 109.org (FREERTOS_VBAR + 0x500) 110 b . 111.org (FREERTOS_VBAR + 0x580) 112 b . 113 114 /* ----------------------------------------------------- 115 * Lower EL using AArch32 : 0x600 - 0x800 (at EL3) 116 * ----------------------------------------------------- 117 */ 118.org (FREERTOS_VBAR + 0x600) 119 b . 120.org (FREERTOS_VBAR + 0x680) 121 b . 122.org (FREERTOS_VBAR + 0x700) 123 b . 124.org (FREERTOS_VBAR + 0x780) 125 b . 126 127 .end 128