[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [COMMIT be9f2de] CRIS: Update PR_EDA on TLB faults.
From: |
Anthony Liguori |
Subject: |
[Qemu-commits] [COMMIT be9f2de] CRIS: Update PR_EDA on TLB faults. |
Date: |
Thu, 08 Oct 2009 10:15:06 -0000 |
From: Edgar E. Iglesias <address@hidden>
Signed-off-by: Edgar E. Iglesias <address@hidden>
diff --git a/target-cris/helper.c b/target-cris/helper.c
index c0e11d1..a12ac10 100644
--- a/target-cris/helper.c
+++ b/target-cris/helper.c
@@ -82,8 +82,8 @@ int cpu_cris_handle_mmu_fault (CPUState *env, target_ulong
address, int rw,
target_ulong phy;
D(printf ("%s addr=%x pc=%x rw=%x\n", __func__, address, env->pc, rw));
- address &= TARGET_PAGE_MASK;
- miss = cris_mmu_translate(&res, env, address, rw, mmu_idx);
+ miss = cris_mmu_translate(&res, env, address & TARGET_PAGE_MASK,
+ rw, mmu_idx);
if (miss)
{
if (env->exception_index == EXCP_BUSFAULT)
@@ -92,6 +92,7 @@ int cpu_cris_handle_mmu_fault (CPUState *env, target_ulong
address, int rw,
"addr=%x rw=%d\n",
address, rw);
+ env->pregs[PR_EDA] = address;
env->exception_index = EXCP_BUSFAULT;
env->fault_vector = res.bf_vec;
r = 1;
@@ -104,7 +105,8 @@ int cpu_cris_handle_mmu_fault (CPUState *env, target_ulong
address, int rw,
*/
phy = res.phy & ~0x80000000;
prot = res.prot;
- r = tlb_set_page(env, address, phy, prot, mmu_idx, is_softmmu);
+ r = tlb_set_page(env, address & TARGET_PAGE_MASK,
+ phy, prot, mmu_idx, is_softmmu);
}
if (r > 0)
D_LOG("%s returns %d irqreq=%x addr=%x"
diff --git a/target-cris/translate.c b/target-cris/translate.c
index c6068f7..a18d69c 100644
--- a/target-cris/translate.c
+++ b/target-cris/translate.c
@@ -197,10 +197,6 @@ static inline void t_gen_mov_TN_preg(TCGv tn, int r)
tcg_gen_mov_tl(tn, tcg_const_tl(0));
else if (r == PR_VR)
tcg_gen_mov_tl(tn, tcg_const_tl(32));
- else if (r == PR_EDA) {
- printf("read from EDA!\n");
- tcg_gen_mov_tl(tn, cpu_PR[r]);
- }
else
tcg_gen_mov_tl(tn, cpu_PR[r]);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [COMMIT be9f2de] CRIS: Update PR_EDA on TLB faults.,
Anthony Liguori <=