Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
[firefly-linux-kernel-4.4.55.git] / drivers / edac / edac_mc.c
index af3be1914dbb8f85496473c4c3c5977edd0ed17a..943ed8cf71b946c8dfad8b33b2ee97711443e3ba 100644 (file)
 #include <linux/bitops.h>
 #include <asm/uaccess.h>
 #include <asm/page.h>
-#include <asm/edac.h>
 #include "edac_core.h"
 #include "edac_module.h"
 #include <ras/ras_event.h>
 
+#ifdef CONFIG_EDAC_ATOMIC_SCRUB
+#include <asm/edac.h>
+#else
+#define edac_atomic_scrub(va, size) do { } while (0)
+#endif
+
 /* lock to memory controller's control array */
 static DEFINE_MUTEX(mem_ctls_mutex);
 static LIST_HEAD(mc_devices);
@@ -874,7 +879,7 @@ static void edac_mc_scrub_block(unsigned long page, unsigned long offset,
        virt_addr = kmap_atomic(pg);
 
        /* Perform architecture specific atomic scrub operation */
-       atomic_scrub(virt_addr + offset, size);
+       edac_atomic_scrub(virt_addr + offset, size);
 
        /* Unmap and complete */
        kunmap_atomic(virt_addr);