diff options
author | Paul Burton <paul.burton@imgtec.com> | 2016-09-21 10:18:50 (GMT) |
---|---|---|
committer | Daniel Schwierzeck <daniel.schwierzeck@gmail.com> | 2016-09-21 13:04:04 (GMT) |
commit | 4f9226b40379847339af8a7777be26f2db72e79b (patch) | |
tree | a588a056dc8fd9167d595278f78f75553fd28a86 /arch/mips/cpu/start.S | |
parent | 33b5c9b2092e10fa3b8b325823c846368f25bba9 (diff) | |
download | u-boot-fsl-qoriq-4f9226b40379847339af8a7777be26f2db72e79b.tar.xz |
MIPS: Preserve Config implementation-defined bits
The coprocessor 0 Config register includes 9 implementation defined
bits, which in some processors do things like enable write combining or
other functionality. We ought not to wipe them to 0 during boot. Rather
than doing so, preserve their value & only clear the bits standardised
by the MIPS architecture.
Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Diffstat (limited to 'arch/mips/cpu/start.S')
-rw-r--r-- | arch/mips/cpu/start.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/mips/cpu/start.S b/arch/mips/cpu/start.S index 827a544..6aec430 100644 --- a/arch/mips/cpu/start.S +++ b/arch/mips/cpu/start.S @@ -123,8 +123,9 @@ reset: mtc0 zero, CP0_COMPARE #ifndef CONFIG_SKIP_LOWLEVEL_INIT - /* CONFIG0 register */ - li t0, CONF_CM_UNCACHED + mfc0 t0, CP0_CONFIG + and t0, t0, MIPS_CONF_IMPL + or t0, t0, CONF_CM_UNCACHED mtc0 t0, CP0_CONFIG #endif |