sunxi: reorganize mctl_mem_matches_* functions
[pandora-u-boot.git] / arch / arm / mach-sunxi / dram_helpers.c
index 4a867df..110825b 100644 (file)
@@ -26,19 +26,27 @@ void mctl_await_completion(u32 *reg, u32 mask, u32 val)
 }
 
 /*
- * Test if memory at offset offset matches memory at begin of DRAM
+ * Test if memory at offset matches memory at a certain base
  *
  * Note: dsb() is not available on ARMv5 in Thumb mode
  */
 #ifndef CONFIG_MACH_SUNIV
-bool mctl_mem_matches(u32 offset)
+bool mctl_mem_matches_base(u32 offset, ulong base)
 {
        /* Try to write different values to RAM at two addresses */
-       writel(0, CFG_SYS_SDRAM_BASE);
-       writel(0xaa55aa55, (ulong)CFG_SYS_SDRAM_BASE + offset);
+       writel(0, base);
+       writel(0xaa55aa55, base + offset);
        dsb();
        /* Check if the same value is actually observed when reading back */
-       return readl(CFG_SYS_SDRAM_BASE) ==
-              readl((ulong)CFG_SYS_SDRAM_BASE + offset);
+       return readl(base) ==
+              readl(base + offset);
+}
+
+/*
+ * Test if memory at offset matches memory at begin of DRAM
+ */
+bool mctl_mem_matches(u32 offset)
+{
+       return mctl_mem_matches_base(offset, CFG_SYS_SDRAM_BASE);
 }
 #endif