]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - board/gw8260/flash.c
Merge branch 'master' of git://git.denx.de/u-boot-video
[karo-tx-uboot.git] / board / gw8260 / flash.c
index 532dd194d7b493025c866143f227a441282afa1c..0c4a9439f8d77f436cc79a6b0ddf4c38193d767c 100644 (file)
  * Advent Networks, Inc. <http://www.adventnetworks.com>
  * Oliver Brown <oliverb@alumni.utexas.net>
  *
- *--------------------------------------------------------------------
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.         See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
+ * SPDX-License-Identifier:    GPL-2.0+
  */
 
 /*********************************************************************/
@@ -54,7 +37,7 @@
 #include <common.h>
 #include <mpc8260.h>
 
-flash_info_t flash_info[CFG_MAX_FLASH_BANKS];
+flash_info_t flash_info[CONFIG_SYS_MAX_FLASH_BANKS];
 
 static ulong flash_get_size (vu_long *addr, flash_info_t *info);
 static int write_word (flash_info_t *info, ulong dest, ulong data);
@@ -63,54 +46,50 @@ static int write_word (flash_info_t *info, ulong dest, ulong data);
 /*                   functions                                      */
 /*********************************************************************/
 
-/*********************************************************************/
-/* NAME: flash_init() -         initializes flash banks                     */
-/*                                                                  */
-/* DESCRIPTION:                                                             */
-/*   This function initializes the flash bank(s).                   */
-/*                                                                  */
-/* RETURNS:                                                         */
-/*   The size in bytes of the flash                                 */
-/*                                                                  */
-/* RESTRICTIONS/LIMITATIONS:                                        */
-/*                                                                  */
-/*                                                                  */
-/*********************************************************************/
-unsigned long flash_init (void)
+/*
+ * NAME: flash_init() -         initializes flash banks
+ *
+ * DESCRIPTION:
+ *   This function initializes the flash bank(s).
+ *
+ * RETURNS:
+ *   The size in bytes of the flash
+ *
+ * RESTRICTIONS/LIMITATIONS:
+ *
+ *
+ */
+unsigned long flash_init(void)
 {
-    unsigned long size;
-    int i;
-
-    /* Init: no FLASHes known */
-    for (i=0; i<CFG_MAX_FLASH_BANKS; ++i) {
-       flash_info[i].flash_id = FLASH_UNKNOWN;
-    }
-
-    /* for now, only support the 4 MB Flash SIMM */
-    size = flash_get_size((vu_long *)CFG_FLASH0_BASE, &flash_info[0]);
-
-    /*
-     * protect monitor and environment sectors
-     */
-
-#if CFG_MONITOR_BASE >= CFG_FLASH0_BASE
-    flash_protect(FLAG_PROTECT_SET,
-                 CFG_MONITOR_BASE,
-                 CFG_MONITOR_BASE+CFG_MONITOR_LEN-1,
-                 &flash_info[0]);
+       int i;
+
+       /* Init: no FLASHes known */
+       for (i = 0; i < CONFIG_SYS_MAX_FLASH_BANKS; ++i)
+               flash_info[i].flash_id = FLASH_UNKNOWN;
+
+       /* for now, only support the 4 MB Flash SIMM */
+       (void)flash_get_size((vu_long *) CONFIG_SYS_FLASH0_BASE,
+                             &flash_info[0]);
+       /*
+        * protect monitor and environment sectors
+        */
+#if CONFIG_SYS_MONITOR_BASE >= CONFIG_SYS_FLASH0_BASE
+       flash_protect(FLAG_PROTECT_SET,
+                     CONFIG_SYS_MONITOR_BASE,
+                     CONFIG_SYS_MONITOR_BASE + monitor_flash_len - 1,
+                     &flash_info[0]);
 #endif
 
-#if (CFG_ENV_IS_IN_FLASH == 1) && defined(CFG_ENV_ADDR)
-# ifndef  CFG_ENV_SIZE
-#  define CFG_ENV_SIZE CFG_ENV_SECT_SIZE
-# endif
-    flash_protect(FLAG_PROTECT_SET,
-                 CFG_ENV_ADDR,
-                 CFG_ENV_ADDR + CFG_ENV_SIZE - 1,
-                 &flash_info[0]);
+#if defined(CONFIG_ENV_IS_IN_FLASH) && defined(CONFIG_ENV_ADDR)
+#ifndef CONFIG_ENV_SIZE
+#define CONFIG_ENV_SIZE        CONFIG_ENV_SECT_SIZE
+#endif
+       flash_protect(FLAG_PROTECT_SET,
+                     CONFIG_ENV_ADDR,
+                     CONFIG_ENV_ADDR + CONFIG_ENV_SIZE - 1, &flash_info[0]);
 #endif
 
-    return (CFG_FLASH0_SIZE * 1024 * 1024);  /*size*/
+       return CONFIG_SYS_FLASH0_SIZE * 1024 * 1024;    /*size */
 }
 
 /*********************************************************************/
@@ -357,7 +336,7 @@ int flash_erase (flash_info_t *info, int s_first, int s_last)
     last  = start;
     addr = (vu_long*)(info->start[l_sect]);
     while ((addr[0] & 0x80808080) != 0x80808080) {
-       if ((now = get_timer(start)) > CFG_FLASH_ERASE_TOUT) {
+       if ((now = get_timer(start)) > CONFIG_SYS_FLASH_ERASE_TOUT) {
            printf ("Timeout\n");
            return 1;
        }
@@ -512,7 +491,7 @@ static int write_word (flash_info_t *info, ulong dest, ulong data)
     /* data polling for D7 */
     start = get_timer (0);
     while ((*((vu_long *)dest) & 0x80808080) != (data & 0x80808080)) {
-       if (get_timer(start) > CFG_FLASH_WRITE_TOUT) {
+       if (get_timer(start) > CONFIG_SYS_FLASH_WRITE_TOUT) {
            return (1);
        }
     }