diff --git a/flash.h b/flash.h
index a4822e8b0704358ab76c79467e3d4e5d46dad840..205cb60a212d7edaf922db4601302d902c1bfa6c 100644
--- a/flash.h
+++ b/flash.h
@@ -29,6 +29,9 @@ extern struct flashchip flashchips[];
 #define AM_29F040B        0xA4
 #define AM_29F016D        0xAD
 
+#define ASD_ID		  0x25
+#define ASD_AE49F2008     0x52
+
 #define ATMEL_ID          0x1F	/* Winbond Manufacture ID code        */
 #define AT_29C040A        0xA4	/* Winbond w29c020c device code */
 
diff --git a/flashchips.c b/flashchips.c
index 50152091ad6e395c21045218beae90d88c5dc2c7..e2a9173320020cf4309ddc792bf0bcc94c8d2fad 100644
--- a/flashchips.c
+++ b/flashchips.c
@@ -44,6 +44,8 @@ struct flashchip flashchips[] = {
 	 probe_29f040b, erase_29f040b,	write_29f040b,	NULL},
 	{"Am29F016D",	AMD_ID, 	AM_29F016D,	NULL, 2048, 64 * 1024,
 	 probe_29f040b, erase_29f040b,	write_29f040b,	NULL},
+	{"AE49F2008",	ASD_ID,	        ASD_AE49F2008,	NULL, 256, 128,
+	 probe_jedec,	erase_chip_jedec, write_jedec,	NULL},
 	{"At29C040A",	ATMEL_ID,	AT_29C040A,	NULL, 512, 256,
 	 probe_jedec,	erase_chip_jedec, write_jedec,	NULL},
 	{"Mx29f002",	MX_ID,		MX_29F002,	NULL, 256, 64 * 1024,