summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2011-11-09 06:14:40 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2011-11-10 15:27:03 +0100
commit7c045d0bfec1e2990e19d3eb1852839e27270387 (patch)
treee02aee893900d98e00882130b9ca26607623367b
parenta4c15c01bfdf5a3345bda4da249ebde2fe742caa (diff)
downloadu-boot-imx-7c045d0bfec1e2990e19d3eb1852839e27270387.zip
u-boot-imx-7c045d0bfec1e2990e19d3eb1852839e27270387.tar.gz
u-boot-imx-7c045d0bfec1e2990e19d3eb1852839e27270387.tar.bz2
integrator: use io-accessors for board init
Casting around to *(volatile ulong *) doesn't look good, so include the <asm/io.h> macros and use good old readl() instead. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r--board/armltd/integrator/integrator.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/board/armltd/integrator/integrator.c b/board/armltd/integrator/integrator.c
index 83f047c..780218c 100644
--- a/board/armltd/integrator/integrator.c
+++ b/board/armltd/integrator/integrator.c
@@ -35,6 +35,7 @@
#include <common.h>
#include <netdev.h>
+#include <asm/io.h>
DECLARE_GLOBAL_DATA_PTR;
@@ -101,15 +102,15 @@ int dram_init (void)
#ifdef CONFIG_CM_SPD_DETECT
{
extern void dram_query(void);
- unsigned long cm_reg_sdram;
- unsigned long sdram_shift;
+ u32 cm_reg_sdram;
+ u32 sdram_shift;
dram_query(); /* Assembler accesses to CM registers */
/* Queries the SPD values */
/* Obtain the SDRAM size from the CM SDRAM register */
- cm_reg_sdram = *(volatile ulong *)(CM_BASE + OS_SDRAM);
+ cm_reg_sdram = readl(CM_BASE + OS_SDRAM);
/* Register SDRAM size
*
* 0xXXXXXXbbb000bb 16 MB
@@ -119,7 +120,7 @@ extern void dram_query(void);
* 0xXXXXXXbbb100bb 256 MB
*
*/
- sdram_shift = ((cm_reg_sdram & 0x0000001C)/4)%4;
+ sdram_shift = ((cm_reg_sdram & 0x0000001C)/4)%4;
gd->ram_size = get_ram_size((long *) CONFIG_SYS_SDRAM_BASE +
REMAPPED_FLASH_SZ,
0x01000000 << sdram_shift);