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