jtag: linuxgpiod: drop extra parenthesis
[openocd.git] / src / target / nds32_reg.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2
3 /***************************************************************************
4 * Copyright (C) 2013 Andes Technology *
5 * Hsiangkai Wang <hkwang@andestech.com> *
6 ***************************************************************************/
7
8 #ifndef OPENOCD_TARGET_NDS32_REG_H
9 #define OPENOCD_TARGET_NDS32_REG_H
10
11 #define SRIDX(a, b, c) ((a << 7) | (b << 3) | c)
12 #define NDS32_REGISTER_DISABLE (0x0)
13
14 enum nds32_reg_number_s {
15 R0 = 0, /* general registers */
16 R1,
17 R2,
18 R3,
19 R4,
20 R5,
21 R6,
22 R7,
23 R8,
24 R9,
25 R10,
26 R11,
27 R12,
28 R13,
29 R14,
30 R15,
31 R16,
32 R17,
33 R18,
34 R19,
35 R20,
36 R21,
37 R22,
38 R23,
39 R24,
40 R25,
41 R26,
42 R27,
43 R28,
44 R29,
45 R30,
46 R31,
47 PC,
48 D0LO,
49 D0HI,
50 D1LO,
51 D1HI,
52 ITB,
53 IFC_LP,
54 CR0, /* system registers */
55 CR1,
56 CR2,
57 CR3,
58 CR4,
59 CR5,
60 CR6,
61 IR0,
62 IR1,
63 IR2,
64 IR3,
65 IR4,
66 IR5,
67 IR6,
68 IR7,
69 IR8,
70 IR9,
71 IR10,
72 IR11,
73 IR12,
74 IR13,
75 IR14,
76 IR15,
77 IR16,
78 IR17,
79 IR18,
80 IR19,
81 IR20,
82 IR21,
83 IR22,
84 IR23,
85 IR24,
86 IR25,
87 IR26,
88 IR27,
89 IR28,
90 IR29,
91 IR30,
92 MR0,
93 MR1,
94 MR2,
95 MR3,
96 MR4,
97 MR5,
98 MR6,
99 MR7,
100 MR8,
101 MR9,
102 MR10,
103 MR11,
104 DR0,
105 DR1,
106 DR2,
107 DR3,
108 DR4,
109 DR5,
110 DR6,
111 DR7,
112 DR8,
113 DR9,
114 DR10,
115 DR11,
116 DR12,
117 DR13,
118 DR14,
119 DR15,
120 DR16,
121 DR17,
122 DR18,
123 DR19,
124 DR20,
125 DR21,
126 DR22,
127 DR23,
128 DR24,
129 DR25,
130 DR26,
131 DR27,
132 DR28,
133 DR29,
134 DR30,
135 DR31,
136 DR32,
137 DR33,
138 DR34,
139 DR35,
140 DR36,
141 DR37,
142 DR38,
143 DR39,
144 DR40,
145 DR41,
146 DR42,
147 DR43,
148 DR44,
149 DR45,
150 DR46,
151 DR47,
152 DR48,
153 PFR0,
154 PFR1,
155 PFR2,
156 PFR3,
157 DMAR0,
158 DMAR1,
159 DMAR2,
160 DMAR3,
161 DMAR4,
162 DMAR5,
163 DMAR6,
164 DMAR7,
165 DMAR8,
166 DMAR9,
167 DMAR10,
168 RACR,
169 FUCPR,
170 IDR0,
171 IDR1,
172 SECUR0,
173 D0L24, /* audio registers */
174 D1L24,
175 I0,
176 I1,
177 I2,
178 I3,
179 I4,
180 I5,
181 I6,
182 I7,
183 M1,
184 M2,
185 M3,
186 M5,
187 M6,
188 M7,
189 MOD,
190 LBE,
191 LE,
192 LC,
193 ADM_VBASE,
194 SHFT_CTL0,
195 SHFT_CTL1,
196 CB_CTL,
197 CBB0,
198 CBB1,
199 CBB2,
200 CBB3,
201 CBE0,
202 CBE1,
203 CBE2,
204 CBE3,
205 FPCSR, /* fpu */
206 FPCFG,
207 FS0,
208 FS1,
209 FS2,
210 FS3,
211 FS4,
212 FS5,
213 FS6,
214 FS7,
215 FS8,
216 FS9,
217 FS10,
218 FS11,
219 FS12,
220 FS13,
221 FS14,
222 FS15,
223 FS16,
224 FS17,
225 FS18,
226 FS19,
227 FS20,
228 FS21,
229 FS22,
230 FS23,
231 FS24,
232 FS25,
233 FS26,
234 FS27,
235 FS28,
236 FS29,
237 FS30,
238 FS31,
239 FD0,
240 FD1,
241 FD2,
242 FD3,
243 FD4,
244 FD5,
245 FD6,
246 FD7,
247 FD8,
248 FD9,
249 FD10,
250 FD11,
251 FD12,
252 FD13,
253 FD14,
254 FD15,
255 FD16,
256 FD17,
257 FD18,
258 FD19,
259 FD20,
260 FD21,
261 FD22,
262 FD23,
263 FD24,
264 FD25,
265 FD26,
266 FD27,
267 FD28,
268 FD29,
269 FD30,
270 FD31,
271
272 TOTAL_REG_NUM,
273 };
274
275 enum nds32_reg_type_s {
276 NDS32_REG_TYPE_GPR = 0,
277 NDS32_REG_TYPE_SPR,
278 NDS32_REG_TYPE_CR,
279 NDS32_REG_TYPE_IR,
280 NDS32_REG_TYPE_MR,
281 NDS32_REG_TYPE_DR,
282 NDS32_REG_TYPE_PFR,
283 NDS32_REG_TYPE_DMAR,
284 NDS32_REG_TYPE_RACR,
285 NDS32_REG_TYPE_IDR,
286 NDS32_REG_TYPE_AUMR,
287 NDS32_REG_TYPE_SECURE,
288 NDS32_REG_TYPE_FPU,
289 };
290
291 struct nds32_reg_s {
292 const char *simple_mnemonic;
293 const char *symbolic_mnemonic;
294 uint32_t sr_index;
295 enum nds32_reg_type_s type;
296 uint8_t size;
297 };
298
299 struct nds32_reg_exception_s {
300 uint32_t reg_num;
301 uint32_t ex_value_bit_pos;
302 uint32_t ex_value_mask;
303 uint32_t ex_value;
304 };
305
306 void nds32_reg_init(void);
307 uint32_t nds32_reg_sr_index(uint32_t number);
308 enum nds32_reg_type_s nds32_reg_type(uint32_t number);
309 uint8_t nds32_reg_size(uint32_t number);
310 const char *nds32_reg_simple_name(uint32_t number);
311 const char *nds32_reg_symbolic_name(uint32_t number);
312 bool nds32_reg_exception(uint32_t number, uint32_t value);
313
314 #endif /* OPENOCD_TARGET_NDS32_REG_H */

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)