[MIPS] Au1xx0: really set KSEG0 to uncached on reboot
authorSergei Shtylylov <sshtylyov@ru.mvista.com>
Wed, 25 Jan 2006 18:27:10 +0000 (21:27 +0300)
committerRalf Baechle <ralf@linux-mips.org>
Tue, 7 Feb 2006 13:30:23 +0000 (13:30 +0000)
Fix a really old buglet in AMD Au1xx0 restart code: instead of
modifying the whole CP0 Config.K0 field to 010b (meaning KSEG0 uncached)
before flushing the caches and resetting a board, it only sets bit 1 of that
reg. which is effectively a NOP since Config.K0 == 011b as the kernel sets it
up (which is also its default value for Au1xx0).

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/au1000/common/reset.c

index 65b84db800e4d63ff65d94ebc38df9a47e000fd1..4ffccedf5967dcf4326e2074e339976ddda8ee8c 100644 (file)
@@ -151,7 +151,7 @@ void au1000_restart(char *command)
        }
 
        set_c0_status(ST0_BEV | ST0_ERL);
-       set_c0_config(CONF_CM_UNCACHED);
+       change_c0_config(CONF_CM_CMASK, CONF_CM_UNCACHED);
        flush_cache_all();
        write_c0_wired(0);