1#------------------------------------------------------------------------------ 2# 3# Copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR> 4# 5# This program and the accompanying materials 6# are licensed and made available under the terms and conditions of the BSD License 7# which accompanies this distribution. The full text of the license may be found at 8# http://opensource.org/licenses/bsd-license.php 9# 10# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12# 13#------------------------------------------------------------------------------ 14 15#include <Chipset/AArch64.h> 16 17GCC_ASM_IMPORT(DefaultExceptionHandler) 18 19.text 20VECTOR_BASE(DebugAgentVectorTable) 21 22// 23// Current EL with SP0 : 0x0 - 0x180 24// 25VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SP0_SYNC) 26ASM_PFX(SynchronousExceptionSP0): 27 b ASM_PFX(SynchronousExceptionSP0) 28 29VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SP0_IRQ) 30ASM_PFX(IrqSP0): 31 b ASM_PFX(IrqSP0) 32 33VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SP0_FIQ) 34ASM_PFX(FiqSP0): 35 b ASM_PFX(FiqSP0) 36 37VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SP0_SERR) 38ASM_PFX(SErrorSP0): 39 b ASM_PFX(SErrorSP0) 40 41// 42// Current EL with SPx: 0x200 - 0x380 43// 44VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SPx_SYNC) 45ASM_PFX(SynchronousExceptionSPx): 46 b ASM_PFX(SynchronousExceptionSPx) 47 48VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SPx_IRQ) 49ASM_PFX(IrqSPx): 50 b ASM_PFX(IrqSPx) 51 52VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SPx_FIQ) 53ASM_PFX(FiqSPx): 54 b ASM_PFX(FiqSPx) 55 56VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_CUR_SPx_SERR) 57ASM_PFX(SErrorSPx): 58 b ASM_PFX(SErrorSPx) 59 60/* Lower EL using AArch64 : 0x400 - 0x580 */ 61VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A64_SYNC) 62ASM_PFX(SynchronousExceptionA64): 63 b ASM_PFX(SynchronousExceptionA64) 64 65VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A64_IRQ) 66ASM_PFX(IrqA64): 67 b ASM_PFX(IrqA64) 68 69VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A64_FIQ) 70ASM_PFX(FiqA64): 71 b ASM_PFX(FiqA64) 72 73VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A64_SERR) 74ASM_PFX(SErrorA64): 75 b ASM_PFX(SErrorA64) 76 77// 78// Lower EL using AArch32 : 0x600 - 0x780 79// 80VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A32_SYNC) 81ASM_PFX(SynchronousExceptionA32): 82 b ASM_PFX(SynchronousExceptionA32) 83 84VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A32_IRQ) 85ASM_PFX(IrqA32): 86 b ASM_PFX(IrqA32) 87 88VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A32_FIQ) 89ASM_PFX(FiqA32): 90 b ASM_PFX(FiqA32) 91 92VECTOR_ENTRY(DebugAgentVectorTable, ARM_VECTOR_LOW_A32_SERR) 93ASM_PFX(SErrorA32): 94 b ASM_PFX(SErrorA32) 95 96VECTOR_END(DebugAgentVectorTable) 97