Browse Source

Andre Renaud support for the am29sl800db CFI flash chip (id: 0x0004, 0x226b).

git-svn-id: svn://svn.berlios.de/openocd/trunk@603 b42882b7-edfa-0310-969c-e2dbd0fdcd60
tags/v0.1.0
oharboe 16 years ago
parent
commit
30dc76644d
3 changed files with 20 additions and 0 deletions
  1. +2
    -0
      src/flash/cfi.c
  2. +1
    -0
      src/flash/cfi.h
  3. +17
    -0
      src/flash/non_cfi.c

+ 2
- 0
src/flash/cfi.c View File

@@ -93,6 +93,7 @@ cfi_fixup_t cfi_jedec_fixups[] = {
{CFI_MFR_ST, 0x00D6, cfi_fixup_non_cfi, NULL}, {CFI_MFR_ST, 0x00D6, cfi_fixup_non_cfi, NULL},
{CFI_MFR_AMD, 0x2223, cfi_fixup_non_cfi, NULL}, {CFI_MFR_AMD, 0x2223, cfi_fixup_non_cfi, NULL},
{CFI_MFR_AMD, 0x22ab, cfi_fixup_non_cfi, NULL}, {CFI_MFR_AMD, 0x22ab, cfi_fixup_non_cfi, NULL},
{CFI_MFR_FUJITSU, 0x226b, cfi_fixup_non_cfi, NULL},
{0, 0, NULL, NULL} {0, 0, NULL, NULL}
}; };


@@ -104,6 +105,7 @@ cfi_fixup_t cfi_0002_fixups[] = {
{CFI_MFR_SST, 0x00D7, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_5555_2AAA]}, {CFI_MFR_SST, 0x00D7, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_5555_2AAA]},
{CFI_MFR_SST, 0x2780, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_5555_2AAA]}, {CFI_MFR_SST, 0x2780, cfi_fixup_0002_unlock_addresses, &cfi_unlock_addresses[CFI_UNLOCK_5555_2AAA]},
{CFI_MFR_ATMEL, 0x00C8, cfi_fixup_atmel_reversed_erase_regions, NULL}, {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_ANY, CFI_ID_ANY, cfi_fixup_0002_erase_regions, NULL}, {CFI_MFR_ANY, CFI_ID_ANY, cfi_fixup_0002_erase_regions, NULL},
{0, 0, NULL, NULL} {0, 0, NULL, NULL}
}; };


+ 1
- 0
src/flash/cfi.h View File

@@ -148,6 +148,7 @@ typedef struct cfi_fixup_s
} cfi_fixup_t; } cfi_fixup_t;


#define CFI_MFR_AMD 0x0001 #define CFI_MFR_AMD 0x0001
#define CFI_MFR_FUJITSU 0x0004
#define CFI_MFR_ATMEL 0x001F #define CFI_MFR_ATMEL 0x001F
#define CFI_MFR_ST 0x0020 /* STMicroelectronics */ #define CFI_MFR_ST 0x0020 /* STMicroelectronics */
#define CFI_MFR_SST 0x00BF #define CFI_MFR_SST 0x00BF


+ 17
- 0
src/flash/non_cfi.c View File

@@ -169,6 +169,23 @@ non_cfi_t non_cfi_flashes[] = {
0x00000000 0x00000000
} }
}, },
{
.mfr = CFI_MFR_FUJITSU,
.id = 0x226b, /* AM29SL800DB */
.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, .mfr = 0,
.id = 0, .id = 0,


Loading…
Cancel
Save