Commit bf0be433 authored by Richard Henderson's avatar Richard Henderson Committed by Peter Maydell
Browse files

target/arm: Export aa64_va_parameters to internals.h



We need to reuse this from helper-a64.c.  Provide a stub
definition for CONFIG_USER_ONLY.  This matches the stub
definitions that we removed for arm_regime_tbi{0,1} before.

Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
Signed-off-by: default avatarRichard Henderson <richard.henderson@linaro.org>
Message-id: 20190108223129.5570-21-richard.henderson@linaro.org
Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parent 476a4692
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -9744,7 +9744,7 @@ static uint8_t convert_stage2_attrs(CPUARMState *env, uint8_t s2attrs)
    return (hiattr << 6) | (hihint << 4) | (loattr << 2) | lohint;
}

static ARMVAParameters aa64_va_parameters(CPUARMState *env, uint64_t va,
ARMVAParameters aa64_va_parameters(CPUARMState *env, uint64_t va,
                                   ARMMMUIdx mmu_idx, bool data)
{
    uint64_t tcr = regime_tcr(env, mmu_idx)->raw_tcr;
+17 −0
Original line number Diff line number Diff line
@@ -956,4 +956,21 @@ typedef struct ARMVAParameters {
    bool using64k   : 1;
} ARMVAParameters;

#ifdef CONFIG_USER_ONLY
static inline ARMVAParameters aa64_va_parameters(CPUARMState *env,
                                                 uint64_t va,
                                                 ARMMMUIdx mmu_idx, bool data)
{
    return (ARMVAParameters) {
        /* 48-bit address space */
        .tsz = 16,
        /* We can't handle tagged addresses properly in user-only mode */
        .tbi = false,
    };
}
#else
ARMVAParameters aa64_va_parameters(CPUARMState *env, uint64_t va,
                                   ARMMMUIdx mmu_idx, bool data);
#endif

#endif