microblaze: Flush cache before jumping to kernel

There is used max cache size on system which doesn't define
cache size.

Signed-off-by: Michal Simek <monstr@monstr.eu>
diff --git a/arch/microblaze/lib/bootm.c b/arch/microblaze/lib/bootm.c
index fef563b..2227a81 100644
--- a/arch/microblaze/lib/bootm.c
+++ b/arch/microblaze/lib/bootm.c
@@ -73,6 +73,14 @@
 		(ulong) theKernel, rd_data_start, (ulong) of_flat_tree);
 #endif
 
+#ifdef XILINX_USE_DCACHE
+#ifdef XILINX_DCACHE_BYTE_SIZE
+	flush_cache(0, XILINX_DCACHE_BYTE_SIZE);
+#else
+#warning please rebuild BSPs and update configuration
+	flush_cache(0, 32768);
+#endif
+#endif
 	/*
 	 * Linux Kernel Parameters (passing device tree):
 	 * r5: pointer to command line