X-Git-Url: https://git.kernelconcepts.de/?a=blobdiff_plain;f=arch%2Farc%2Fkernel%2Fentry-arcv2.S;h=cbfec79137bf77735fa675d0eb2be57da217ba63;hb=7c916e1ef6a6da802e2856b78dd5c15caa86ba6e;hp=445e63a10754fbdb0be82663af03f489282cfce5;hpb=f5a8160c1e055c0fd8d16a5b3ac97c638365b0db;p=karo-tx-linux.git diff --git a/arch/arc/kernel/entry-arcv2.S b/arch/arc/kernel/entry-arcv2.S index 445e63a10754..cbfec79137bf 100644 --- a/arch/arc/kernel/entry-arcv2.S +++ b/arch/arc/kernel/entry-arcv2.S @@ -91,6 +91,25 @@ ENTRY(EV_DCError) flag 1 END(EV_DCError) +; --------------------------------------------- +; Memory Error Exception Handler +; - Unlike ARCompact, handles Bus errors for both User/Kernel mode, +; Instruction fetch or Data access, under a single Exception Vector +; --------------------------------------------- + +ENTRY(mem_service) + + EXCEPTION_PROLOGUE + + lr r0, [efa] + mov r1, sp + + FAKE_RET_FROM_EXCPN + + bl do_memory_error + b ret_from_exception +END(mem_service) + ENTRY(EV_Misaligned) EXCEPTION_PROLOGUE