Hello all,

A bit of poking around revealed the possible reason this chip wasn't
getting written to... both the datasheet and linux mtd twiddle some
registers in the 4Mbit area before the flash chip in a manner identical
to the 82802ab unlock function.

Attached is a patch to hook it up.

Thanks,

Josh
>From 55a4c2b8114f800c1fe88c3a57793c1fba9861c5 Mon Sep 17 00:00:00 2001
From: Joshua Roys <[email protected]>
Date: Wed, 11 Aug 2010 16:34:46 -0400
Subject: [PATCH] SST49FL040B: add unlocking

The datasheet says there's a set of registers in the 4Mbit before the
flash memory.  The block locking registers are aligned on 64K
boundaries, plus 2.

Signed-off-by: Joshua Roys <[email protected]>
---
 flashchips.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/flashchips.c b/flashchips.c
index ae89701..3c588df 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -5651,7 +5651,7 @@ struct flashchip flashchips[] = {
                .model_id       = SST_49LF040B,
                .total_size     = 512,
                .page_size      = 64 * 1024,
-               .feature_bits   = FEATURE_EITHER_RESET,
+               .feature_bits   = FEATURE_EITHER_RESET | FEATURE_REGISTERMAP,
                .tested         = TEST_OK_PR,
                .probe          = probe_jedec,
                .probe_timing   = 1,            /* 150ns */
@@ -5668,6 +5668,7 @@ struct flashchip flashchips[] = {
                                .block_erase = NULL,
                        }
                },
+               .unlock         = unlock_82802ab,
                .write          = write_jedec_1,
                .read           = read_memmapped,
        },
-- 
1.7.2.1

_______________________________________________
flashrom mailing list
[email protected]
http://www.flashrom.org/mailman/listinfo/flashrom

Reply via email to