|
@@ -36,6 +36,7 @@
|
|
|
|
|
|
#include <watchdog.h>
|
|
|
#include <post.h>
|
|
|
+#include <asm/mmu.h>
|
|
|
|
|
|
#if CONFIG_POST & CFG_POST_CPU
|
|
|
|
|
@@ -59,6 +60,8 @@ extern int cpu_post_test_multi (void);
|
|
|
extern int cpu_post_test_string (void);
|
|
|
extern int cpu_post_test_complex (void);
|
|
|
|
|
|
+DECLARE_GLOBAL_DATA_PTR;
|
|
|
+
|
|
|
ulong cpu_post_makecr (long v)
|
|
|
{
|
|
|
ulong cr = 0;
|
|
@@ -81,6 +84,10 @@ int cpu_post_test (int flags)
|
|
|
WATCHDOG_RESET();
|
|
|
if (ic)
|
|
|
icache_disable ();
|
|
|
+#ifdef CONFIG_4xx_DCACHE
|
|
|
+ /* disable cache */
|
|
|
+ change_tlb(gd->bd->bi_memstart, gd->bd->bi_memsize, TLB_WORD2_I_ENABLE);
|
|
|
+#endif
|
|
|
|
|
|
if (ret == 0)
|
|
|
ret = cpu_post_test_cmp ();
|
|
@@ -129,6 +136,10 @@ int cpu_post_test (int flags)
|
|
|
|
|
|
if (ic)
|
|
|
icache_enable ();
|
|
|
+#ifdef CONFIG_4xx_DCACHE
|
|
|
+ /* enable cache */
|
|
|
+ change_tlb(gd->bd->bi_memstart, gd->bd->bi_memsize, 0);
|
|
|
+#endif
|
|
|
|
|
|
WATCHDOG_RESET();
|
|
|
|