1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * arch/arm/include/asm/glue-df.h 4 * 5 * Copyright (C) 1997-1999 Russell King 6 * Copyright (C) 2000-2002 Deep Blue Solutions Ltd. 7 */ 8 #ifndef ASM_GLUE_DF_H 9 #define ASM_GLUE_DF_H 10 11 #include <asm/glue.h> 12 13 /* 14 * Data Abort Model 15 * ================ 16 * 17 * We have the following to choose from: 18 * arm7 - ARM7 style 19 * v4_early - ARMv4 without Thumb early abort handler 20 * v4t_late - ARMv4 with Thumb late abort handler 21 * v4t_early - ARMv4 with Thumb early abort handler 22 * v5t_early - ARMv5 with Thumb early abort handler 23 * v5tj_early - ARMv5 with Thumb and Java early abort handler 24 * xscale - ARMv5 with Thumb with Xscale extensions 25 * v6_early - ARMv6 generic early abort handler 26 * v7_early - ARMv7 generic early abort handler 27 */ 28 #undef CPU_DABORT_HANDLER 29 #undef MULTI_DABORT 30 31 #ifdef CONFIG_CPU_ABRT_EV4 32 # ifdef CPU_DABORT_HANDLER 33 # define MULTI_DABORT 1 34 # else 35 # define CPU_DABORT_HANDLER v4_early_abort 36 # endif 37 #endif 38 39 #ifdef CONFIG_CPU_ABRT_LV4T 40 # ifdef CPU_DABORT_HANDLER 41 # define MULTI_DABORT 1 42 # else 43 # define CPU_DABORT_HANDLER v4t_late_abort 44 # endif 45 #endif 46 47 #ifdef CONFIG_CPU_ABRT_EV4T 48 # ifdef CPU_DABORT_HANDLER 49 # define MULTI_DABORT 1 50 # else 51 # define CPU_DABORT_HANDLER v4t_early_abort 52 # endif 53 #endif 54 55 #ifdef CONFIG_CPU_ABRT_EV5T 56 # ifdef CPU_DABORT_HANDLER 57 # define MULTI_DABORT 1 58 # else 59 # define CPU_DABORT_HANDLER v5t_early_abort 60 # endif 61 #endif 62 63 #ifdef CONFIG_CPU_ABRT_EV5TJ 64 # ifdef CPU_DABORT_HANDLER 65 # define MULTI_DABORT 1 66 # else 67 # define CPU_DABORT_HANDLER v5tj_early_abort 68 # endif 69 #endif 70 71 #ifdef CONFIG_CPU_ABRT_EV6 72 # ifdef CPU_DABORT_HANDLER 73 # define MULTI_DABORT 1 74 # else 75 # define CPU_DABORT_HANDLER v6_early_abort 76 # endif 77 #endif 78 79 #ifdef CONFIG_CPU_ABRT_EV7 80 # ifdef CPU_DABORT_HANDLER 81 # define MULTI_DABORT 1 82 # else 83 # define CPU_DABORT_HANDLER v7_early_abort 84 # endif 85 #endif 86 87 #ifdef CONFIG_CPU_ABRT_NOMMU 88 # ifdef CPU_DABORT_HANDLER 89 # define MULTI_DABORT 1 90 # else 91 # define CPU_DABORT_HANDLER nommu_early_abort 92 # endif 93 #endif 94 95 #ifndef CPU_DABORT_HANDLER 96 #error Unknown data abort handler type 97 #endif 98 99 #endif 100