Patchwork Add IDs for 51 new flash chips

login
register
about
Submitter Carl-Daniel Hailfinger
Date 2009-07-23 15:34:07
Message ID <4A6882EF.60203@gmx.net>
Download mbox | patch
Permalink /patch/71/
State Accepted
Commit r667
Headers show

Comments

Carl-Daniel Hailfinger - 2009-07-23 15:34:07
Add IDs for 51 new flash chips:

AMIC A29400T
AMIC A29400U
AMIC A29800T
AMIC A29800U
AMIC A29L004T
AMIC A29L004U
AMIC A29L008T
AMIC A29L008U
AMIC A29L040
Macronix MX29F004B
Macronix MX29F004T
Macronix MX29F022T
Macronix MX29F080
Macronix MX29F800B
Macronix MX29F800T
Macronix MX29LV081
Spansion MBM29DL400BC
Spansion MBM29DL400TC
Spansion MBM29DL800BA
Spansion MBM29DL800TA
Spansion MBM29F002BC
Spansion MBM29F002TC
Spansion MBM29F040C
Spansion MBM29F080A
Spansion MBM29F200BC
Spansion MBM29F200TC
Spansion MBM29F800BA
Spansion MBM29F800TA
Spansion MBM29LV002BC
Spansion MBM29LV002TC
Spansion MBM29LV004BC
Spansion MBM29LV004TC
Spansion MBM29LV008BA
Spansion MBM29LV008TA
Spansion MBM29LV080A
Spansion MBM29LV200BC
Spansion MBM29LV200TC
Spansion MBM29LV400BC
Spansion MBM29LV400TC
Spansion MBM29LV800BA
Spansion MBM29LV800TA
SST 49LF030A
ST M29F080
ST M29F200BB
ST M29F200BT
ST M29F400BB
ST M29F800DB
ST M29F800DT
Winbond W39L020
Winbond W39L040
Winbond W49F020

These still need to be added to flashchips.c, but if we ever encounter
them in real life, the ID->name lookup will be a lot easier.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Uwe Hermann - 2009-07-24 13:39:06
On Thu, Jul 23, 2009 at 05:34:07PM +0200, Carl-Daniel Hailfinger wrote:
> Add IDs for 51 new flash chips:
> Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>

Acked-by: Uwe Hermann <uwe@hermann-uwe.de>


Uwe.

Patch

