mirror of https://github.com/xemu-project/xemu.git
target/arm: Move e2h_access() helper around
e2h_access() was added in commit bb5972e439
("target/arm:
Add VHE timer register redirection and aliasing") close to
the generic_timer_cp_reginfo[] array, but isn't used until
vhe_reginfo[] definition. Move it closer to the other e2h
helpers.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20240118200643.29037-19-philmd@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
d780d056f8
commit
32b3a0c900
|
@ -3345,20 +3345,6 @@ static const ARMCPRegInfo generic_timer_cp_reginfo[] = {
|
|||
},
|
||||
};
|
||||
|
||||
static CPAccessResult e2h_access(CPUARMState *env, const ARMCPRegInfo *ri,
|
||||
bool isread)
|
||||
{
|
||||
if (arm_current_el(env) == 1) {
|
||||
/* This must be a FEAT_NV access */
|
||||
/* TODO: FEAT_ECV will need to check CNTHCTL_EL2 here */
|
||||
return CP_ACCESS_OK;
|
||||
}
|
||||
if (!(arm_hcr_el2_eff(env) & HCR_E2H)) {
|
||||
return CP_ACCESS_TRAP;
|
||||
}
|
||||
return CP_ACCESS_OK;
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
/*
|
||||
|
@ -6546,6 +6532,21 @@ static const ARMCPRegInfo el3_cp_reginfo[] = {
|
|||
};
|
||||
|
||||
#ifndef CONFIG_USER_ONLY
|
||||
|
||||
static CPAccessResult e2h_access(CPUARMState *env, const ARMCPRegInfo *ri,
|
||||
bool isread)
|
||||
{
|
||||
if (arm_current_el(env) == 1) {
|
||||
/* This must be a FEAT_NV access */
|
||||
/* TODO: FEAT_ECV will need to check CNTHCTL_EL2 here */
|
||||
return CP_ACCESS_OK;
|
||||
}
|
||||
if (!(arm_hcr_el2_eff(env) & HCR_E2H)) {
|
||||
return CP_ACCESS_TRAP;
|
||||
}
|
||||
return CP_ACCESS_OK;
|
||||
}
|
||||
|
||||
/* Test if system register redirection is to occur in the current state. */
|
||||
static bool redirect_for_e2h(CPUARMState *env)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue