aboutsummaryrefslogtreecommitdiff
path: root/src/interrupts/interrupt_vector.S
diff options
context:
space:
mode:
authorvetch <vetch97@gmail.com>2020-01-13 12:40:38 +0100
committervetch <vetch97@gmail.com>2020-01-13 12:40:38 +0100
commit1af7591e37d09ddcd734ea07d0e999cf61c8bc5e (patch)
treea56c73c9eddeb148baffc3a31bf50edbbeb31074 /src/interrupts/interrupt_vector.S
parent300cf770698142b636da867b7e04bf2d6ae9baa4 (diff)
downloadrpi-MMU-example-1af7591e37d09ddcd734ea07d0e999cf61c8bc5e.tar.gz
rpi-MMU-example-1af7591e37d09ddcd734ea07d0e999cf61c8bc5e.zip
Great Reorganisation, modify structure and makefile
Diffstat (limited to 'src/interrupts/interrupt_vector.S')
-rw-r--r--src/interrupts/interrupt_vector.S56
1 files changed, 0 insertions, 56 deletions
diff --git a/src/interrupts/interrupt_vector.S b/src/interrupts/interrupt_vector.S
deleted file mode 100644
index 1ec80f7..0000000
--- a/src/interrupts/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