diff options
author | wdenk <wdenk> | 2003-08-28 09:41:22 +0000 |
---|---|---|
committer | wdenk <wdenk> | 2003-08-28 09:41:22 +0000 |
commit | d94f92cbd7f4a4d3bf0d5d963b709c686e8f6633 (patch) | |
tree | c85dd4a10c5a68ca09b9139c1b6428d55ada6451 /board/icecube/icecube.c | |
parent | e0ac62d798ce60ec5d43125d4786e58b0d881836 (diff) | |
download | u-boot-imx-d94f92cbd7f4a4d3bf0d5d963b709c686e8f6633.zip u-boot-imx-d94f92cbd7f4a4d3bf0d5d963b709c686e8f6633.tar.gz u-boot-imx-d94f92cbd7f4a4d3bf0d5d963b709c686e8f6633.tar.bz2 |
* Fix ICU862 environment problem
* Fix RAM size detection for RMU board
* Implement "reset" for MGT5100/MPC5200 systems
Diffstat (limited to 'board/icecube/icecube.c')
-rw-r--r-- | board/icecube/icecube.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/board/icecube/icecube.c b/board/icecube/icecube.c index 396ad2a..f75e675 100644 --- a/board/icecube/icecube.c +++ b/board/icecube/icecube.c @@ -25,6 +25,7 @@ #include <mpc5xxx.h> #include <pci.h> +#ifndef CFG_RAMBOOT static long int dram_size(long int *base, long int maxsize) { volatile long int *addr; @@ -86,11 +87,14 @@ static void sdram_start (int hi_addr) /* normal operation */ *(vu_long *)MPC5XXX_SDRAM_CTRL = 0x504f0000 | hi_addr_bit; } +#endif long int initdram (int board_type) { - ulong test1, test2, dramsize = 0; + ulong dramsize = 0; #ifndef CFG_RAMBOOT + ulong test1, test2; + /* configure SDRAM start/end */ #if defined(CONFIG_MPC5200) *(vu_long *)MPC5XXX_SDRAM_CS0CFG = 0x0000001e;/* 2G at 0x0 */ @@ -133,8 +137,11 @@ long int initdram (int board_type) #else #ifdef CONFIG_MGT5100 *(vu_long *)MPC5XXX_ADDECR |= (1 << 22); /* Enable SDRAM */ + dramsize = ((*(vu_long *)MPC5XXX_SDRAM_STOP + 1) << 15); +#else + dramsize = ((1 << (*(vu_long *)MPC5XXX_SDRAM_CS0CFG - 0x13)) << 20); #endif -#endif +#endif /* CFG_RAMBOOT */ /* return total ram size */ return dramsize; } |