[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 12/13] target/mips: Let get_seg*_physical_address() take MMUAcces
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 12/13] target/mips: Let get_seg*_physical_address() take MMUAccessType arg |
Date: |
Thu, 28 Jan 2021 15:41:24 +0100 |
get_physical_address() calls get_seg_physical_address() and
get_segctl_physical_address() passing a MMUAccessType type.
Let the prototypes use it as argument, as it is stricter than
an integer.
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
target/mips/tlb_helper.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/target/mips/tlb_helper.c b/target/mips/tlb_helper.c
index 64e89591abc..14f5b1a0a9c 100644
--- a/target/mips/tlb_helper.c
+++ b/target/mips/tlb_helper.c
@@ -222,7 +222,7 @@ static int is_seg_am_mapped(unsigned int am, bool eu, int
mmu_idx)
static int get_seg_physical_address(CPUMIPSState *env, hwaddr *physical,
int *prot, target_ulong real_address,
- int rw, int mmu_idx,
+ MMUAccessType access_type, int mmu_idx,
unsigned int am, bool eu,
target_ulong segmask,
hwaddr physical_base)
@@ -234,7 +234,8 @@ static int get_seg_physical_address(CPUMIPSState *env,
hwaddr *physical,
return mapped;
} else if (mapped) {
/* The segment is TLB mapped */
- return env->tlb->map_address(env, physical, prot, real_address, rw);
+ return env->tlb->map_address(env, physical, prot, real_address,
+ access_type);
} else {
/* The segment is unmapped */
*physical = physical_base | (real_address & segmask);
@@ -245,15 +246,15 @@ static int get_seg_physical_address(CPUMIPSState *env,
hwaddr *physical,
static int get_segctl_physical_address(CPUMIPSState *env, hwaddr *physical,
int *prot, target_ulong real_address,
- int rw, int mmu_idx,
+ MMUAccessType access_type, int mmu_idx,
uint16_t segctl, target_ulong segmask)
{
unsigned int am = (segctl & CP0SC_AM_MASK) >> CP0SC_AM;
bool eu = (segctl >> CP0SC_EU) & 1;
hwaddr pa = ((hwaddr)segctl & CP0SC_PA_MASK) << 20;
- return get_seg_physical_address(env, physical, prot, real_address, rw,
- mmu_idx, am, eu, segmask,
+ return get_seg_physical_address(env, physical, prot, real_address,
+ access_type, mmu_idx, am, eu, segmask,
pa & ~(hwaddr)segmask);
}
--
2.26.2
- [PATCH 01/13] target/mips: Remove access_type argument from map_address() handler, (continued)
- [PATCH 01/13] target/mips: Remove access_type argument from map_address() handler, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 02/13] target/mips: Remove access_type argument from get_seg_physical_address, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 03/13] target/mips: Remove access_type arg from get_segctl_physical_address(), Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 04/13] target/mips: Remove access_type argument from get_physical_address(), Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 05/13] target/mips: Remove unused MMU definitions, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 06/13] target/mips: Replace magic value by MMU_DATA_LOAD definition, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 07/13] target/mips: Let page_table_walk_refill() take MMUAccessType argument, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 08/13] target/mips: Let do_translate_address() take MMUAccessType argument, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 09/13] target/mips: Let cpu_mips_translate_address() take MMUAccessType arg, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 10/13] target/mips: Let raise_mmu_exception() take MMUAccessType argument, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 12/13] target/mips: Let get_seg*_physical_address() take MMUAccessType arg,
Philippe Mathieu-Daudé <=
- [PATCH 11/13] target/mips: Let get_physical_address() take MMUAccessType argument, Philippe Mathieu-Daudé, 2021/01/28
- [PATCH 13/13] target/mips: Let CPUMIPSTLBContext::map_address() take MMUAccessType, Philippe Mathieu-Daudé, 2021/01/28