[PATCH qemu 38/38] target-arm: Add VBAR support to ARM1176 CPUs

Joel Stanley joel at jms.id.au
Mon Nov 21 18:27:10 AEDT 2016


On Sat, Nov 19, 2016 at 12:52 AM, Cédric Le Goater <clg at kaod.org> wrote:
> ARM1176 CPUs support the Vector Base Address Register but currently,
> qemu only supports VBAR on ARMv7 CPUs. Fix this by adding a new
> feature ARM_FEATURE_VBAR which is used for ARMv7 and ARM1176 CPUs.
>
> Signed-off-by: Cédric Le Goater <clg at kaod.org>
>
> From Peter Maydell :
>
>     Is it sufficient to set ARM_FEATURE_VBAR in the realizefn
>     if FEATURE_V7 or FEATURE_EL3? (watch out that realizefn
>     may change the value of the FEATURE_EL3 bit partway down
>     so you'd need to do the check there) ?
>
>     We implement VBAR in v7-without-EL3 even though architecturally
>     it should only exist in v7-with-EL3 because we have some
>     legacy board models which we implement as without-EL3 but
>     where the guest (Linux) assumes it's running on a with-EL3
>     CPU in NS mode. I'd rather we stick to the architectural
>     definition for 1176 if we can rather than expanding the
>     "things we do which aren't architectural" set if there's
>     no legacy config that requires it. (If it is necessary
>     to define it for 1176 always then that's OK, I'd just
>     prefer not to unless we know we have to.)
>
>     We should probably also have a brief comment noting that
>     we define VBAR always in v7, even though architecturally
>     it doesn't exist in non-EL3 configs, for the benefit of
>     legacy board models.
>
>     (In v8 VBAR is required whether EL3 is implemented or not.)
>
>     thanks
> Signed-off-by: Cédric Le Goater <clg at kaod.org>

Tested-by: Joel Stanley <joel at jms.id.au>


> ---
>  target-arm/cpu.c    |  2 ++
>  target-arm/cpu.h    |  1 +
>  target-arm/helper.c | 18 ++++++++++++------
>  3 files changed, 15 insertions(+), 6 deletions(-)


More information about the openbmc mailing list