Loading...
1/*
2 * arch/arm/include/asm/glue-pf.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_PF_H
12#define ASM_GLUE_PF_H
13
14#include <asm/glue.h>
15
16/*
17 * Prefetch Abort Model
18 * ================
19 *
20 * We have the following to choose from:
21 * legacy - no IFSR, no IFAR
22 * v6 - ARMv6: IFSR, no IFAR
23 * v7 - ARMv7: IFSR and IFAR
24 */
25
26#undef CPU_PABORT_HANDLER
27#undef MULTI_PABORT
28
29#ifdef CONFIG_CPU_PABRT_LEGACY
30# ifdef CPU_PABORT_HANDLER
31# define MULTI_PABORT 1
32# else
33# define CPU_PABORT_HANDLER legacy_pabort
34# endif
35#endif
36
37#ifdef CONFIG_CPU_PABRT_V6
38# ifdef CPU_PABORT_HANDLER
39# define MULTI_PABORT 1
40# else
41# define CPU_PABORT_HANDLER v6_pabort
42# endif
43#endif
44
45#ifdef CONFIG_CPU_PABRT_V7
46# ifdef CPU_PABORT_HANDLER
47# define MULTI_PABORT 1
48# else
49# define CPU_PABORT_HANDLER v7_pabort
50# endif
51#endif
52
53#ifndef CPU_PABORT_HANDLER
54#error Unknown prefetch abort handler type
55#endif
56
57#endif
1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * arch/arm/include/asm/glue-pf.h
4 *
5 * Copyright (C) 1997-1999 Russell King
6 * Copyright (C) 2000-2002 Deep Blue Solutions Ltd.
7 */
8#ifndef ASM_GLUE_PF_H
9#define ASM_GLUE_PF_H
10
11#include <asm/glue.h>
12
13/*
14 * Prefetch Abort Model
15 * ================
16 *
17 * We have the following to choose from:
18 * legacy - no IFSR, no IFAR
19 * v6 - ARMv6: IFSR, no IFAR
20 * v7 - ARMv7: IFSR and IFAR
21 */
22
23#undef CPU_PABORT_HANDLER
24#undef MULTI_PABORT
25
26#ifdef CONFIG_CPU_PABRT_LEGACY
27# ifdef CPU_PABORT_HANDLER
28# define MULTI_PABORT 1
29# else
30# define CPU_PABORT_HANDLER legacy_pabort
31# endif
32#endif
33
34#ifdef CONFIG_CPU_PABRT_V6
35# ifdef CPU_PABORT_HANDLER
36# define MULTI_PABORT 1
37# else
38# define CPU_PABORT_HANDLER v6_pabort
39# endif
40#endif
41
42#ifdef CONFIG_CPU_PABRT_V7
43# ifdef CPU_PABORT_HANDLER
44# define MULTI_PABORT 1
45# else
46# define CPU_PABORT_HANDLER v7_pabort
47# endif
48#endif
49
50#ifndef CPU_PABORT_HANDLER
51#error Unknown prefetch abort handler type
52#endif
53
54#endif