On 30/08/11 23:25, Stefan Tauner wrote:

review of the AT49F010 patch follows:
Index: flashchips.c
===================================================================
--- flashchips.c        (revision 1422)
+++ flashchips.c        (working copy)
@@ -2218,6 +2218,30 @@

        {
                .vendor         = "Atmel",
+               .name           = "AT49F010",
                .name           = "AT49(H)F010",
The H version is just a faster version (but with same VCC).

Are you suggesting I change the name to include (H)? If so does AT49F020 have an H version too and should that be changed? If it wants to be changed what should flashchips.h have for the name?

+               .bustype        = BUS_PARALLEL,
+               .manufacture_id = ATMEL_ID,
+               .model_id       = ATMEL_AT49F010,
+               .total_size     = 128,
+               .page_size      = 128,
should probably be 256 for now (semantics are different for each chip
driver for parallel chips afaik and it does not matter for jedec
routines iirc. NB: page_size is in bytes, so syncing it with total_size
does not make sense.)...

Ok, changed. I didn't know where to find information on what to set page_size, feature_bits or probe_timing to.


this chip and also the 2 Mb and 4 Mb versions support a boot block
protection that can be detected by software. it would be nice to add
a .printlock function to do this and inform the user. i have seen the
scheme before. Maybe there is already code in flashrom... but it is not
that important.
I've looked at the patch mentioned in your later messages, and modified w39.c and chipdrivers.h, and added a .printlock = line to the AT49F010. The code compiled and ran and it told me the boot block lock was not active. This was just a test so I have left this out of the attached patch. I didn't do any tests to see if the printlock code affected read/write at all.

Adding the 4 Mb version OTOH is trivial (ID 0x13) and would be
appreciated. Nevertheless after addressing the in-line comments this
patch is:
Acked-by: Stefan Tauner<[email protected]>

do you have commit rights?

I do not. Updated patch attached. I hope I got all the changes. :)

If I get a chance and can find datasheets I'll have a go at adding the larger AT49F chips.

--

Andrew.

Index: flashchips.c
===================================================================
--- flashchips.c	(revision 1423)
+++ flashchips.c	(working copy)
@@ -2218,6 +2218,30 @@
 
 	{
 		.vendor		= "Atmel",
+		.name		= "AT49F010",
+		.bustype	= BUS_PARALLEL,
+		.manufacture_id	= ATMEL_ID,
+		.model_id	= ATMEL_AT49F010,
+		.total_size	= 128,
+		.page_size	= 256,
+		.feature_bits	= FEATURE_EITHER_RESET,
+		.tested		= TEST_OK_PREW,
+		.probe		= probe_jedec,
+		.probe_timing	= TIMING_ZERO,	/* Datasheet has no timing info specified */
+		.block_erasers	=
+		{
+			{
+				.eraseblocks = { {128 * 1024, 1} },
+				.block_erase = erase_chip_block_jedec,
+			}
+		},
+ 		.write		= write_jedec_1,
+		.read		= read_memmapped,
+		.voltage	= {4500, 5500},
+	},
+
+	{
+		.vendor		= "Atmel",
 		.name		= "AT49F020",
 		.bustype	= BUS_PARALLEL,
 		.manufacture_id	= ATMEL_ID,
Index: flashchips.h
===================================================================
--- flashchips.h	(revision 1423)
+++ flashchips.h	(working copy)
@@ -181,6 +181,7 @@
 #define ATMEL_AT45DB642		/* No ID available */
 #define ATMEL_AT45DB642D	0x2800
 #define ATMEL_AT49BV512		0x03
+#define ATMEL_AT49F010		0x17	/* Same as AT49HF010 */
 #define ATMEL_AT49F020		0x0B
 #define ATMEL_AT49F002N		0x07	/* for AT49F002(N)  */
 #define ATMEL_AT49F002NT		0x08	/* for AT49F002(N)T */
_______________________________________________
flashrom mailing list
[email protected]
http://www.flashrom.org/mailman/listinfo/flashrom

Reply via email to