Revision 6ebbf390 target-cris/helper.c
b/target-cris/helper.c | ||
---|---|---|
35 | 35 |
} |
36 | 36 |
|
37 | 37 |
int cpu_cris_handle_mmu_fault(CPUState * env, target_ulong address, int rw, |
38 |
int is_user, int is_softmmu)
|
|
38 |
int mmu_idx, int is_softmmu)
|
|
39 | 39 |
{ |
40 | 40 |
env->exception_index = 0xaa; |
41 | 41 |
env->debug1 = address; |
... | ... | |
52 | 52 |
#else /* !CONFIG_USER_ONLY */ |
53 | 53 |
|
54 | 54 |
int cpu_cris_handle_mmu_fault (CPUState *env, target_ulong address, int rw, |
55 |
int is_user, int is_softmmu)
|
|
55 |
int mmu_idx, int is_softmmu)
|
|
56 | 56 |
{ |
57 | 57 |
struct cris_mmu_result_t res; |
58 | 58 |
int prot, miss; |
... | ... | |
61 | 61 |
address &= TARGET_PAGE_MASK; |
62 | 62 |
prot = PAGE_READ | PAGE_WRITE | PAGE_EXEC; |
63 | 63 |
// printf ("%s pc=%x %x w=%d smmu=%d\n", __func__, env->pc, address, rw, is_softmmu); |
64 |
miss = cris_mmu_translate(&res, env, address, rw, is_user);
|
|
64 |
miss = cris_mmu_translate(&res, env, address, rw, mmu_idx);
|
|
65 | 65 |
if (miss) |
66 | 66 |
{ |
67 | 67 |
/* handle the miss. */ |
... | ... | |
73 | 73 |
phy = res.phy; |
74 | 74 |
} |
75 | 75 |
// printf ("a=%x phy=%x\n", address, phy); |
76 |
return tlb_set_page(env, address, phy, prot, is_user, is_softmmu);
|
|
76 |
return tlb_set_page(env, address, phy, prot, mmu_idx, is_softmmu);
|
|
77 | 77 |
} |
78 | 78 |
|
79 | 79 |
|
Also available in: Unified diff