|
@@ -175,10 +175,8 @@ void mx28_mem_setup_vddd(void)
|
|
|
&power_regs->hw_power_vdddctrl);
|
|
|
}
|
|
|
|
|
|
-void mx28_mem_get_size(void)
|
|
|
+uint32_t mx28_mem_get_size(void)
|
|
|
{
|
|
|
- struct mx28_digctl_regs *digctl_regs =
|
|
|
- (struct mx28_digctl_regs *)MXS_DIGCTL_BASE;
|
|
|
uint32_t sz, da;
|
|
|
uint32_t *vt = (uint32_t *)0x20;
|
|
|
/* The following is "subs pc, r14, #4", used as return from DABT. */
|
|
@@ -189,11 +187,11 @@ void mx28_mem_get_size(void)
|
|
|
vt[4] = data_abort_memdetect_handler;
|
|
|
|
|
|
sz = get_ram_size((long *)PHYS_SDRAM_1, PHYS_SDRAM_1_SIZE);
|
|
|
- writel(sz, &digctl_regs->hw_digctl_scratch0);
|
|
|
- writel(sz, &digctl_regs->hw_digctl_scratch1);
|
|
|
|
|
|
/* Restore the old DABT handler. */
|
|
|
vt[4] = da;
|
|
|
+
|
|
|
+ return sz;
|
|
|
}
|
|
|
|
|
|
void mx28_mem_init(void)
|
|
@@ -241,6 +239,4 @@ void mx28_mem_init(void)
|
|
|
early_delay(10000);
|
|
|
|
|
|
mx28_mem_setup_cpu_and_hbus();
|
|
|
-
|
|
|
- mx28_mem_get_size();
|
|
|
}
|