Possible mistake in defining TTBR cache-able attributes for v7-2 level ?

Catalin Marinas catalin.marinas at arm.com
Sat Mar 15 19:14:36 EDT 2014


On 15 Mar 2014, at 13:07, Shiraz Hashim <shiraz.linux.kernel at gmail.com> wrote:
> On Fri, Mar 14, 2014 at 9:23 PM, Catalin Marinas
> <catalin.marinas at arm.com> wrote:
>> 
>> On Fri, Mar 14, 2014 at 01:46:27PM +0000, Shiraz Hashim wrote:
>>> TTB_IRGN_WBWA macro defined in arch/arm/mm/proc-v7-2level.S, seems incorrect
>>> 
>>> #define TTB_IRGN_WBWA   ((0 << 0) | (1 << 6))
>>> 
>>> Its intention seems to program as write back and write allocate whereas it
>>> actually
>>> programs it  write-through,
>>> 
>>> From ARM TRM
>>> 
>>> The possible values of IRGN[1:0] are:
>>>  0b00 Normal memory, Inner Non-cacheable.
>>>  0b01 Normal memory, Inner Write-Back Write-Allocate Cacheable.
>>>  0b10 Normal memory, Inner Write-Through Cacheable.
>>>  0b11 Normal memory, Inner Write-Back no Write-Allocate Cacheable.
>>> 
>>> --IRGN[0] is b'0 and IRGN[1] is b'6
>> 
>> In the ARMv7 ARM, IRGN[0] is bit 6 and IRGN[1] is bit 0. Which TRM is
>> this?
> 
> I am referring to Cortex A53 TRM, here
> http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0500d/CIHIDJFJ.html

And this is consistent with what I said above. I don’t see any issue.

Catalin


More information about the linux-arm-kernel mailing list