mirror of https://gitee.com/openkylin/qemu.git
target/mips: Remove access_type arg from get_segctl_physical_address()
get_segctl_physical_address() doesn't use the 'access_type' argument, remove it to simplify. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Message-Id: <20210128144125.3696119-4-f4bug@amsat.org>
This commit is contained in:
parent
4968922825
commit
0230a13793
|
@ -245,7 +245,7 @@ static int get_seg_physical_address(CPUMIPSState *env, hwaddr *physical,
|
||||||
|
|
||||||
static int get_segctl_physical_address(CPUMIPSState *env, hwaddr *physical,
|
static int get_segctl_physical_address(CPUMIPSState *env, hwaddr *physical,
|
||||||
int *prot, target_ulong real_address,
|
int *prot, target_ulong real_address,
|
||||||
int rw, int access_type, int mmu_idx,
|
int rw, int mmu_idx,
|
||||||
uint16_t segctl, target_ulong segmask)
|
uint16_t segctl, target_ulong segmask)
|
||||||
{
|
{
|
||||||
unsigned int am = (segctl & CP0SC_AM_MASK) >> CP0SC_AM;
|
unsigned int am = (segctl & CP0SC_AM_MASK) >> CP0SC_AM;
|
||||||
|
@ -306,7 +306,7 @@ static int get_physical_address(CPUMIPSState *env, hwaddr *physical,
|
||||||
segctl = env->CP0_SegCtl2 >> 16;
|
segctl = env->CP0_SegCtl2 >> 16;
|
||||||
}
|
}
|
||||||
ret = get_segctl_physical_address(env, physical, prot,
|
ret = get_segctl_physical_address(env, physical, prot,
|
||||||
real_address, rw, access_type,
|
real_address, rw,
|
||||||
mmu_idx, segctl, 0x3FFFFFFF);
|
mmu_idx, segctl, 0x3FFFFFFF);
|
||||||
#if defined(TARGET_MIPS64)
|
#if defined(TARGET_MIPS64)
|
||||||
} else if (address < 0x4000000000000000ULL) {
|
} else if (address < 0x4000000000000000ULL) {
|
||||||
|
@ -370,26 +370,26 @@ static int get_physical_address(CPUMIPSState *env, hwaddr *physical,
|
||||||
#endif
|
#endif
|
||||||
} else if (address < KSEG1_BASE) {
|
} else if (address < KSEG1_BASE) {
|
||||||
/* kseg0 */
|
/* kseg0 */
|
||||||
ret = get_segctl_physical_address(env, physical, prot, real_address, rw,
|
ret = get_segctl_physical_address(env, physical, prot, real_address,
|
||||||
access_type, mmu_idx,
|
rw, mmu_idx,
|
||||||
env->CP0_SegCtl1 >> 16, 0x1FFFFFFF);
|
env->CP0_SegCtl1 >> 16, 0x1FFFFFFF);
|
||||||
} else if (address < KSEG2_BASE) {
|
} else if (address < KSEG2_BASE) {
|
||||||
/* kseg1 */
|
/* kseg1 */
|
||||||
ret = get_segctl_physical_address(env, physical, prot, real_address, rw,
|
ret = get_segctl_physical_address(env, physical, prot, real_address,
|
||||||
access_type, mmu_idx,
|
rw, mmu_idx,
|
||||||
env->CP0_SegCtl1, 0x1FFFFFFF);
|
env->CP0_SegCtl1, 0x1FFFFFFF);
|
||||||
} else if (address < KSEG3_BASE) {
|
} else if (address < KSEG3_BASE) {
|
||||||
/* sseg (kseg2) */
|
/* sseg (kseg2) */
|
||||||
ret = get_segctl_physical_address(env, physical, prot, real_address, rw,
|
ret = get_segctl_physical_address(env, physical, prot, real_address,
|
||||||
access_type, mmu_idx,
|
rw, mmu_idx,
|
||||||
env->CP0_SegCtl0 >> 16, 0x1FFFFFFF);
|
env->CP0_SegCtl0 >> 16, 0x1FFFFFFF);
|
||||||
} else {
|
} else {
|
||||||
/*
|
/*
|
||||||
* kseg3
|
* kseg3
|
||||||
* XXX: debug segment is not emulated
|
* XXX: debug segment is not emulated
|
||||||
*/
|
*/
|
||||||
ret = get_segctl_physical_address(env, physical, prot, real_address, rw,
|
ret = get_segctl_physical_address(env, physical, prot, real_address,
|
||||||
access_type, mmu_idx,
|
rw, mmu_idx,
|
||||||
env->CP0_SegCtl0, 0x1FFFFFFF);
|
env->CP0_SegCtl0, 0x1FFFFFFF);
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
|
Loading…
Reference in New Issue