4ea1fe5aaf6d8f4e77be778312fb079cedd33670
[openocd.git] / src / flash / stellaris.h
1 /***************************************************************************
2 * Copyright (C) 2006 by Magnus Lundin *
3 * lundin@mlu.mine.nu *
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
9 * *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
14 * *
15 * You should have received a copy of the GNU General Public License *
16 * along with this program; if not, write to the *
17 * Free Software Foundation, Inc., *
18 * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
19 ***************************************************************************/
20 #ifndef STELLARIS_FLASH_H
21 #define STELLARIS_FLASH_H
22
23 #include "flash.h"
24 #include "target.h"
25
26 typedef struct stellaris_flash_bank_s
27 {
28 /* chip id register */
29 u32 did0;
30 u32 did1;
31 u32 dc0;
32 u32 dc1;
33
34 char * target_name;
35
36 u32 sramsiz;
37 u32 flshsz;
38 /* flash geometry */
39 u32 num_pages;
40 u32 pagesize;
41 u32 pages_in_lockregion;
42
43 /* nv memory bits */
44 u16 num_lockbits;
45 u32 lockbits;
46
47 /* main clock status */
48 u32 rcc;
49 u8 mck_valid;
50 u32 mck_freq;
51
52 } stellaris_flash_bank_t;
53
54 /* STELLARIS control registers */
55 #define SCB_BASE 0x400FE000
56 #define DID0 0x000
57 #define DID1 0x004
58 #define DC0 0x008
59 #define DC1 0x010
60 #define DC2 0x014
61 #define DC3 0x018
62 #define DC4 0x01C
63
64 #define RIS 0x050
65 #define RCC 0x060
66 #define PLLCFG 0x064
67
68 #define FMPRE 0x130
69 #define FMPPE 0x134
70 #define USECRL 0x140
71
72 #define FLASH_CONTROL_BASE 0x400FD000
73 #define FLASH_FMA (FLASH_CONTROL_BASE|0x000)
74 #define FLASH_FMD (FLASH_CONTROL_BASE|0x004)
75 #define FLASH_FMC (FLASH_CONTROL_BASE|0x008)
76 #define FLASH_CRIS (FLASH_CONTROL_BASE|0x00C)
77 #define FLASH_CIM (FLASH_CONTROL_BASE|0x010)
78 #define FLASH_MISC (FLASH_CONTROL_BASE|0x014)
79
80 #define AMISC 1
81 #define PMISC 2
82
83 #define AMASK 1
84 #define PMASK 2
85
86
87 /* Flash Controller Command bits */
88 #define FMC_WRKEY (0xA442<<16)
89 #define FMC_COMT (1<<3)
90 #define FMC_MERASE (1<<2)
91 #define FMC_ERASE (1<<1)
92 #define FMC_WRITE (1<<0)
93
94 /* STELLARIS constants */
95
96 #endif /* STELLARIS_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)