Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  *  arch/arm/include/asm/glue-df.h
0004  *
0005  *  Copyright (C) 1997-1999 Russell King
0006  *  Copyright (C) 2000-2002 Deep Blue Solutions Ltd.
0007  */
0008 #ifndef ASM_GLUE_DF_H
0009 #define ASM_GLUE_DF_H
0010 
0011 #include <asm/glue.h>
0012 
0013 /*
0014  *  Data Abort Model
0015  *  ================
0016  *
0017  *  We have the following to choose from:
0018  *    arm7      - ARM7 style
0019  *    v4_early  - ARMv4 without Thumb early abort handler
0020  *    v4t_late  - ARMv4 with Thumb late abort handler
0021  *    v4t_early - ARMv4 with Thumb early abort handler
0022  *    v5t_early - ARMv5 with Thumb early abort handler
0023  *    v5tj_early    - ARMv5 with Thumb and Java early abort handler
0024  *    xscale    - ARMv5 with Thumb with Xscale extensions
0025  *    v6_early  - ARMv6 generic early abort handler
0026  *    v7_early  - ARMv7 generic early abort handler
0027  */
0028 #undef CPU_DABORT_HANDLER
0029 #undef MULTI_DABORT
0030 
0031 #ifdef CONFIG_CPU_ABRT_EV4
0032 # ifdef CPU_DABORT_HANDLER
0033 #  define MULTI_DABORT 1
0034 # else
0035 #  define CPU_DABORT_HANDLER v4_early_abort
0036 # endif
0037 #endif
0038 
0039 #ifdef CONFIG_CPU_ABRT_LV4T
0040 # ifdef CPU_DABORT_HANDLER
0041 #  define MULTI_DABORT 1
0042 # else
0043 #  define CPU_DABORT_HANDLER v4t_late_abort
0044 # endif
0045 #endif
0046 
0047 #ifdef CONFIG_CPU_ABRT_EV4T
0048 # ifdef CPU_DABORT_HANDLER
0049 #  define MULTI_DABORT 1
0050 # else
0051 #  define CPU_DABORT_HANDLER v4t_early_abort
0052 # endif
0053 #endif
0054 
0055 #ifdef CONFIG_CPU_ABRT_EV5T
0056 # ifdef CPU_DABORT_HANDLER
0057 #  define MULTI_DABORT 1
0058 # else
0059 #  define CPU_DABORT_HANDLER v5t_early_abort
0060 # endif
0061 #endif
0062 
0063 #ifdef CONFIG_CPU_ABRT_EV5TJ
0064 # ifdef CPU_DABORT_HANDLER
0065 #  define MULTI_DABORT 1
0066 # else
0067 #  define CPU_DABORT_HANDLER v5tj_early_abort
0068 # endif
0069 #endif
0070 
0071 #ifdef CONFIG_CPU_ABRT_EV6
0072 # ifdef CPU_DABORT_HANDLER
0073 #  define MULTI_DABORT 1
0074 # else
0075 #  define CPU_DABORT_HANDLER v6_early_abort
0076 # endif
0077 #endif
0078 
0079 #ifdef CONFIG_CPU_ABRT_EV7
0080 # ifdef CPU_DABORT_HANDLER
0081 #  define MULTI_DABORT 1
0082 # else
0083 #  define CPU_DABORT_HANDLER v7_early_abort
0084 # endif
0085 #endif
0086 
0087 #ifdef CONFIG_CPU_ABRT_NOMMU
0088 # ifdef CPU_DABORT_HANDLER
0089 #  define MULTI_DABORT 1
0090 # else
0091 #  define CPU_DABORT_HANDLER nommu_early_abort
0092 # endif
0093 #endif
0094 
0095 #ifndef CPU_DABORT_HANDLER
0096 #error Unknown data abort handler type
0097 #endif
0098 
0099 #endif