Arm Community
Site
Search
User
Site
Search
User
Support forums
Arm Development Studio forum
Cacheable setting in TTBR and Page descriptors
Jump...
Cancel
Locked
Locked
Replies
4 replies
Subscribers
118 subscribers
Views
4911 views
Users
0 members are here
Options
Share
More actions
Cancel
Related
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion
Cacheable setting in TTBR and Page descriptors
KyongHo Cho
over 12 years ago
Note: This was originally posted on 24th February 2010 at
http://forums.arm.com
Hi there!
While reading the ARMv7-AR reference manual,
we have to configure cacheable settings on both of TTB registers and page descriptors.
The followings list same settings in TTBR and page descriptors:
S : shareable
RGN / TEX,C,B : inner and outer cacheable
As I know, TEX, C, B and S bits in the page descriptors are applied to the page described by the page descriptor.
I guess the meaning of S and RGN bits in TTBR as below:
1. those bits are not the settings for pages related to the TTBR but for page tables themselves.
But I don't think this is correct because there is already a cache for page tables, TLB.
2. those bits are the settings for the whole address space of a task whose page table is
referenced by the current TTBR. Cacheability and shareability settings in the page descriptors
override that settings in TTBR.
Thank you in advance!;
Parents
KyongHo Cho
over 12 years ago
Note: This was originally posted on 25th February 2010 at
http://forums.arm.com
Thank you for your reply!
According to your answer, D-cache is used when MMU does translation table walk and when O/S manages page tables.
Are the RGN and S fields in TTBR applied to the both cases?
When looking into the source code of Linux,
O/S just writes a page descriptor to a virtual memory address as a ordinary data.
I thought that means RGN is not applied to this case.
If D-cache is also used by MMU while translation table walk,
are multiple page descriptors cached in D-cache and a page descriptor is cached in TLB whenever it is required?
Cancel
Vote up
0
Vote down
Cancel
Reply
KyongHo Cho
over 12 years ago
Note: This was originally posted on 25th February 2010 at
http://forums.arm.com
Thank you for your reply!
According to your answer, D-cache is used when MMU does translation table walk and when O/S manages page tables.
Are the RGN and S fields in TTBR applied to the both cases?
When looking into the source code of Linux,
O/S just writes a page descriptor to a virtual memory address as a ordinary data.
I thought that means RGN is not applied to this case.
If D-cache is also used by MMU while translation table walk,
are multiple page descriptors cached in D-cache and a page descriptor is cached in TLB whenever it is required?
Cancel
Vote up
0
Vote down
Cancel
Children
No data