]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - board/tqc/tqm834x/tqm834x.c
Remove CONFIG_SYS_BOOTCOUNT_SINGLEWORD
[people/ms/u-boot.git] / board / tqc / tqm834x / tqm834x.c
index 8d046f482f45f6756a401380efac32d11ff95707..4642342bfb3d7755e425d8a5521ee54027fde4e8 100644 (file)
@@ -2,24 +2,7 @@
  * (C) Copyright 2005
  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
  *
- * 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+
  */
 
 #include <common.h>
@@ -30,6 +13,8 @@
 #include <miiphy.h>
 #include <asm/mmu.h>
 #include <pci.h>
+#include <flash.h>
+#include <mtd/cfi_flash.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -52,17 +37,13 @@ DECLARE_GLOBAL_DATA_PTR;
 #define INITIAL_CS_CONFIG      (CSCONFIG_EN | CSCONFIG_ROW_BIT_12 | \
                                CSCONFIG_COL_BIT_9)
 
-/* Global variable used to store detected number of banks */
-int tqm834x_num_flash_banks;
-
 /* External definitions */
 ulong flash_get_size (ulong base, int banknum);
-extern flash_info_t flash_info[];
 
 /* Local functions */
 static int detect_num_flash_banks(void);
-static long int get_ddr_bank_size(short cs, volatile long *base);
-static void set_cs_bounds(short cs, long base, long size);
+static long int get_ddr_bank_size(short cs, long *base);
+static void set_cs_bounds(short cs, ulong base, ulong size);
 static void set_cs_config(short cs, long config);
 static void set_ddr_config(void);
 
@@ -85,7 +66,7 @@ int board_early_init_r (void) {
 /**************************************************************************
  * DRAM initalization and size detection
  */
-phys_size_t initdram (int board_type)
+int dram_init(void)
 {
        long bank_size;
        long size;
@@ -122,16 +103,18 @@ phys_size_t initdram (int board_type)
                debug("\nDetecting Bank%d\n", cs);
 
                bank_size = get_ddr_bank_size(cs,
-                       (volatile long*)(CONFIG_SYS_DDR_BASE + size));
+                       (long *)(CONFIG_SYS_DDR_BASE + size));
                size += bank_size;
 
-               debug("DDR Bank%d size: %d MiB\n\n", cs, bank_size >> 20);
+               debug("DDR Bank%d size: %ld MiB\n\n", cs, bank_size >> 20);
 
                /* exit if less than one bank */
                if(size < DDR_MAX_SIZE_PER_CS) break;
        }
 
-       return size;
+       gd->ram_size = size;
+
+       return 0;
 }
 
 /**************************************************************************
@@ -190,7 +173,7 @@ static int detect_num_flash_banks(void)
        ulong bank2_size;
        ulong total_size;
 
-       tqm834x_num_flash_banks = 2;    /* assume two banks */
+       cfi_flash_num_flash_banks = 2;  /* assume two banks */
 
        /* Get bank 1 and 2 information */
        bank1_size = flash_get_size(CONFIG_SYS_FLASH_BASE, 0);
@@ -244,13 +227,13 @@ static int detect_num_flash_banks(void)
                                 * we got the some data reading from Flash.
                                 * There is only one mirrored bank.
                                 */
-                               tqm834x_num_flash_banks = 1;
+                               cfi_flash_num_flash_banks = 1;
                                total_size = bank1_size;
                        }
                }
        }
 
-       debug("Number of flash banks detected: %d\n", tqm834x_num_flash_banks);
+       debug("Number of flash banks detected: %d\n", cfi_flash_num_flash_banks);
 
        /* set OR0 and BR0 */
        set_lbc_or(0, CONFIG_SYS_OR_TIMING_FLASH |
@@ -264,7 +247,7 @@ static int detect_num_flash_banks(void)
 /*************************************************************************
  * Detect the size of a ddr bank. Sets CS bounds and CS config accordingly.
  */
-static long int get_ddr_bank_size(short cs, volatile long *base)
+static long int get_ddr_bank_size(short cs, long *base)
 {
        /* This array lists all valid DDR SDRAM configurations, with
         * Bank sizes in bytes. (Refer to Table 9-27 in the MPC8349E RM).
@@ -333,9 +316,9 @@ static long int get_ddr_bank_size(short cs, volatile long *base)
 /**************************************************************************
  * Sets DDR bank CS bounds.
  */
-static void set_cs_bounds(short cs, long base, long size)
+static void set_cs_bounds(short cs, ulong base, ulong size)
 {
-       debug("Setting bounds %08x, %08x for cs %d\n", base, size, cs);
+       debug("Setting bounds %08lx, %08lx for cs %d\n", base, size, cs);
        if(size == 0){
                im->ddr.csbnds[cs].csbnds = 0x00000000;
        } else {
@@ -353,7 +336,7 @@ static void set_cs_bounds(short cs, long base, long size)
  */
 static void set_cs_config(short cs, long config)
 {
-       debug("Setting config %08x for cs %d\n", config, cs);
+       debug("Setting config %08lx for cs %d\n", config, cs);
        im->ddr.cs_config[cs] = config;
        SYNC;
 }
@@ -433,12 +416,14 @@ static void set_ddr_config(void) {
 }
 
 #ifdef CONFIG_OF_BOARD_SETUP
-void ft_board_setup(void *blob, bd_t *bd)
+int ft_board_setup(void *blob, bd_t *bd)
 {
        ft_cpu_setup(blob, bd);
 
 #ifdef CONFIG_PCI
        ft_pci_setup(blob, bd);
 #endif /* CONFIG_PCI */
+
+       return 0;
 }
 #endif /* CONFIG_OF_BOARD_SETUP */