aboutsummaryrefslogtreecommitdiff
path: root/interrupt_vector.S
diff options
context:
space:
mode:
authorvetch <vetch97@gmail.com>2020-01-04 19:37:32 +0100
committervetch <vetch97@gmail.com>2020-01-04 19:37:32 +0100
commit615e3302c9dd358bb64cd56d1f3814ad8d5df84d (patch)
tree07b0469807eb3bff7ff7d3f3576858642bc66675 /interrupt_vector.S
parent885a097da42317f48cead2d91c0e0240066943a8 (diff)
downloadrpi-MMU-example-615e3302c9dd358bb64cd56d1f3814ad8d5df84d.tar.gz
rpi-MMU-example-615e3302c9dd358bb64cd56d1f3814ad8d5df84d.zip
rearranged files, updated makefile
Diffstat (limited to 'interrupt_vector.S')
-rw-r--r--interrupt_vector.S56
1 files changed, 0 insertions, 56 deletions
diff --git a/interrupt_vector.S b/interrupt_vector.S
deleted file mode 100644
index 1ec80f7..0000000
--- a/interrupt_vector.S
+++ /dev/null
@@ -1,56 +0,0 @@
-_interrupt_vectors:
- b reset_handler_caller
- b undef_handler_caller
- b svc_handler_caller
- b abort_handler_caller
- b abort_handler_caller
- b generic_handler_caller
- b irq_handler_caller
- b fiq_handler_caller
-
-reset_handler_caller:
- ldr sp, =_supervisor_stack_top
- ldr r5, =reset_handler
- bx r5
-
-undef_handler_caller:
- ldr sp, =_supervisor_stack_top
- ldr r5, =undefined_instruction_vector
- bx r5
-
-svc_handler_caller:
- ldr sp, =_supervisor_stack_top
- push {r0-r12, lr}
- mov r0, sp
- ldr r5, =supervisor_call_handler
- blx r5
- ldm sp!, {r0-r12, pc} ^
-
-abort_handler_caller:
- ldr sp, =_supervisor_stack_top
- ldr r5, =abort_handler
- bx r5
-
-generic_handler_caller:
- ldr sp, =_supervisor_stack_top
- ldr r5, =generic_handler
- bx r5
-
-irq_handler_caller:
- ldr sp, =_irq_stack_top
- sub lr, #4
- push {r0-r12, lr}
- mov r0, sp
- ldr r3, =irq_handler
- blx r3
- ldm sp!, {r0-r12, pc} ^
-
-fiq_handler_caller:
- ldr sp, =_fiq_stack_top
- ldr r5, =fiq_handler
- bx r5
-
-irq:
- mov sp, #0x8000
- ldr r5, =abort_handler
- subs pc,lr,#4