target/arm: Move stage_1_mmu_idx decl to internals.h

Move the decl from ptw.h to internals.h.  Provide an inline
version for user-only, just as we do for arm_stage1_mmu_idx.
Move an endif down to make the definition in helper.c be
system only.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220604040607.269301-2-richard.henderson@linaro.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
Richard Henderson 2022-06-08 19:38:48 +01:00 committed by Peter Maydell
parent b3f5cc3fda
commit d8cca960a9
2 changed files with 7 additions and 3 deletions

View File

@ -10517,12 +10517,10 @@ static inline uint64_t regime_ttbr(CPUARMState *env, ARMMMUIdx mmu_idx,
} }
} }
#endif /* !CONFIG_USER_ONLY */
/* Convert a possible stage1+2 MMU index into the appropriate /* Convert a possible stage1+2 MMU index into the appropriate
* stage 1 MMU index * stage 1 MMU index
*/ */
static inline ARMMMUIdx stage_1_mmu_idx(ARMMMUIdx mmu_idx) ARMMMUIdx stage_1_mmu_idx(ARMMMUIdx mmu_idx)
{ {
switch (mmu_idx) { switch (mmu_idx) {
case ARMMMUIdx_SE10_0: case ARMMMUIdx_SE10_0:
@ -10541,6 +10539,7 @@ static inline ARMMMUIdx stage_1_mmu_idx(ARMMMUIdx mmu_idx)
return mmu_idx; return mmu_idx;
} }
} }
#endif /* !CONFIG_USER_ONLY */
/* Return true if the translation regime is using LPAE format page tables */ /* Return true if the translation regime is using LPAE format page tables */
static inline bool regime_using_lpae_format(CPUARMState *env, static inline bool regime_using_lpae_format(CPUARMState *env,

View File

@ -979,11 +979,16 @@ ARMMMUIdx arm_mmu_idx(CPUARMState *env);
* Return the ARMMMUIdx for the stage1 traversal for the current regime. * Return the ARMMMUIdx for the stage1 traversal for the current regime.
*/ */
#ifdef CONFIG_USER_ONLY #ifdef CONFIG_USER_ONLY
static inline ARMMMUIdx stage_1_mmu_idx(ARMMMUIdx mmu_idx)
{
return ARMMMUIdx_Stage1_E0;
}
static inline ARMMMUIdx arm_stage1_mmu_idx(CPUARMState *env) static inline ARMMMUIdx arm_stage1_mmu_idx(CPUARMState *env)
{ {
return ARMMMUIdx_Stage1_E0; return ARMMMUIdx_Stage1_E0;
} }
#else #else
ARMMMUIdx stage_1_mmu_idx(ARMMMUIdx mmu_idx);
ARMMMUIdx arm_stage1_mmu_idx(CPUARMState *env); ARMMMUIdx arm_stage1_mmu_idx(CPUARMState *env);
#endif #endif