Thanks for the input Peter.

>From briefly looking, it actually looks like the ARMv7 spec more strictly
states that the default is secure.  ARMv8 on the other hand appears to
leave it open as implementation defined,

Based on out past discussions, I assumed non-secure as the default and that
appears to be the direction of Fabian's code as well.  Clearly if we want
to follow the spec, we'd both need to change this default.

Greg



On 14 May 2014 16:29, Peter Maydell <peter.mayd...@linaro.org> wrote:

> On 14 May 2014 21:22, Greg Bellows <greg.bell...@linaro.org> wrote:
> > I suppose it depends on how true we want to be to the specification and
> > whether our default is NS=0 or NS=1 when the security extension is
> present
> > or not.  The code currently assumes non-secure as the default state.
>
> The v8 ARM ARM at least allows the CPU to behave as if only
> NS was present if there is no implementation of the Security
> extensions. I haven't checked the v7 wording.
>
> (In general I think QEMU's implementation of this should follow
> the v8 ARM ARM and treat v7 CPUs as a sort of special degenerate
> case.)
>
> > Is there a convention in qemu?  How closely do we attempt to stay to the
> > pseudo code provided in the spec?
>
> The pseudocode in the ARM ARM is part of the spec. We should
> strive to follow the spec. This doesn't necessarily mean matching
> pseudocode functions exactly -- the requirement is to be
> behaviourally the same, and sometimes the pseudocode is
> written to be clear rather than efficient or to deal with situations
> we don't necessarily care about.
>
> thanks
> -- PMM
>

Reply via email to