]> www.infradead.org Git - users/rw/ppcboot.git/commitdiff
* Fix names for 3 Volt Intel StrataFlash (it's ...J3A)
authorwdenk <wdenk>
Wed, 30 Jan 2002 11:27:57 +0000 (11:27 +0000)
committerwdenk <wdenk>
Wed, 30 Jan 2002 11:27:57 +0000 (11:27 +0000)
* Make "md" command interruptable by ^C
* Add configuration for 9-column SDRAM on PM826 board

14 files changed:
CHANGELOG
board/eric/flash.c
board/evb64260/flash.c
board/flagadm/flash.c
board/lwmon/flash.c
board/musenki/README
board/musenki/flash.c
board/nx823/flash.c
board/w7o/flash.c
common/cmd_mem.c
include/config_PCIPPC2.h
include/config_PM826.h
include/config_hymod.h
include/flash.h

index c1de5f10674c71bb345945734fac9fb41011dc02..3712036078d937b309d06dea3fabf15d69c213b0 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
 Modifications for 1.1.5:
 ======================================================================
 
+* Fix names for 3 Volt Intel StrataFlash (it's ...J3A)
+
+* Make "md" command interruptable by ^C
+
 * Add configuration for 9-column SDRAM on PM826 board
 
 * Fix "reset" command on Sandpoint8240 board
index 75a507a2392207c258957f7a0cb5b33bc72a38a4..4b59a8cda8e803ab5d1e4738efa156ec40a7207c 100644 (file)
@@ -179,9 +179,9 @@ static void flash_get_offsets (ulong base, flash_info_t *info)
        int i;
 
        /* set up sector start adress table */
-       if ((info->flash_id & FLASH_TYPEMASK) == FLASH_28F320JA3 ||
-           (info->flash_id & FLASH_TYPEMASK) == FLASH_28F640JA3 ||
-           (info->flash_id & FLASH_TYPEMASK) == FLASH_28F128JA3) {
+       if ((info->flash_id & FLASH_TYPEMASK) == FLASH_28F320J3A ||
+           (info->flash_id & FLASH_TYPEMASK) == FLASH_28F640J3A ||
+           (info->flash_id & FLASH_TYPEMASK) == FLASH_28F128J3A) {
            for (i = 0; i < info->sector_count; i++) {
                info->start[i] = base + (i * info->size/info->sector_count);
            }
@@ -357,11 +357,11 @@ void flash_print_info  (flash_info_t *info)
        case FLASH_INTEL640T:   printf ("INTEL28F640T (64 Mbit%s",boottype);
                                break;
 #endif
-       case FLASH_28F320JA3:   printf ("INTEL28F320JA3 (32 Mbit%s",boottype);
+       case FLASH_28F320J3A:   printf ("INTEL28F320J3A (32 Mbit%s",boottype);
                                break;
-       case FLASH_28F640JA3:   printf ("INTEL28F640JA3 (64 Mbit%s",boottype);
+       case FLASH_28F640J3A:   printf ("INTEL28F640J3A (64 Mbit%s",boottype);
                                break;
-       case FLASH_28F128JA3:   printf ("INTEL28F128JA3 (128 Mbit%s",boottype);
+       case FLASH_28F128J3A:   printf ("INTEL28F128J3A (128 Mbit%s",boottype);
                                break;
 
        default:                printf ("Unknown Chip Type\n");
@@ -561,18 +561,18 @@ ulong flash_get_size (volatile FLASH_WORD_SIZE *addr, flash_info_t *info)
                info->size = 0x01000000;
                break;                          /* => 16 MB             */
 #endif
-       case (INTEL_ID_28F320JA3 & FLASH_ID_MASK):
-               info->flash_id += FLASH_28F320JA3;
+       case (INTEL_ID_28F320J3A & FLASH_ID_MASK):
+               info->flash_id += FLASH_28F320J3A;
                info->sector_count = 32;
                info->size = 0x00400000;
                break;                          /* => 32 MBit   */
-       case (INTEL_ID_28F640JA3 & FLASH_ID_MASK):
-               info->flash_id += FLASH_28F640JA3;
+       case (INTEL_ID_28F640J3A & FLASH_ID_MASK):
+               info->flash_id += FLASH_28F640J3A;
                info->sector_count = 64;
                info->size = 0x00800000;
                break;                          /* => 64 MBit   */
-       case (INTEL_ID_28F128JA3 & FLASH_ID_MASK):
-               info->flash_id += FLASH_28F128JA3;
+       case (INTEL_ID_28F128J3A & FLASH_ID_MASK):
+               info->flash_id += FLASH_28F128J3A;
                info->sector_count = 128;
                info->size = 0x01000000;
                break;                          /* => 128 MBit          */
index 96f522dd4256866ec0655cb30d1746ad230c26cb..dabc3a9e1a4ea0d399d0650c0374df5d270ea54b 100644 (file)
@@ -108,7 +108,7 @@ flash_get_offsets (ulong base, flash_info_t *info)
        /* set up sector start address table */
        switch(info->flash_id & FLASH_TYPEMASK) {
            case FLASH_AM040:
-           case FLASH_28F128JA3:
+           case FLASH_28F128J3A:
            case FLASH_28F640J3A:
            case FLASH_RAM:
                /* this chip has uniformly spaced sectors */
@@ -189,8 +189,8 @@ flash_print_info  (flash_info_t *info)
        case FLASH_28F640J3A:
                printf ("28F640J3A (64 Mbit)\n");
                break;
-       case FLASH_28F128JA3:
-               printf ("28F128JA3 (128 Mbit)\n");
+       case FLASH_28F128J3A:
+               printf ("28F128J3A (128 Mbit)\n");
                break;
        case FLASH_ROM:
                printf ("ROM\n");
@@ -428,15 +428,15 @@ flash_get_size (int fl_width, vu_long *addr, flash_info_t *info)
                    info->size = 0x80000;
                    break;
                    
-           case INTEL_ID_28F640JA3:
+           case INTEL_ID_28F640J3A:
                    info->flash_id += FLASH_28F640J3A;
                    info->sector_count = 64;
                    info->size = 128*1024 * 64; /* 128kbytes x 64 blocks */
                    if(info->width==4) info->size*=2;   /* 2x16 */
                    break;
 
-           case INTEL_ID_28F128JA3:
-                   info->flash_id += FLASH_28F128JA3;
+           case INTEL_ID_28F128J3A:
+                   info->flash_id += FLASH_28F128J3A;
                    info->sector_count = 128;
                    info->size = 128*1024 * 128; /* 128kbytes x 128 blocks */
                    if(info->width==4) info->size*=2;   /* 2x16 */
index 7359ccf7961efdfc026b26c358dde7e8f6ee1695..d57717365c02958e857b2f5c4407c7a1f7d5f4bd 100644 (file)
@@ -226,8 +226,8 @@ void flash_print_info  (flash_info_t *info)
        case INTEL_ID_28F320C3 & FLASH_TYPEMASK:
                printf ("28F320RC3(4 MB)\n");
                break;
-       case INTEL_ID_28F320JA3 & FLASH_TYPEMASK:
-               printf("28F320JA3 (4 MB)\n");
+       case INTEL_ID_28F320J3A & FLASH_TYPEMASK:
+               printf("28F320J3A (4 MB)\n");
                        break;
        default:
                printf ("Unknown Chip Type\n");
index e8a7bfbf62daf66fd225da691844285550eef7be..22adbeeb569b0f435963bab7d20091f49c02433a 100644 (file)
@@ -237,11 +237,11 @@ void flash_print_info  (flash_info_t *info)
        }
 
        switch (info->flash_id & FLASH_TYPEMASK) {
-       case FLASH_28F320JA3:   printf ("28F320JA3 (32Mbit = 128K x 32)\n");
+       case FLASH_28F320J3A:   printf ("28F320J3A (32Mbit = 128K x 32)\n");
                                break;
-       case FLASH_28F640JA3:   printf ("28F640JA3 (64Mbit = 128K x 64)\n");
+       case FLASH_28F640J3A:   printf ("28F640J3A (64Mbit = 128K x 64)\n");
                                break;
-       case FLASH_28F128JA3:   printf ("28F128JA3 (128Mbit = 128K x 128)\n");
+       case FLASH_28F128J3A:   printf ("28F128J3A (128Mbit = 128K x 128)\n");
                                break;
        default:                printf ("Unknown Chip Type\n");
                                break;
@@ -320,20 +320,20 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)
        DEBUGF("Device ID @ 0x%08lx: 0x%08lx\n", (ulong)(&addr[1]), value);
 
        switch (value) {
-       case INTEL_ID_28F320JA3:
-               info->flash_id += FLASH_28F320JA3;
+       case INTEL_ID_28F320J3A:
+               info->flash_id += FLASH_28F320J3A;
                info->sector_count = 32;
                info->size = 0x00400000 * 2;
                break;                          /* =>  8 MB             */
 
-       case INTEL_ID_28F640JA3:
-               info->flash_id += FLASH_28F640JA3;
+       case INTEL_ID_28F640J3A:
+               info->flash_id += FLASH_28F640J3A;
                info->sector_count = 64;
                info->size = 0x00800000 * 2;
                break;                          /* => 16 MB             */
 
-       case INTEL_ID_28F128JA3:
-               info->flash_id += FLASH_28F128JA3;
+       case INTEL_ID_28F128J3A:
+               info->flash_id += FLASH_28F128J3A;
                info->sector_count = 128;
                info->size = 0x01000000 * 2;
                break;                          /* => 32 MB             */
index 39e327819882d639fd78e60ad35d3904ea0cd284..ee608d45a1e05f3f0061d697b8d9bd16f6648fb4 100644 (file)
@@ -152,7 +152,7 @@ Err:   serial
 Hit any key to stop autoboot:  0 
 => flinfo
 
-Bank # 1: Intel 28F320JA3 (32Mbit = 128K x 32)
+Bank # 1: Intel 28F320J3A (32Mbit = 128K x 32)
   Size: 4 MB in 32 Sectors
   Sector Start Addresses:
     FF800000 (RO) FF820000      FF840000      FF860000      FF880000     
index 541e6dc255a186c92d1cb0b0c317e2f96f26716d..b0b554ef299442d56e57303dbee740db64664e77 100644 (file)
@@ -239,11 +239,11 @@ void flash_print_info  (flash_info_t *info)
        }
 
        switch (info->flash_id & FLASH_TYPEMASK) {
-       case FLASH_28F320JA3:   printf ("28F320JA3 (32Mbit = 128K x 32)\n");
+       case FLASH_28F320J3A:   printf ("28F320J3A (32Mbit = 128K x 32)\n");
                                break;
-       case FLASH_28F640JA3:   printf ("28F640JA3 (64Mbit = 128K x 64)\n");
+       case FLASH_28F640J3A:   printf ("28F640J3A (64Mbit = 128K x 64)\n");
                                break;
-       case FLASH_28F128JA3:   printf ("28F128JA3 (128Mbit = 128K x 128)\n");
+       case FLASH_28F128J3A:   printf ("28F128J3A (128Mbit = 128K x 128)\n");
                                break;
        default:                printf ("Unknown Chip Type\n");
                                break;
@@ -319,20 +319,20 @@ static ulong flash_get_size (vu_char *addr, flash_info_t *info)
        DEBUGF("Device ID @ 0x%08x: 0x%08x\n", (&addr[1]), device);
 
        switch (device) {
-       case BYTEME(INTEL_ID_28F320JA3):
-               info->flash_id += FLASH_28F320JA3;
+       case BYTEME(INTEL_ID_28F320J3A):
+               info->flash_id += FLASH_28F320J3A;
                info->sector_count = 32;
                info->size = 0x00400000;
                break;                          /* =>  4 MB             */
 
-       case BYTEME(INTEL_ID_28F640JA3):
-               info->flash_id += FLASH_28F640JA3;
+       case BYTEME(INTEL_ID_28F640J3A):
+               info->flash_id += FLASH_28F640J3A;
                info->sector_count = 64;
                info->size = 0x00800000;
                break;                          /* => 8 MB              */
 
-       case BYTEME(INTEL_ID_28F128JA3):
-               info->flash_id += FLASH_28F128JA3;
+       case BYTEME(INTEL_ID_28F128J3A):
+               info->flash_id += FLASH_28F128J3A;
                info->sector_count = 128;
                info->size = 0x01000000;
                break;                          /* => 16 MB             */
index 25c78e5da65864cb7001add2f0c53a7d18a7e26a..bff21b8117188bae7caf99b70baa73b685506a4a 100644 (file)
@@ -135,12 +135,12 @@ void flash_print_info  (flash_info_t *info)
        }
 
        switch (info->flash_id & FLASH_TYPEMASK) {
-   case FLASH_28F320JA3:
-                               printf ("28F320JA3\n"); break;
-   case FLASH_28F640JA3:
-                               printf ("28F640JA3\n"); break;
-   case FLASH_28F128JA3:
-                               printf ("28F128JA3\n"); break;
+   case FLASH_28F320J3A:
+                               printf ("28F320J3A\n"); break;
+   case FLASH_28F640J3A:
+                               printf ("28F640J3A\n"); break;
+   case FLASH_28F128J3A:
+                               printf ("28F128J3A\n"); break;
        default:                printf ("Unknown Chip Type\n"); break;
        }
 
@@ -197,20 +197,20 @@ static ulong flash_get_size (FPW *addr, flash_info_t *info)
        value = addr[1];                        /* device ID            */
 
    switch (value) {
-   case (FPW)INTEL_ID_28F320JA3:
-      info->flash_id += FLASH_28F320JA3;
+   case (FPW)INTEL_ID_28F320J3A:
+      info->flash_id += FLASH_28F320J3A;
       info->sector_count = 32;
       info->size = 0x00400000;
       break;            /* => 4 MB     */
 
-   case (FPW)INTEL_ID_28F640JA3:
-      info->flash_id += FLASH_28F640JA3;
+   case (FPW)INTEL_ID_28F640J3A:
+      info->flash_id += FLASH_28F640J3A;
       info->sector_count = 64;
       info->size = 0x00800000;
       break;            /* => 8 MB     */
 
-   case (FPW)INTEL_ID_28F128JA3:
-      info->flash_id += FLASH_28F128JA3;
+   case (FPW)INTEL_ID_28F128J3A:
+      info->flash_id += FLASH_28F128J3A;
       info->sector_count = 128;
       info->size = 0x01000000;
       break;            /* => 16 MB     */
index 66333821c2f0782f72a398139d21d293ec3a7e08..699edd6ac6646c143cbd98a4c582b10a0274d33c 100644 (file)
@@ -129,14 +129,14 @@ void flash_print_info  (flash_info_t *info)
         case FLASH_AM040:
             printf ("AM29LV040 (4096 Kbit, uniform sector size)\n");
             break;
-        case FLASH_28F320JA3:
-            printf ("28F320JA3 (32 Mbit = 128K x 32)\n");
+        case FLASH_28F320J3A:
+            printf ("28F320J3A (32 Mbit = 128K x 32)\n");
             break;
-        case FLASH_28F640JA3:
-            printf ("28F640JA3 (64 Mbit = 128K x 64)\n");
+        case FLASH_28F640J3A:
+            printf ("28F640J3A (64 Mbit = 128K x 64)\n");
             break;
-        case FLASH_28F128JA3:
-            printf ("28F128JA3 (128 Mbit = 128K x 128)\n");
+        case FLASH_28F128J3A:
+            printf ("28F128J3A (128 Mbit = 128K x 128)\n");
             break;
         default:
             printf ("Unknown Chip Type\n");
@@ -252,18 +252,18 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)
         /* Device ID - This shit is interleaved... */
         value = *(addr2 + 1);
         switch (value) {
-            case (unsigned long)INTEL_ID_28F320JA3:
-                info->flash_id += FLASH_28F320JA3;
+            case (unsigned long)INTEL_ID_28F320J3A:
+                info->flash_id += FLASH_28F320J3A;
                 info->sector_count = 32;
                 info->size = 0x00400000 * 2;
                 break;                       /* => 2 X 4 MB */
-            case (unsigned long)INTEL_ID_28F640JA3:
-                info->flash_id += FLASH_28F640JA3;
+            case (unsigned long)INTEL_ID_28F640J3A:
+                info->flash_id += FLASH_28F640J3A;
                 info->sector_count = 64;
                 info->size = 0x00800000 * 2;
                 break;                       /* => 2 X 8 MB */
-            case (unsigned long)INTEL_ID_28F128JA3:
-                info->flash_id += FLASH_28F128JA3;
+            case (unsigned long)INTEL_ID_28F128J3A:
+                info->flash_id += FLASH_28F128J3A;
                 info->sector_count = 128;
                 info->size = 0x01000000 * 2;
                 break;                       /* => 2 X 16 MB */
@@ -285,9 +285,9 @@ static ulong flash_get_size (vu_long *addr, flash_info_t *info)
             for (i = 0; i < info->sector_count; i++)
                 info->start[i] = base + (i * 0x00010000);
             break;
-        case FLASH_28F320JA3:
-        case FLASH_28F640JA3:
-        case FLASH_28F128JA3:
+        case FLASH_28F320J3A:
+        case FLASH_28F640J3A:
+        case FLASH_28F128J3A:
             for (i = 0; i < info->sector_count; i++)
                 info->start[i] = base + (i * 0x00020000 * 2); /* 2 Banks */
             break;
@@ -749,9 +749,9 @@ static int _flash_protect(flash_info_t *info, long sector)
     volatile long *addr = (unsigned long *)sector;
     
     switch(info->flash_id & FLASH_TYPEMASK) {
-        case FLASH_28F320JA3:
-        case FLASH_28F640JA3:
-        case FLASH_28F128JA3:
+        case FLASH_28F320J3A:
+        case FLASH_28F640J3A:
+        case FLASH_28F128J3A:
             *addr = 0x00550055L;             /* Clear the status register */
             *addr = 0x00600060L;             /* Set lock bit setup */
             *addr = 0x00010001L;             /* Set lock bit confirm */
@@ -800,9 +800,9 @@ static int _flash_unprotect(flash_info_t *info, long sector)
     volatile long *addr = (unsigned long *)sector;
     
     switch(info->flash_id & FLASH_TYPEMASK) {
-        case FLASH_28F320JA3:
-        case FLASH_28F640JA3:
-        case FLASH_28F128JA3:
+        case FLASH_28F320J3A:
+        case FLASH_28F640J3A:
+        case FLASH_28F128J3A:
             *addr = 0x00550055L;             /* Clear the status register */
             *addr = 0x00600060L;             /* Clear lock bit setup */
             *addr = 0x00D000D0L;             /* Clear lock bit confirm */
index b2332aa24d7316b1d4697ba7da43dfdffce55b1c..82b6cb8f0b2b6b1dcd6075a73d90d17311857997 100644 (file)
@@ -54,6 +54,7 @@ int do_mem_md    (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[])
        ulong   addr, size, length;
        ulong   i, nbytes, linebytes;
        u_char  *cp;
+       int rc = 0;
 
        /* We use the last specified parameters, unless new ones are
         * entered.
@@ -127,12 +128,16 @@ int do_mem_md    (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[])
                }
                printf("\n");
                nbytes -= linebytes;
+               if (ctrlc()) {
+                       rc = 1;
+                       break;
+               }
        } while (nbytes > 0);
 
        dp_last_addr = addr;
        dp_last_length = length;
        dp_last_size = size;
-       return 0;       
+       return (rc);    
 }
 
 int do_mem_mm    (cmd_tbl_t *cmdtp, bd_t *bd, int flag, int argc, char *argv[])
index d612bf62971f329f019e37bac1e6b71c7475df06..4a663b8ec655fa6a317f0614680d5a43e3fb136a 100644 (file)
@@ -92,7 +92,7 @@
  */
 #define CFG_PBSIZE     (CFG_CBSIZE + sizeof(CFG_PROMPT) + 16)
 
-#define        CFG_MAXARGS     16              /* max number of command args   */
+#define        CFG_MAXARGS     64              /* max number of command args   */
 #define CFG_BARGSIZE   CFG_CBSIZE      /* Boot Argument Buffer Size    */
 #define CFG_LOAD_ADDR  0x00100000      /* Default load address         */
 
 #define CFG_FLASH_WRITE_TOUT   1000    /* Timeout for Flash Write (in ms)      */
 
 /*
- * Warining: environment is not EMBEDDED in the ppcboot code.
+ * Note: environment is not EMBEDDED in the ppcboot code.
  * It's stored in flash separately.
  */
 #define CFG_ENV_IS_IN_FLASH    1
index 26310bdc91ea908c6546f7473e85e531eb6ffae3..cc56ff7050abbe9e79b8fbe18c50ac3fd721de80 100644 (file)
  */
 #define CFG_MIN_AM_MASK        0xC0000000
 
-#define CFG_MPTPR       0x4000
+#define CFG_MPTPR       0x1F00
 
 #define CFG_MRS_OFFS   0x00000000
 
         */ 
 #define CFG_OR2_9COL    (CFG_MIN_AM_MASK                |\
                          ORxS_BPD_4                     |\
-                         ORxS_ROWST_PBI1_A4             |\
+                         ORxS_ROWST_PBI0_A7             |\
                          ORxS_NUMR_13)
 
 #define CFG_PSDMR_9COL  (PSDMR_SDAM_A14_IS_A5           |\
index c15e144496f16331114f8afb0128c51660b7b8fc..343a68818d3c3eba7adc7abe5b0afff85605a2c9 100644 (file)
 #define CFG_FLASH_ERASE_TOUT   120000  /* Flash Erase Timeout (in ms)  */
 #define CFG_FLASH_WRITE_TOUT   500     /* Flash Write Timeout (in ms)  */
 
-#define CFG_FLASH_TYPE         FLASH_28F640JA3
-#define CFG_FLASH_ID           (INTEL_ID_28F640JA3 & 0xff)
+#define CFG_FLASH_TYPE         FLASH_28F640J3A
+#define CFG_FLASH_ID           (INTEL_ID_28F640J3A & 0xff)
 #define CFG_FLASH_NBLOCKS      64
 
 #define        CFG_ENV_IS_IN_FLASH     1
index 6622640557c3d49bfcd4994830ddc029c941d9b5..f08f3024e5a8066f33fafc9337639ec7ac7b47f7 100644 (file)
@@ -145,9 +145,9 @@ extern int flash_real_protect(flash_info_t *info, long sector, int prot);
 #define INTEL_ID_28F320C3   0x88C588C5 /*   4MB , 8 8KB + 63 64KB bbt          */
 
 #define INTEL_ID_28F640J5   0x00150015 /*  64M = 128K x  64                    */
-#define INTEL_ID_28F320JA3  0x00160016 /*  32M = 128K x  32                    */
-#define INTEL_ID_28F640JA3  0x00170017 /*  64M = 128K x  64                    */
-#define INTEL_ID_28F128JA3  0x00180018 /* 128M = 128K x 128                    */
+#define INTEL_ID_28F320J3A  0x00160016 /*  32M = 128K x  32                    */
+#define INTEL_ID_28F640J3A  0x00170017 /*  64M = 128K x  64                    */
+#define INTEL_ID_28F128J3A  0x00180018 /* 128M = 128K x 128                    */
 
 #define INTEL_ID_28F160S3   0x00D000D0 /*  16M = 512K x  32 (64kB x 32)        */
 #define INTEL_ID_28F320S3   0x00D400D4 /*  32M = 512K x  64 (64kB x 64)        */
@@ -207,9 +207,9 @@ extern int flash_real_protect(flash_info_t *info, long sector, int prot);
 #define FLASH_INTEL640T 0x007A         /* INTEL 28F320B3T ( 64M =  4 M x 16 )  */
 #define FLASH_INTEL640B 0x007B         /* INTEL 28F320B3B ( 64M =  4 M x 16 )  */
 
-#define FLASH_28F320JA3 0x007C         /* INTEL 28F320JA3 ( 32M = 128K x  32)  */
-#define FLASH_28F640JA3 0x007D         /* INTEL 28F640JA3 ( 64M = 128K x  64)  */
-#define FLASH_28F128JA3 0x007E         /* INTEL 28F128JA3 (128M = 128K x 128)  */
+#define FLASH_28F320J3A 0x007C         /* INTEL 28F320J3A ( 32M = 128K x  32)  */
+#define FLASH_28F640J3A 0x007D         /* INTEL 28F640J3A ( 64M = 128K x  64)  */
+#define FLASH_28F128J3A 0x007E         /* INTEL 28F128J3A (128M = 128K x 128)  */
 
 #define FLASH_28F008S5 0x0080          /* Intel 28F008S5  (  1M =  64K x 16 )  */
 #define FLASH_28F016SV 0x0081          /* Intel 28F016SV  ( 16M = 512k x 32 )  */