This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
New AMD flash chips (AM29F002T and AM29LV256)
- From: David Vrabel <dvrabel at arcom dot com>
- To: eCos Patches <ecos-patches at ecos dot sourceware dot org>
- Date: Wed, 20 Apr 2005 17:44:56 +0100
- Subject: New AMD flash chips (AM29F002T and AM29LV256)
Hi,
The attached patch adds the AM29F002T and AM29LV256 flash parts to the
AMD flash driver. It also fixes the AM29LV128 part uses the correct
long device id.
David Vrabel
%status
pending
%patch
Index: packages/devs/flash/amd/am29xxxxx/current/ChangeLog
===================================================================
--- packages/devs/flash/amd/am29xxxxx/current/ChangeLog.orig 2005-04-20 17:08:28.000000000 +0100
+++ packages/devs/flash/amd/am29xxxxx/current/ChangeLog 2005-04-20 17:26:04.000000000 +0100
@@ -1,3 +1,16 @@
+2005-04-17 David Vrabel <dvrabel@arcom.com>
+
+ * include/flash_am29xxxxx_parts.inl [CYGHWR_DEVS_FLASH_AMD_AM29F002T]:
+ * cdl/flash_amd_am29xxxxx.cdl:
+ Add AMD AM29F002T part.
+
+ * include/flash_am29xxxxx_parts.inl [CYGHWR_DEVS_FLASH_AMD_AM29LV256]:
+ * cdl/flash_amd_am29xxxxx.cdl:
+ Add AMD AM29LV256 part.
+
+ * include/flash_am29xxxxx_parts.inl [CYGHWR_DEVS_FLASH_AMD_AM29LV128]:
+ Use long device id for AM29LV128 part.
+
2005-03-18 Peter Korsgaard <jacmet@sunsite.dk>
* include/flash_am29xxxxx_parts.inl (CYGHWR_DEVS_FLASH_AMD_S29PL032J,
Index: packages/devs/flash/amd/am29xxxxx/current/cdl/flash_amd_am29xxxxx.cdl
===================================================================
--- packages/devs/flash/amd/am29xxxxx/current/cdl/flash_amd_am29xxxxx.cdl.orig 2005-04-20 17:08:28.000000000 +0100
+++ packages/devs/flash/amd/am29xxxxx/current/cdl/flash_amd_am29xxxxx.cdl 2005-04-20 17:12:54.000000000 +0100
@@ -67,6 +67,16 @@
display "Number of included variants"
}
+ cdl_option CYGHWR_DEVS_FLASH_AMD_AM29F002T {
+ display "AMD AM29F002T flash memory support"
+ default_value 0
+ implements CYGINT_DEVS_FLASH_AMD_VARIANTS
+ description "
+ When this option is enabled, the AMD flash driver will be
+ able to recognize and handle the AMD29F002T (top boot block)
+ part in the family."
+ }
+
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29F010 {
display "AMD AM29F010 flash memory support"
default_value 0
@@ -277,6 +287,16 @@
part in the family."
}
+ cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV256 {
+ display "AMD AM29LV256 flash memory support"
+ default_value 0
+ implements CYGINT_DEVS_FLASH_AMD_VARIANTS
+ description "
+ When this option is enabled, the AMD flash driver will be
+ able to recognize and handle the AMD AM29LV256
+ part in the family."
+ }
+
cdl_option CYGHWR_DEVS_FLASH_AMD_S29GL064M {
display "AMD/SPANSION S29GL064M flash memory support"
default_value 0
Index: packages/devs/flash/amd/am29xxxxx/current/include/flash_am29xxxxx_parts.inl
===================================================================
--- packages/devs/flash/amd/am29xxxxx/current/include/flash_am29xxxxx_parts.inl.orig 2005-04-20 17:08:28.000000000 +0100
+++ packages/devs/flash/amd/am29xxxxx/current/include/flash_am29xxxxx_parts.inl 2005-04-20 17:19:50.000000000 +0100
@@ -80,6 +80,25 @@
#define _LAST_BOOTBLOCK (-1)
#if CYGNUM_FLASH_WIDTH == 8
+#ifdef CYGHWR_DEVS_FLASH_AMD_AM29F002T
+ { // AM29F002T
+ device_id : FLASHWORD(0xb0),
+ block_size : 0x10000 * CYGNUM_FLASH_INTERLEAVE,
+ block_count: 4,
+ device_size: 0x40000 * CYGNUM_FLASH_INTERLEAVE,
+ base_mask : ~(0x40000 * CYGNUM_FLASH_INTERLEAVE - 1),
+ bootblock : true,
+ bootblocks : { 0x030000 * CYGNUM_FLASH_INTERLEAVE,
+ 0x008000 * CYGNUM_FLASH_INTERLEAVE,
+ 0x002000 * CYGNUM_FLASH_INTERLEAVE,
+ 0x002000 * CYGNUM_FLASH_INTERLEAVE,
+ 0x004000 * CYGNUM_FLASH_INTERLEAVE,
+ _LAST_BOOTBLOCK
+ },
+ banked : false,
+ bufsiz : 1
+ },
+#endif
#ifdef CYGHWR_DEVS_FLASH_AMD_AM29F010
{ // AM29F010
device_id : FLASHWORD(0x20),
@@ -407,7 +426,7 @@
0
},
bufsiz : 1
- }
+ },
#endif
#ifdef CYGHWR_DEVS_FLASH_AMD_AM29F800
{ // AM29F800-T
@@ -565,7 +584,10 @@
#ifdef CYGHWR_DEVS_FLASH_AMD_AM29LV128
{ // AM29LV128
+ long_device_id: true,
device_id : FLASHWORD(0x227e),
+ device_id2 : FLASHWORD(0x2212),
+ device_id3 : FLASHWORD(0x2200),
block_size : 0x10000 * CYGNUM_FLASH_INTERLEAVE,
block_count: 256,
device_size: 0x1000000 * CYGNUM_FLASH_INTERLEAVE,
@@ -1092,6 +1114,21 @@
bufsiz : 1
},
#endif
+#ifdef CYGHWR_DEVS_FLASH_AMD_AM29LV256
+ { // AMD AM29LV256
+ long_device_id: true,
+ device_id : FLASHWORD(0x227e),
+ device_id2 : FLASHWORD(0x2212),
+ device_id3 : FLASHWORD(0x2201),
+ block_size : 0x10000 * CYGNUM_FLASH_INTERLEAVE,
+ block_count: 512,
+ device_size: 0x2000000 * CYGNUM_FLASH_INTERLEAVE,
+ base_mask : ~(0x2000000 * CYGNUM_FLASH_INTERLEAVE - 1),
+ bootblock : false,
+ banked : false,
+ bufsiz : 16,
+ },
+#endif
#ifdef CYGHWR_DEVS_FLASH_AMD_S29PL032J
{ // S29PL032J
long_device_id: true,