diff options
author | Aun-Ali Zaidi <admin@kodeit.net> | 2015-12-10 18:29:55 -0600 |
---|---|---|
committer | Gedare Bloom <gedare@rtems.org> | 2015-12-11 09:20:34 -0500 |
commit | 32c2cd2be1067ebe32cdabccbc8aa16126ae3a32 (patch) | |
tree | 7c4e2f70630f4849308cf2cfe22a796098188e54 /c/src/lib/libbsp/arm/nds/libnds/source/arm9/exceptionHandler.S | |
parent | score: Untangle thread actions (diff) | |
download | rtems-32c2cd2be1067ebe32cdabccbc8aa16126ae3a32.tar.bz2 |
arm/nds: Remove
updates #2450.
Diffstat (limited to 'c/src/lib/libbsp/arm/nds/libnds/source/arm9/exceptionHandler.S')
-rw-r--r-- | c/src/lib/libbsp/arm/nds/libnds/source/arm9/exceptionHandler.S | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/c/src/lib/libbsp/arm/nds/libnds/source/arm9/exceptionHandler.S b/c/src/lib/libbsp/arm/nds/libnds/source/arm9/exceptionHandler.S deleted file mode 100644 index 74711537eb..0000000000 --- a/c/src/lib/libbsp/arm/nds/libnds/source/arm9/exceptionHandler.S +++ /dev/null @@ -1,109 +0,0 @@ -/*--------------------------------------------------------------------------------- - Copyright (C) 2005 - Dave Murphy (WinterMute) - - This software is provided 'as-is', without any express or implied - warranty. In no event will the authors be held liable for any - damages arising from the use of this software. - - Permission is granted to anyone to use this software for any - purpose, including commercial applications, and to alter it and - redistribute it freely, subject to the following restrictions: - - 1. The origin of this software must not be misrepresented; you - must not claim that you wrote the original software. If you use - this software in a product, an acknowledgment in the product - documentation would be appreciated but is not required. - 2. Altered source versions must be plainly marked as such, and - must not be misrepresented as being the original software. - 3. This notice may not be removed or altered from any source - distribution. - ----------------------------------------------------------------------------------*/ - .text - - .arm - -@--------------------------------------------------------------------------------- - .global getCPSR -@--------------------------------------------------------------------------------- -getCPSR: -@--------------------------------------------------------------------------------- - mrs r0,cpsr - bx r14 - -@--------------------------------------------------------------------------------- - .global enterException -@--------------------------------------------------------------------------------- -enterException: -@--------------------------------------------------------------------------------- - // store context - ldr r12,=exceptionRegisters - stmia r12,{r0-r11} - str r13,[r12,#oldStack - exceptionRegisters] - // assign a stack - ldr r13,=exceptionStack - ldr r13,[r13] - - // renable MPU - mrc p15,0,r0,c1,c0,0 - orr r0,r0,#1 - mcr p15,0,r0,c1,c0,0 - - // bios exception stack - ldr r0, =0x027FFD90 - - // grab r15 from bios exception stack - ldr r2,[r0,#8] - str r2,[r12,#reg15 - exceptionRegisters] - - // grab stored r12 and SPSR from bios exception stack - ldmia r0,{r2,r12} - - - // grab banked registers from correct processor mode - mrs r3,cpsr - bic r4,r3,#0x1F - and r2,r2,#0x1F - orr r4,r4,r2 - msr cpsr,r4 - ldr r0,=reg12 - stmia r0,{r12-r14} - msr cpsr,r3 - - // Get C function & call it - ldr r12,=exceptionC - ldr r12,[r12,#0] - bxne r12 - - // restore registers - ldr r12,=exceptionRegisters - ldmia r12,{r0-r11} - ldr r13,[r12,#oldStack - exceptionRegisters] - - // return through bios - mov pc,lr - -@--------------------------------------------------------------------------------- - .global exceptionC -@--------------------------------------------------------------------------------- -exceptionC: -@--------------------------------------------------------------------------------- - .word 0x00000000 -@--------------------------------------------------------------------------------- - .global exceptionStack -@--------------------------------------------------------------------------------- -exceptionStack: -@--------------------------------------------------------------------------------- - .word 0x00000000 -@--------------------------------------------------------------------------------- - .global exceptionRegisters -@--------------------------------------------------------------------------------- -exceptionRegisters: -@--------------------------------------------------------------------------------- - .space 12 * 4 -reg12: .word 0 -reg13: .word 0 -reg14: .word 0 -reg15: .word 0 -oldStack: .word 0 |