summaryrefslogtreecommitdiff
path: root/common/include/all_flash.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/include/all_flash.h')
-rw-r--r--common/include/all_flash.h93
1 files changed, 47 insertions, 46 deletions
diff --git a/common/include/all_flash.h b/common/include/all_flash.h
index 0f485e215c..4cfda09b0c 100644
--- a/common/include/all_flash.h
+++ b/common/include/all_flash.h
@@ -20,6 +20,7 @@
#ifndef __ALL_FLASH_H
#define __ALL_FLASH_H
+#define LOCKED_AT_RESET 1
#define GLUE(a,b) a ## b
#define FIELDS_OPENOCD(name, jedec, sector_sz, sector_nb, args...) \
@@ -32,73 +33,73 @@
#define FLASH_ARRAY(t) { \
/* Atmel
* -- some are (confusingly) marketed as "DataFlash". */ \
- FLASH (t, "at25fs010", 0x1f6601, 32 * 1024, 4, 0) \
- FLASH (t, "at25fs040", 0x1f6604, 64 * 1024, 8, 0) \
+ FLASH (t, "at25fs010", 0x1f6601, 32 * 1024, 4, 0, LOCKED_AT_RESET) \
+ FLASH (t, "at25fs040", 0x1f6604, 64 * 1024, 8, 0, LOCKED_AT_RESET) \
\
- FLASH (t, "at25df041a", 0x1f4401, 64 * 1024, 8, 0) \
+ FLASH (t, "at25df041a", 0x1f4401, 64 * 1024, 8, 0, LOCKED_AT_RESET) \
\
- FLASH (t, "at26f004", 0x1f0400, 64 * 1024, 8, 0) \
- FLASH (t, "at26df081a", 0x1f4501, 64 * 1024, 16, 0) \
- FLASH (t, "at26df161a", 0x1f4601, 64 * 1024, 32, 0) \
- FLASH (t, "at26df321", 0x1f4700, 64 * 1024, 64, 0) \
+ FLASH (t, "at26f004", 0x1f0400, 64 * 1024, 8, 0, LOCKED_AT_RESET) \
+ FLASH (t, "at26df081a", 0x1f4501, 64 * 1024, 16, 0, LOCKED_AT_RESET) \
+ FLASH (t, "at26df161a", 0x1f4601, 64 * 1024, 32, 0, LOCKED_AT_RESET) \
+ FLASH (t, "at26df321", 0x1f4700, 64 * 1024, 64, 0, LOCKED_AT_RESET) \
\
/* Eon */ \
- FLASH (t, "en25q32", 0x1c3016, 64 * 1024, 64, 0) \
- FLASH (t, "en25q64", 0x1c3017, 64 * 1024, 128, 0) \
- FLASH (t, "en25q128", 0x1c3018, 64 * 1024, 256, 0) \
+ FLASH (t, "en25q32", 0x1c3016, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "en25q64", 0x1c3017, 64 * 1024, 128, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "en25q128", 0x1c3018, 64 * 1024, 256, 0, ! LOCKED_AT_RESET) \
\
/* Macronix */ \
- FLASH (t, "mx25l3205d", 0xc22016, 64 * 1024, 64, 0) \
- FLASH (t, "mx25l6406e", 0xc22017, 64 * 1024, 128, 0) \
- FLASH (t, "mx25l128", 0xc22018, 64 * 1024, 256, 0) \
+ FLASH (t, "mx25l3205d", 0xc22016, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "mx25l6406e", 0xc22017, 64 * 1024, 128, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "mx25l128", 0xc22018, 64 * 1024, 256, 0, ! LOCKED_AT_RESET) \
\
/* Spansion
* -- single (large) sector size only, at least
* for the chips listed here (without boot sectors).
*/ \
- FLASH (t, "s25sl004a", 0x010212, 64 * 1024, 8, 0) \
- FLASH (t, "s25sl008a", 0x010213, 64 * 1024, 16, 0) \
- FLASH (t, "s25sl016a", 0x010214, 64 * 1024, 32, 0) \
- FLASH (t, "s25sl032a", 0x010215, 64 * 1024, 64, 0) \
- FLASH (t, "s25sl064a", 0x010216, 64 * 1024, 128, 0) \
+ FLASH (t, "s25sl004a", 0x010212, 64 * 1024, 8, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "s25sl008a", 0x010213, 64 * 1024, 16, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "s25sl016a", 0x010214, 64 * 1024, 32, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "s25sl032a", 0x010215, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "s25sl064a", 0x010216, 64 * 1024, 128, 0, ! LOCKED_AT_RESET) \
\
/* SST */ \
- FLASH (t, "sst25vf040b", 0xbf258d, 64 * 1024, 8, 0) \
- FLASH (t, "sst25vf080b", 0xbf258e, 64 * 1024, 16, 0) \
- FLASH (t, "sst25vf016b", 0xbf2541, 64 * 1024, 32, 0) \
- FLASH (t, "sst25vf032b", 0xbf254a, 64 * 1024, 64, 0) \
+ FLASH (t, "sst25vf040b", 0xbf258d, 64 * 1024, 8, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "sst25vf080b", 0xbf258e, 64 * 1024, 16, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "sst25vf016b", 0xbf2541, 64 * 1024, 32, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "sst25vf032b", 0xbf254a, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
\
/* ST Microelectronics
* -- newer production may have feature updates. */ \
- FLASH (t, "m25p05", 0x202010, 32 * 1024, 2, 0) \
- FLASH (t, "m25p10", 0x202011, 32 * 1024, 4, 0) \
- FLASH (t, "m25p20", 0x202012, 64 * 1024, 4, 0) \
- FLASH (t, "m25p40", 0x202013, 64 * 1024, 8, 0) \
- FLASH (t, "m25p80", 0, 64 * 1024, 16, 0) \
- FLASH (t, "m25p16", 0x202015, 64 * 1024, 32, 0) \
- FLASH (t, "m25p32", 0x202016, 64 * 1024, 64, 0) \
- FLASH (t, "m25p64", 0x202017, 64 * 1024, 128, 0) \
- FLASH (t, "m25p128", 0x202018, 256 * 1024, 64, 0) \
+ FLASH (t, "m25p05", 0x202010, 32 * 1024, 2, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p10", 0x202011, 32 * 1024, 4, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p20", 0x202012, 64 * 1024, 4, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p40", 0x202013, 64 * 1024, 8, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p80", 0, 64 * 1024, 16, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p16", 0x202015, 64 * 1024, 32, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p32", 0x202016, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p64", 0x202017, 64 * 1024, 128, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25p128", 0x202018, 256 * 1024, 64, 0, ! LOCKED_AT_RESET) \
\
- FLASH (t, "m45pe80", 0x204014, 64 * 1024, 16, 0) \
- FLASH (t, "m45pe16", 0x204015, 64 * 1024, 32, 0) \
+ FLASH (t, "m45pe80", 0x204014, 64 * 1024, 16, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m45pe16", 0x204015, 64 * 1024, 32, 0, ! LOCKED_AT_RESET) \
\
- FLASH (t, "m25pe80", 0x208014, 64 * 1024, 16, 0) \
- FLASH (t, "m25pe16", 0x208015, 64 * 1024, 32, 0) \
+ FLASH (t, "m25pe80", 0x208014, 64 * 1024, 16, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "m25pe16", 0x208015, 64 * 1024, 32, 0, ! LOCKED_AT_RESET) \
\
- FLASH (t, "n25q128", 0x20ba18, 64 * 1024, 256, 0) \
+ FLASH (t, "n25q128", 0x20ba18, 64 * 1024, 256, 0, ! LOCKED_AT_RESET) \
\
/* Winbond */ \
- FLASH (t, "w25x10", 0xef3011, 64 * 1024, 2, 0) \
- FLASH (t, "w25x20", 0xef3012, 64 * 1024, 4, 0) \
- FLASH (t, "w25x40", 0xef3013, 64 * 1024, 8, 0) \
- FLASH (t, "w25x80", 0xef3014, 64 * 1024, 16, 0) \
- FLASH (t, "w25x16", 0xef3015, 64 * 1024, 32, 0) \
- FLASH (t, "w25x32", 0xef3016, 64 * 1024, 64, 0) \
- FLASH (t, "w25q32", 0xef4016, 64 * 1024, 64, 0) \
- FLASH (t, "w25x64", 0xef3017, 64 * 1024, 128, 0) \
- FLASH (t, "w25q64", 0xef4017, 64 * 1024, 128, 0) \
- FLASH (t, "w25q128", 0xef4018, 64 * 1024, 256, 0) \
+ FLASH (t, "w25x10", 0xef3011, 64 * 1024, 2, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25x20", 0xef3012, 64 * 1024, 4, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25x40", 0xef3013, 64 * 1024, 8, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25x80", 0xef3014, 64 * 1024, 16, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25x16", 0xef3015, 64 * 1024, 32, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25x32", 0xef3016, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25q32", 0xef4016, 64 * 1024, 64, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25x64", 0xef3017, 64 * 1024, 128, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25q64", 0xef4017, 64 * 1024, 128, 0, ! LOCKED_AT_RESET) \
+ FLASH (t, "w25q128", 0xef4018, 64 * 1024, 256, 0, ! LOCKED_AT_RESET) \
}
#endif /* __ALL_FLASH_H */