183d290c5STom Rini/* SPDX-License-Identifier: GPL-2.0+ */ 212d8a729Srev13@wp.pl/* 312d8a729Srev13@wp.pl * (C) Copyright 2015 45be93569SKamil Lulko * Kamil Lulko, <kamil.lulko@gmail.com> 512d8a729Srev13@wp.pl */ 612d8a729Srev13@wp.pl 712d8a729Srev13@wp.pl#include <config.h> 8*d22336aaSVikas Manocha#include <asm/assembler.h> 912d8a729Srev13@wp.pl#include <linux/linkage.h> 1012d8a729Srev13@wp.pl 1112d8a729Srev13@wp.pl.type __hard_fault_entry, %function 1212d8a729Srev13@wp.pl__hard_fault_entry: 1312d8a729Srev13@wp.pl mov r0, sp @ pass auto-saved registers as argument 1412d8a729Srev13@wp.pl b do_hard_fault 1512d8a729Srev13@wp.pl 1612d8a729Srev13@wp.pl.type __mm_fault_entry, %function 1712d8a729Srev13@wp.pl__mm_fault_entry: 1812d8a729Srev13@wp.pl mov r0, sp @ pass auto-saved registers as argument 1912d8a729Srev13@wp.pl b do_mm_fault 2012d8a729Srev13@wp.pl 2112d8a729Srev13@wp.pl.type __bus_fault_entry, %function 2212d8a729Srev13@wp.pl__bus_fault_entry: 2312d8a729Srev13@wp.pl mov r0, sp @ pass auto-saved registers as argument 2412d8a729Srev13@wp.pl b do_bus_fault 2512d8a729Srev13@wp.pl 2612d8a729Srev13@wp.pl.type __usage_fault_entry, %function 2712d8a729Srev13@wp.pl__usage_fault_entry: 2812d8a729Srev13@wp.pl mov r0, sp @ pass auto-saved registers as argument 2912d8a729Srev13@wp.pl b do_usage_fault 3012d8a729Srev13@wp.pl 3112d8a729Srev13@wp.pl.type __invalid_entry, %function 3212d8a729Srev13@wp.pl__invalid_entry: 3312d8a729Srev13@wp.pl mov r0, sp @ pass auto-saved registers as argument 3412d8a729Srev13@wp.pl b do_invalid_entry 3512d8a729Srev13@wp.pl 3612d8a729Srev13@wp.pl .section .vectors 3712d8a729Srev13@wp.plENTRY(_start) 3812d8a729Srev13@wp.pl .long CONFIG_SYS_INIT_SP_ADDR @ 0 - Reset stack pointer 3912d8a729Srev13@wp.pl .long reset @ 1 - Reset 4012d8a729Srev13@wp.pl .long __invalid_entry @ 2 - NMI 4112d8a729Srev13@wp.pl .long __hard_fault_entry @ 3 - HardFault 4212d8a729Srev13@wp.pl .long __mm_fault_entry @ 4 - MemManage 4312d8a729Srev13@wp.pl .long __bus_fault_entry @ 5 - BusFault 4412d8a729Srev13@wp.pl .long __usage_fault_entry @ 6 - UsageFault 4512d8a729Srev13@wp.pl .long __invalid_entry @ 7 - Reserved 4612d8a729Srev13@wp.pl .long __invalid_entry @ 8 - Reserved 4712d8a729Srev13@wp.pl .long __invalid_entry @ 9 - Reserved 4812d8a729Srev13@wp.pl .long __invalid_entry @ 10 - Reserved 4912d8a729Srev13@wp.pl .long __invalid_entry @ 11 - SVCall 5012d8a729Srev13@wp.pl .long __invalid_entry @ 12 - Debug Monitor 5112d8a729Srev13@wp.pl .long __invalid_entry @ 13 - Reserved 5212d8a729Srev13@wp.pl .long __invalid_entry @ 14 - PendSV 5312d8a729Srev13@wp.pl .long __invalid_entry @ 15 - SysTick 5412d8a729Srev13@wp.pl .rept 255 - 16 5512d8a729Srev13@wp.pl .long __invalid_entry @ 16..255 - External Interrupts 5612d8a729Srev13@wp.pl .endr 57