This is the mail archive of the ecos-patches@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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,

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]