summaryrefslogtreecommitdiff
path: root/target-cris
diff options
context:
space:
mode:
authoredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>2009-01-26 22:21:30 +0000
committeredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>2009-01-26 22:21:30 +0000
commit5281966437e448e432da25cfba801e4dcf0b9460 (patch)
tree8608ff68f191627f0c0207556fd1024c166510ad /target-cris
parentef99823326554ee10637b583657290f5db216da8 (diff)
downloadqemu-5281966437e448e432da25cfba801e4dcf0b9460.tar.gz
CRIS: Init the feedback shiftreg used for randomizing TLB sets.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6463 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-cris')
-rw-r--r--target-cris/mmu.h1
-rw-r--r--target-cris/translate.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/target-cris/mmu.h b/target-cris/mmu.h
index 1b9aff15bc..aca531a3ed 100644
--- a/target-cris/mmu.h
+++ b/target-cris/mmu.h
@@ -10,6 +10,7 @@ struct cris_mmu_result_t
int bf_vec;
};
+void cris_mmu_init(CPUState *env);
void cris_mmu_flush_pid(CPUState *env, uint32_t pid);
int cris_mmu_translate(struct cris_mmu_result_t *res,
CPUState *env, uint32_t vaddr,
diff --git a/target-cris/translate.c b/target-cris/translate.c
index b6b987a2ce..288262d7b5 100644
--- a/target-cris/translate.c
+++ b/target-cris/translate.c
@@ -36,6 +36,7 @@
#include "disas.h"
#include "tcg-op.h"
#include "helper.h"
+#include "mmu.h"
#include "crisv32-decode.h"
#include "qemu-common.h"
@@ -3471,6 +3472,7 @@ void cpu_reset (CPUCRISState *env)
/* start in user mode with interrupts enabled. */
env->pregs[PR_CCS] |= U_FLAG | I_FLAG;
#else
+ cris_mmu_init(env);
env->pregs[PR_CCS] = 0;
#endif
}