CHIPS: Support for SST 49LF040B flash chip
PATCH 1/1 CHIPS: Support for SST 49LF040B flash chip
Add CFI and JEDEC probe support for the SST 49LF040B flash chip.
Signed-off-by Ryan Jackson <[email protected]>
--- drivers/mtd/chips/cfi_cmdset_0002.c | 8 ++++++-- drivers/mtd/chips/jedec_probe.c | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 2 deletions(-)
drivers/mtd/chips/cfi_cmdset_0002.c +6 -2
@@ -48,6 +48,7 @@ #define MANUFACTURER_AMD 0x0001#define MANUFACTURER_ATMEL 0x001F#define MANUFACTURER_SST 0x00BF#define SST49LF004B 0x0060 +#define SST49LF040B 0x0050#define SST49LF008A 0x005a#define AT49BV6416 0x00d6
@@ -232,6 +233,7 @@ #endif };static struct cfi_fixup jedec_fixup_table[] = { {MANUFACTURER_SST ,SST49LF004B , fixup_use_fwh_lock,NULL , }, + {MANUFACTURER_SST ,SST49LF040B , fixup_use_fwh_lock,NULL , }, {MANUFACTURER_SST ,SST49LF008A , fixup_use_fwh_lock,NULL , }, {0 ,0 ,NULL ,NULL } };
@@ -518,10 +520,12 @@ static int get_chip(struct map_info *mapif (mode ==FL_WRITING )/* FIXME: Erase-suspend-program appears broken. */ goto sleep; -if (!(mode ==FL_READY || mode ==FL_POINT +if (!( mode ==FL_READY + || mode ==FL_POINT || !cfip || (mode ==FL_WRITING && (cfip->EraseSuspend &0x2 )) - || (mode ==FL_WRITING && (cfip->EraseSuspend &0x1 )))) + || (mode ==FL_WRITING && (cfip->EraseSuspend &0x1 ) + ))) goto sleep;/* We could check to see if we're trying to access the sector
drivers/mtd/chips/jedec_probe.c +15 -0
@@ -154,6 +154,7 @@ #define SST39LF040 0x00D7#define SST39SF010A 0x00B5#define SST39SF020A 0x00B6#define SST49LF004B 0x0060 +#define SST49LF040B 0x0050#define SST49LF008A 0x005a#define SST49LF030A 0x001C#define SST49LF040A 0x0051
@@ -1401,6 +1402,20 @@ static const struct amd_flash_info jedec } }, { .mfr_id = MANUFACTURER_SST, + .dev_id = SST49LF040B, + .name = "SST 49LF040B", + .uaddr = { + [0 ] = MTD_UADDR_0x5555_0x2AAA/* x8 */ + }, + .DevSize = SIZE_512KiB, + .CmdSet = P_ID_AMD_STD, + .NumEraseRegions= 1, + .regions = { + ERASEINFO(0x01000,128), + } + }, { + + .mfr_id = MANUFACTURER_SST, .dev_id = SST49LF004B, .name = "SST 49LF004B", .uaddr = {
Signature · 1 line
1.4.2.1