Hi Julien,
>>>> +/*
>>>> + * The following are needed for the case generators
>>>> GENERATE_WRITE_PR_REG_CASE
>>>> + * and GENERATE_READ_PR_REG_CASE with num==0
>>>> + */
>>>> +#define PRBAR0_EL2 PRBAR_EL2
>>>> +#define PRLAR0_EL2 PRLAR_EL2
>>>
>>> Rather than aliasing, shouldn't we just rename PR{B,L}AR_EL2 to
>>> PR{B,L}AR0_EL2? This would the code mixing between the two.
>> PR{B,L}AR0_ELx does not exists really, the PR{B,L}AR<n>_ELx exists for
>> n=1..15, here I’m only using this “alias” for the generator,
>> but PR{B,L}AR_EL2 are the real register.
>
> In this case, can PR{B,L}AR0_EL2 defined in mm.c so they are not used
> anywhere else?
So this was the case in my previous serie, but Ayan asked me to put them in
here because PRBAR_EL2 is arm64 specific, not sure now, shall we move it back
and protect it with CONFIG_ARM_64?
>>>>
>>>> }
>>>> +/* Utility function to be used whenever MPU regions are modified */
>>>> +static inline void context_sync_mpu(void)
>>>> +{
>>>> + /*
>>>> + * ARM DDI 0600B.a, C1.7.1
>>>> + * Writes to MPU registers are only guaranteed to be visible
>>>> following a
>>>> + * Context synchronization event and DSB operation.
>>>
>>> I know we discussed about this before. I find odd that the specification
>>> says "context synchronization event and DSB operation". At least to me, it
>>> implies "isb + dsb" not the other way around. Has this been clarified in
>>> newer version of the specification?
>> unfortunately no, I’m looking into the latest one (Arm® Architecture
>> Reference Manual Supplement Armv8, for R-profile AArch64 architecture
>> 0600B.a) but it has the same wording, however
>> I spoke internally with Cortex-R architects and they told me to use DSB+ISB
>
> So you didn't speak with the ArmV8-R architects? Asking because we are
> writing code for ArmV8-R (so not only Cortex-R).
>
> In any case, I still think this is something that needs to be clarified
> in the specification. So people that don't have access to the Arm internal
> architects know the correct sequence. Is this something you can follow-up on?
Yes I will follow up this one
Cheers,
Luca