diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-16 18:20:36 -0400 |
commit | 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (patch) | |
tree | 0bba044c4ce775e45a88a51686b5d9f90697ea9d /include/asm-sh64/registers.h |
Linux-2.6.12-rc2v2.6.12-rc2
Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.
Let it rip!
Diffstat (limited to 'include/asm-sh64/registers.h')
-rw-r--r-- | include/asm-sh64/registers.h | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/include/asm-sh64/registers.h b/include/asm-sh64/registers.h new file mode 100644 index 000000000000..7eec666acf84 --- /dev/null +++ b/include/asm-sh64/registers.h | |||
@@ -0,0 +1,106 @@ | |||
1 | #ifndef __ASM_SH64_REGISTERS_H | ||
2 | #define __ASM_SH64_REGISTERS_H | ||
3 | |||
4 | /* | ||
5 | * This file is subject to the terms and conditions of the GNU General Public | ||
6 | * License. See the file "COPYING" in the main directory of this archive | ||
7 | * for more details. | ||
8 | * | ||
9 | * include/asm-sh64/registers.h | ||
10 | * | ||
11 | * Copyright (C) 2000, 2001 Paolo Alberelli | ||
12 | * Copyright (C) 2004 Richard Curnow | ||
13 | */ | ||
14 | |||
15 | #ifdef __ASSEMBLY__ | ||
16 | /* ===================================================================== | ||
17 | ** | ||
18 | ** Section 1: acts on assembly sources pre-processed by GPP ( <source.S>). | ||
19 | ** Assigns symbolic names to control & target registers. | ||
20 | */ | ||
21 | |||
22 | /* | ||
23 | * Define some useful aliases for control registers. | ||
24 | */ | ||
25 | #define SR cr0 | ||
26 | #define SSR cr1 | ||
27 | #define PSSR cr2 | ||
28 | /* cr3 UNDEFINED */ | ||
29 | #define INTEVT cr4 | ||
30 | #define EXPEVT cr5 | ||
31 | #define PEXPEVT cr6 | ||
32 | #define TRA cr7 | ||
33 | #define SPC cr8 | ||
34 | #define PSPC cr9 | ||
35 | #define RESVEC cr10 | ||
36 | #define VBR cr11 | ||
37 | /* cr12 UNDEFINED */ | ||
38 | #define TEA cr13 | ||
39 | /* cr14-cr15 UNDEFINED */ | ||
40 | #define DCR cr16 | ||
41 | #define KCR0 cr17 | ||
42 | #define KCR1 cr18 | ||
43 | /* cr19-cr31 UNDEFINED */ | ||
44 | /* cr32-cr61 RESERVED */ | ||
45 | #define CTC cr62 | ||
46 | #define USR cr63 | ||
47 | |||
48 | /* | ||
49 | * ABI dependent registers (general purpose set) | ||
50 | */ | ||
51 | #define RET r2 | ||
52 | #define ARG1 r2 | ||
53 | #define ARG2 r3 | ||
54 | #define ARG3 r4 | ||
55 | #define ARG4 r5 | ||
56 | #define ARG5 r6 | ||
57 | #define ARG6 r7 | ||
58 | #define SP r15 | ||
59 | #define LINK r18 | ||
60 | #define ZERO r63 | ||
61 | |||
62 | /* | ||
63 | * Status register defines: used only by assembly sources (and | ||
64 | * syntax independednt) | ||
65 | */ | ||
66 | #define SR_RESET_VAL 0x0000000050008000 | ||
67 | #define SR_HARMLESS 0x00000000500080f0 /* Write ignores for most */ | ||
68 | #define SR_ENABLE_FPU 0xffffffffffff7fff /* AND with this */ | ||
69 | |||
70 | #if defined (CONFIG_SH64_SR_WATCH) | ||
71 | #define SR_ENABLE_MMU 0x0000000084000000 /* OR with this */ | ||
72 | #else | ||
73 | #define SR_ENABLE_MMU 0x0000000080000000 /* OR with this */ | ||
74 | #endif | ||
75 | |||
76 | #define SR_UNBLOCK_EXC 0xffffffffefffffff /* AND with this */ | ||
77 | #define SR_BLOCK_EXC 0x0000000010000000 /* OR with this */ | ||
78 | |||
79 | #else /* Not __ASSEMBLY__ syntax */ | ||
80 | |||
81 | /* | ||
82 | ** Stringify reg. name | ||
83 | */ | ||
84 | #define __str(x) #x | ||
85 | |||
86 | /* Stringify control register names for use in inline assembly */ | ||
87 | #define __SR __str(SR) | ||
88 | #define __SSR __str(SSR) | ||
89 | #define __PSSR __str(PSSR) | ||
90 | #define __INTEVT __str(INTEVT) | ||
91 | #define __EXPEVT __str(EXPEVT) | ||
92 | #define __PEXPEVT __str(PEXPEVT) | ||
93 | #define __TRA __str(TRA) | ||
94 | #define __SPC __str(SPC) | ||
95 | #define __PSPC __str(PSPC) | ||
96 | #define __RESVEC __str(RESVEC) | ||
97 | #define __VBR __str(VBR) | ||
98 | #define __TEA __str(TEA) | ||
99 | #define __DCR __str(DCR) | ||
100 | #define __KCR0 __str(KCR0) | ||
101 | #define __KCR1 __str(KCR1) | ||
102 | #define __CTC __str(CTC) | ||
103 | #define __USR __str(USR) | ||
104 | |||
105 | #endif /* __ASSEMBLY__ */ | ||
106 | #endif /* __ASM_SH64_REGISTERS_H */ | ||