diff options
author | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-07-21 09:16:10 +0000 |
---|---|---|
committer | oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60> | 2008-07-21 09:16:10 +0000 |
commit | 97cc3e0dc84c5d3644b153e27a1ae82651ece964 (patch) | |
tree | 3b97c1d9699ef23e899bf1f0bab8b1049ed79036 /src/flash | |
parent | 495f257980926e3ea965f821332a86957ab9d702 (diff) | |
download | openocd_libswd-97cc3e0dc84c5d3644b153e27a1ae82651ece964.tar.gz openocd_libswd-97cc3e0dc84c5d3644b153e27a1ae82651ece964.tar.bz2 openocd_libswd-97cc3e0dc84c5d3644b153e27a1ae82651ece964.tar.xz openocd_libswd-97cc3e0dc84c5d3644b153e27a1ae82651ece964.zip |
Michael Kurz <michi.kurz@googlemail.com> MX29LV800B non-cfi flash.
git-svn-id: svn://svn.berlios.de/openocd/trunk@845 b42882b7-edfa-0310-969c-e2dbd0fdcd60
Diffstat (limited to 'src/flash')
-rw-r--r-- | src/flash/cfi.c | 2 | ||||
-rw-r--r-- | src/flash/cfi.h | 1 | ||||
-rw-r--r-- | src/flash/non_cfi.c | 17 |
3 files changed, 20 insertions, 0 deletions
diff --git a/src/flash/cfi.c b/src/flash/cfi.c index 3c17980e..5f64e116 100644 --- a/src/flash/cfi.c +++ b/src/flash/cfi.c @@ -95,6 +95,7 @@ cfi_fixup_t cfi_jedec_fixups[] = { {CFI_MFR_AMD, 0x22ab, cfi_fixup_non_cfi, NULL}, {CFI_MFR_FUJITSU, 0x226b, cfi_fixup_non_cfi, NULL}, {CFI_MFR_AMIC, 0xb31a, cfi_fixup_non_cfi, NULL}, + {CFI_MFR_MX, 0x225b, cfi_fixup_non_cfi, NULL}, {0, 0, NULL, NULL} }; @@ -108,6 +109,7 @@ cfi_fixup_t cfi_0002_fixups[] = { {CFI_MFR_ATMEL, 0x00C8, cfi_fixup_atmel_reversed_erase_regions, NULL}, {CFI_MFR_FUJITSU, 0x226b, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_5555_2AAA]}, {CFI_MFR_AMIC, 0xb31a, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_555_2AA]}, + {CFI_MFR_MX, 0x225b, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_555_2AA]}, {CFI_MFR_ANY, CFI_ID_ANY, cfi_fixup_0002_erase_regions, NULL}, {0, 0, NULL, NULL} }; diff --git a/src/flash/cfi.h b/src/flash/cfi.h index ade63185..3e3e6fe5 100644 --- a/src/flash/cfi.h +++ b/src/flash/cfi.h @@ -153,6 +153,7 @@ typedef struct cfi_fixup_s #define CFI_MFR_ST 0x0020 /* STMicroelectronics */ #define CFI_MFR_AMIC 0x0037 #define CFI_MFR_SST 0x00BF +#define CFI_MFR_MX 0x00C2 #define CFI_MFR_ANY 0xffff #define CFI_ID_ANY 0xffff diff --git a/src/flash/non_cfi.c b/src/flash/non_cfi.c index e1b7caaa..7b4ae3af 100644 --- a/src/flash/non_cfi.c +++ b/src/flash/non_cfi.c @@ -204,6 +204,23 @@ non_cfi_t non_cfi_flashes[] = { } }, { + .mfr = CFI_MFR_MX, + .id = 0x225b, /* MX29LV800B */ + .pri_id = 0x02, + .dev_size = 0x14, /* 2^20 = 1MB */ + .interface_desc = 0x2, /* x8 or x16 device with nBYTE */ + .max_buf_write_size = 0x0, + .num_erase_regions = 4, + .erase_region_info = + { + 0x00400000, /* 1x 16KB */ + 0x00200001, /* 2x 8KB */ + 0x00800000, /* 1x 32KB */ + 0x0100000e, /* 15x 64KB */ + 0x00000000 + } + }, + { .mfr = 0, .id = 0, } |