Index: flashrom-newids/flashchips.c
===================================================================
--- flashrom-newids/flashchips.c	(Revision 664)
+++ flashrom-newids/flashchips.c	(Arbeitskopie)
@@ -1419,10 +1419,10 @@ 
 
 	{
 		.vendor		= "Macronix",
-		.name		= "MX29LV040C",
+		.name		= "MX29LV040",
 		.bustype	= CHIP_BUSTYPE_PARALLEL,
 		.manufacture_id	= MX_ID,
-		.model_id	= MX_29LV040C,
+		.model_id	= MX_29LV040,
 		.total_size	= 512,
 		.page_size	= 64 * 1024,
 		.tested		= TEST_OK_PR,
Index: flashrom-newids/flashchips.h
===================================================================
--- flashrom-newids/flashchips.h	(Revision 664)
+++ flashrom-newids/flashchips.h	(Arbeitskopie)
@@ -54,6 +54,15 @@ 
 #define AMIC_A29002B		0x0d
 #define AMIC_A29002T		0x8c
 #define AMIC_A29040B		0x86
+#define AMIC_A29400T		0xB0	/* Same as 294001T */
+#define AMIC_A29400U		0x31	/* Same as A294001U */
+#define AMIC_A29800T		0x0E
+#define AMIC_A29800U		0x8F
+#define AMIC_A29L004T		0x34	/* Same as A29L400T */
+#define AMIC_A29L004U		0xB5	/* Same as A29L400U */
+#define AMIC_A29L008T		0x1A	/* Same as A29L800T */
+#define AMIC_A29L008U		0x9B	/* Same as A29L800U */
+#define AMIC_A29L040		0x92
 #define AMIC_A49LF040A		0x9d
 
 /* This chip vendor/device ID is probably a misinterpreted LHA header. */
@@ -65,7 +74,7 @@ 
 #define AT_25DF041A		0x4401
 #define AT_25DF081		0x4502
 #define AT_25DF161		0x4602
-#define AT_25DF321		0x4700	/* also 26DF321 */
+#define AT_25DF321		0x4700	/* Same as 26DF321 */
 #define AT_25DF321A		0x4701
 #define AT_25DF641		0x4800
 #define AT_25F512A		0x65 /* Needs special RDID. AT25F512A_RDID 15 1d */
@@ -77,7 +86,7 @@ 
 #define AT_26DF081A		0x4501
 #define AT_26DF161		0x4600
 #define AT_26DF161A		0x4601
-#define AT_26DF321		0x4700	/* also 25DF321 */
+#define AT_26DF321		0x4700	/* Same as 25DF321 */
 #define AT_26F004		0x0400
 #define AT_29C040A		0xA4
 #define AT_29C010A		0xD5	
@@ -129,14 +138,14 @@ 
  */
 #define EON_ID			0x7F1C	/* EON Silicon Devices */
 #define EON_ID_NOPREFIX		0x1C	/* EON, missing 0x7F prefix */
-#define EN_25B05		0x2010	/* also P05, 2^19 kbit or 2^16 kByte */
-#define EN_25B10		0x2011	/* also P10 */
-#define EN_25B20		0x2012	/* also P20 */
-#define EN_25B40		0x2013	/* also P40 */
-#define EN_25B80		0x2014	/* also P80 */
-#define EN_25B16		0x2015	/* also P16 */
-#define EN_25B32		0x2016	/* also P32 */
-#define EN_25B64		0x2017	/* also P64 */
+#define EN_25B05		0x2010	/* Same as P05, 2^19 kbit or 2^16 kByte */
+#define EN_25B10		0x2011	/* Same as P10 */
+#define EN_25B20		0x2012	/* Same as P20 */
+#define EN_25B40		0x2013	/* Same as P40 */
+#define EN_25B80		0x2014	/* Same as P80 */
+#define EN_25B16		0x2015	/* Same as P16 */
+#define EN_25B32		0x2016	/* Same as P32 */
+#define EN_25B64		0x2017	/* Same as P64 */
 #define EN_25D16		0x3015
 #define EN_25F05		0x3110
 #define EN_25F10		0x3111
@@ -150,14 +159,39 @@ 
 #define EN_29F040A		0x7F04
 #define EN_29LV010		0x7F6E
 #define EN_29LV040A		0x7F4F	/* EN_29LV040(A) */
-#define EN_29F002T		0x7F92	/* Also EN29F002A */
-#define EN_29F002B		0x7F97	/* Also EN29F002AN */
+#define EN_29F002T		0x7F92	/* Same as EN29F002A */
+#define EN_29F002B		0x7F97	/* Same as EN29F002AN */
 
 #define FUJITSU_ID		0x04	/* Fujitsu */
+#define MBM29DL400BC		0x0F
+#define MBM29DL400TC		0x0C
+#define MBM29DL800BA		0xCB
+#define MBM29DL800TA		0x4A
+#define MBM29F002BC		0x34
+#define MBM29F002TC		0xB0
+#define MBM29F004BC		0x7B
+#define MBM29F004TC		0x77
+#define MBM29F040C		0xA4
+#define MBM29F080A		0xD5
+#define MBM29F200BC		0x57
+#define MBM29F200TC		0x51
 #define MBM29F400BC		0xAB
 #define MBM29F400TC		0x23
-#define MBM29F004BC		0x7B
-#define MBM29F004TC		0x77
+#define MBM29F800BA		0x58
+#define MBM29F800TA		0xD6
+#define MBM29LV002BC		0xC2
+#define MBM29LV002TC		0x40
+#define MBM29LV004BC		0xB6
+#define MBM29LV004TC		0xB5
+#define MBM29LV008BA		0x37
+#define MBM29LV008TA		0x3E
+#define MBM29LV080A		0x38
+#define MBM29LV200BC		0xBF
+#define MBM29LV200TC		0x3B
+#define MBM29LV400BC		0xBA
+#define MBM29LV400TC		0xB9
+#define MBM29LV800BA		0x5B	/* Same as MBM29LV800BE */
+#define MBM29LV800TA		0xDA	/* Same as MBM29LV800TE */
 
 #define HYUNDAI_ID		0xAD	/* Hyundai */
 
@@ -191,32 +225,39 @@ 
 #define MX_25L12805		0x2018	/* MX25L12805 */
 #define MX_25L1635D		0x2415
 #define MX_25L3235D		0x5E16	/* MX25L3225D/MX25L3235D/MX25L3237D */
-#define MX_29F002B		0x34
-#define MX_29F002T		0xB0
+#define MX_29F002B		0x34	/* Same as MX29F002NB */
+#define MX_29F002T		0xB0	/* Same as MX29F002NT */
+#define MX_29F004B		0x46
+#define MX_29F004T		0x45
+#define MX_29F022T		0x36	/* Same as MX29F022NT */
+#define MX_29F040		0xA4	/* Same as MX29F040C */
+#define MX_29F080		0xD5
+#define MX_29F200B		0x57	/* Same as MX29F200CB */
+#define MX_29F200T		0x51	/* Same as MX29F200CT */
+#define MX_29F400B		0xAB	/* Same as MX29F400CB */
+#define MX_29F400T		0x23	/* Same as MX29F400CT */
+#define MX_29F800B		0x58
+#define MX_29F800T		0xD6
 #define MX_29LV002CB		0x5A
 #define MX_29LV002CT		0x59
-#define MX_29LV004CB		0xB6
-#define MX_29LV004CT		0xB5
-#define MX_29LV008CB		0x37
-#define MX_29LV008CT		0x3E
-#define MX_29F040C		0xA4
-#define MX_29F200CB		0x57
-#define MX_29F200CT		0x51
-#define MX_29F400CB		0xAB
-#define MX_29F400CT		0x23
-#define MX_29LV040C		0x4F
+#define MX_29LV004B		0xB6	/* Same as MX29LV004CB */
+#define MX_29LV004T		0xB5	/* Same as MX29LV004CT */
+#define MX_29LV008B		0x37	/* Same as MX29LV008CB */
+#define MX_29LV008T		0x3E	/* Same as MX29LV008CT */
+#define MX_29LV040		0x4F	/* Same as MX29LV040C */
+#define MX_29LV081		0x38
 #define MX_29LV128DB		0x7A
 #define MX_29LV128DT		0x7E
 #define MX_29LV160DB		0x49	/* Same as MX29LV161DB/MX29LV160CB */
 #define MX_29LV160DT		0xC4	/* Same as MX29LV161DT/MX29LV160CT */
 #define MX_29LV320DB		0xA8	/* Same as MX29LV321DB */
 #define MX_29LV320DT		0xA7	/* Same as MX29LV321DT */
-#define MX_29LV400CB		0xBA
-#define MX_29LV400CT		0xB9
-#define MX_29LV800CB		0x5B
-#define MX_29LV800CT		0xDA
+#define MX_29LV400B		0xBA	/* Same as MX29LV400CB */
+#define MX_29LV400T		0xB9	/* Same as MX29LV400CT */
 #define MX_29LV640DB		0xCB	/* Same as MX29LV640EB */
 #define MX_29LV640DT		0xC9	/* Same as MX29LV640ET */
+#define MX_29LV800B		0x5B	/* Same as MX29LV800CB */
+#define MX_29LV800T		0xDA	/* Same as MX29LV800CT */
 #define MX_29SL402CB		0xF1
 #define MX_29SL402CT		0x70
 #define MX_29SL800CB		0x6B	/* Same as MX29SL802CB */
@@ -237,7 +278,7 @@ 
 #define PMC_29F002T		0x1D
 #define PMC_29F002B		0x2D
 #define PMC_39LV512		0x1B
-#define PMC_39F010		0x1C	/* also Pm39LV010 */
+#define PMC_39F010		0x1C	/* Same as Pm39LV010 */
 #define PMC_39LV020		0x3D
 #define PMC_39LV040		0x3E
 #define PMC_39F020		0x4D
@@ -287,9 +328,9 @@ 
 #define SST_28SF040		0x04
 #define SST_29EE512		0x5D
 #define SST_29EE010		0x07
-#define SST_29LE010		0x08	/* also SST29VE010 */
-#define SST_29EE020A		0x10	/* also SST29EE020 */
-#define SST_29LE020		0x12	/* also SST29VE020 */
+#define SST_29LE010		0x08	/* Same as SST29VE010 */
+#define SST_29EE020A		0x10	/* Same as SST29EE020 */
+#define SST_29LE020		0x12	/* Same as SST29VE020 */
 #define SST_29SF020		0x24
 #define SST_29VF020		0x25
 #define SST_29SF040		0x13
@@ -301,11 +342,12 @@ 
 #define SST_39VF010		0xD5
 #define SST_39VF020		0xD6
 #define SST_39VF040		0xD7
-#define SST_39VF080		0xD8
+#define SST_39VF080		0xD8	/* Same as SST_39LF080/39VF080/39VF088 */
 #define SST_49LF040B		0x50
 #define SST_49LF040		0x51
 #define SST_49LF020		0x61
 #define SST_49LF020A		0x52
+#define SST_49LF030A		0x1C
 #define SST_49LF080A		0x5B
 #define SST_49LF002A		0x57
 #define SST_49LF003A		0x1B
@@ -349,8 +391,14 @@ 
 #define ST_M50LPW116		0x30
 #define ST_M29F002B		0x34
 #define ST_M29F002T		0xB0	/* M29F002T / M29F002NT */
+#define ST_M29F040B		0xE2
+#define ST_M29F080		0xF1
+#define ST_M29F200BT		0xD3
+#define ST_M29F200BB		0xD4
 #define ST_M29F400BT		0xD5
-#define ST_M29F040B		0xE2
+#define ST_M29F400BB		0xD6
+#define ST_M29F800DB		0x58
+#define ST_M29F800DT		0xEC
 #define ST_M29W010B		0x23
 #define ST_M29W040B		0xE3
 
@@ -382,6 +430,8 @@ 
 #define W_29C020C		0x45
 #define W_29C040P		0x46
 #define W_29EE011		0xC1
+#define W_39L020		0xB5
+#define W_39L040		0xB6
 #define W_39V040FA		0x34
 #define W_39V040A		0x3D
 #define W_39V040B		0x54
@@ -390,6 +440,7 @@ 
 #define W_39V080FA		0xD3
 #define W_39V080FA_DM		0x93
 #define W_49F002U		0x0B
+#define W_49F020		0x8C
 #define W_49V002A		0xB0
 #define W_49V002FA		0x32