summaryrefslogtreecommitdiff
path: root/cpu/at32ap/hsdramc.c
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2008-02-15 00:14:36 +0100
committerWolfgang Denk <wd@denx.de>2008-02-15 00:14:36 +0100
commitedc886fc3d63c20a9becb2f4793ea18a06a5b18d (patch)
treea2f51423debed2d8c91ca12c02a04df46b9ed226 /cpu/at32ap/hsdramc.c
parent43157747fee69d1fdcfbbc6003453901d723bbc5 (diff)
parent92915741fc7c77175680e036965fb88d7552d743 (diff)
downloadu-boot-imx-edc886fc3d63c20a9becb2f4793ea18a06a5b18d.zip
u-boot-imx-edc886fc3d63c20a9becb2f4793ea18a06a5b18d.tar.gz
u-boot-imx-edc886fc3d63c20a9becb2f4793ea18a06a5b18d.tar.bz2
Merge ../custodians
Diffstat (limited to 'cpu/at32ap/hsdramc.c')
-rw-r--r--cpu/at32ap/hsdramc.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/cpu/at32ap/hsdramc.c b/cpu/at32ap/hsdramc.c
index a936e03..1fcfe75 100644
--- a/cpu/at32ap/hsdramc.c
+++ b/cpu/at32ap/hsdramc.c
@@ -38,6 +38,10 @@ unsigned long sdram_init(const struct sdram_info *info)
unsigned long bus_hz;
unsigned int i;
+ if (!info->refresh_period)
+ panic("ERROR: SDRAM refresh period == 0. "
+ "Please update the board code\n");
+
tmp = (HSDRAMC1_BF(NC, info->col_bits - 8)
| HSDRAMC1_BF(NR, info->row_bits - 11)
| HSDRAMC1_BF(NB, info->bank_bits - 1)
@@ -113,7 +117,7 @@ unsigned long sdram_init(const struct sdram_info *info)
* 15.6 us is a typical value for a burst of length one
*/
bus_hz = get_sdram_clk_rate();
- hsdramc1_writel(TR, (156 * (bus_hz / 1000)) / 10000);
+ hsdramc1_writel(TR, info->refresh_period);
printf("SDRAM: %u MB at address 0x%08lx\n",
sdram_size >> 20, info->phys_addr);