Am 22.09.2012 15:05, schrieb Peter Maydell:
> On 22 September 2012 12:45, Andreas Färber <andreas.faer...@web.de> wrote:
>> +static void cortex_r4_initfn(Object *obj)
>> +{
>> +    ARMCPU *cpu = ARM_CPU(obj);
>> +    set_feature(&cpu->env, ARM_FEATURE_V7);
>> +    set_feature(&cpu->env, ARM_FEATURE_THUMB_DIV);
>> +    set_feature(&cpu->env, ARM_FEATURE_MPU);
> 
> This will trip the assert in register_cp_regs_for_features():

Thanks for the pointer. This rebased version is only compile-tested and
is provided mainly for the ST guys to build upon, during my absence.

>     if (arm_feature(env, ARM_FEATURE_MPU)) {
>         /* These are the MPU registers prior to PMSAv6. Any new
>          * PMSA core later than the ARM946 will require that we
>          * implement the PMSAv6 or PMSAv7 registers, which are
>          * completely different.
>          */
>         assert(!arm_feature(env, ARM_FEATURE_V6));
> 
> ...indicating that R4 support is more work than is contained
> in this patch :-)

...which confirms what I stated in the message this is threaded to, and
is reflected by "prepare". :)

Same for VFPv3-D16 in the second RFC patch (which used to "add" to
cortex-r4, now should've been updated to "prepare" as well).

And of course the Cortex-R4's lock-step mode that seems to make it so
interesting for automotive customers.

/-F

Reply via email to