1*4882a593Smuzhiyun/* SPDX-License-Identifier: GPL-2.0 */ 2*4882a593Smuzhiyun#include <linux/linkage.h> 3*4882a593Smuzhiyun#include <asm/assembler.h> 4*4882a593Smuzhiyun/* 5*4882a593Smuzhiyun * Function: nommu_early_abort 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * Params : r2 = pt_regs 8*4882a593Smuzhiyun * : r4 = aborted context pc 9*4882a593Smuzhiyun * : r5 = aborted context psr 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun * Returns : r4 - r11, r13 preserved 12*4882a593Smuzhiyun * 13*4882a593Smuzhiyun * Note: There is no FSR/FAR on !CPU_CP15_MMU cores. 14*4882a593Smuzhiyun * Just fill zero into the registers. 15*4882a593Smuzhiyun */ 16*4882a593Smuzhiyun .align 5 17*4882a593SmuzhiyunENTRY(nommu_early_abort) 18*4882a593Smuzhiyun mov r0, #0 @ clear r0, r1 (no FSR/FAR) 19*4882a593Smuzhiyun mov r1, #0 20*4882a593Smuzhiyun b do_DataAbort 21*4882a593SmuzhiyunENDPROC(nommu_early_abort) 22