45 lines
855 B
C
45 lines
855 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
// Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
|
|
|
|
#ifndef __ASM_CSKY_TRAPS_H
|
|
#define __ASM_CSKY_TRAPS_H
|
|
|
|
#define VEC_RESET 0
|
|
#define VEC_ALIGN 1
|
|
#define VEC_ACCESS 2
|
|
#define VEC_ZERODIV 3
|
|
#define VEC_ILLEGAL 4
|
|
#define VEC_PRIV 5
|
|
#define VEC_TRACE 6
|
|
#define VEC_BREAKPOINT 7
|
|
#define VEC_UNRECOVER 8
|
|
#define VEC_SOFTRESET 9
|
|
#define VEC_AUTOVEC 10
|
|
#define VEC_FAUTOVEC 11
|
|
#define VEC_HWACCEL 12
|
|
|
|
#define VEC_TLBMISS 14
|
|
#define VEC_TLBMODIFIED 15
|
|
|
|
#define VEC_TRAP0 16
|
|
#define VEC_TRAP1 17
|
|
#define VEC_TRAP2 18
|
|
#define VEC_TRAP3 19
|
|
|
|
#define VEC_TLBINVALIDL 20
|
|
#define VEC_TLBINVALIDS 21
|
|
|
|
#define VEC_PRFL 29
|
|
#define VEC_FPE 30
|
|
|
|
extern void *vec_base[];
|
|
|
|
#define VEC_INIT(i, func) \
|
|
do { \
|
|
vec_base[i] = (void *)func; \
|
|
} while (0)
|
|
|
|
void csky_alignment(struct pt_regs *regs);
|
|
|
|
#endif /* __ASM_CSKY_TRAPS_H */
|