1 <!-- HTML header for doxygen 1.9.6-->
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
5 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
6 <meta http-equiv="X-UA-Compatible" content="IE=11"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
8 <title>CMSIS-Core (Cortex-A): Memory Management Unit Functions</title>
9 <link href="doxygen.css" rel="stylesheet" type="text/css"/>
10 <link href="tabs.css" rel="stylesheet" type="text/css"/>
11 <link href="extra_navtree.css" rel="stylesheet" type="text/css"/>
12 <link href="extra_stylesheet.css" rel="stylesheet" type="text/css"/>
13 <link href="extra_search.css" rel="stylesheet" type="text/css"/>
14 <script type="text/javascript" src="jquery.js"></script>
15 <script type="text/javascript" src="dynsections.js"></script>
16 <script type="text/javascript" src="printComponentTabs.js"></script>
17 <script type="text/javascript" src="footer.js"></script>
18 <script type="text/javascript" src="navtree.js"></script>
19 <link href="navtree.css" rel="stylesheet" type="text/css"/>
20 <script type="text/javascript" src="resize.js"></script>
21 <script type="text/javascript" src="navtreedata.js"></script>
22 <script type="text/javascript" src="navtree.js"></script>
23 <link href="search/search.css" rel="stylesheet" type="text/css"/>
24 <script type="text/javascript" src="search/searchdata.js"></script>
25 <script type="text/javascript" src="search/search.js"></script>
26 <script type="text/javascript">
27 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
28 $(document).ready(function() { init_search(); });
31 <script type="text/javascript" src="darkmode_toggle.js"></script>
32 <link href="extra_stylesheet.css" rel="stylesheet" type="text/css"/>
33 <link href="extra_navtree.css" rel="stylesheet" type="text/css"/>
34 <link href="extra_search.css" rel="stylesheet" type="text/css"/>
35 <link href="version.css" rel="stylesheet" type="text/css" />
36 <script type="text/javascript" src="../../../version.js"></script>
39 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
41 <table cellspacing="0" cellpadding="0">
43 <tr style="height: 55px;">
44 <td id="projectlogo" style="padding: 1.5em;"><img alt="Logo" src="cmsis_logo_white_small.png"/></td>
45 <td style="padding-left: 1em; padding-bottom: 1em;padding-top: 1em;">
46 <div id="projectname">CMSIS-Core (Cortex-A)
47  <span id="projectnumber"><script type="text/javascript">
49 writeHeader.call(this);
50 writeVersionDropdown.call(this);
55 <div id="projectbrief">CMSIS-Core support for Cortex-A processor-based devices</div>
57 <td> <div id="MSearchBox" class="MSearchBoxInactive">
59 <span id="MSearchSelect" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()"> </span>
60 <input type="text" id="MSearchField" value="" placeholder="Search" accesskey="S"
61 onfocus="searchBox.OnSearchFieldFocus(true)"
62 onblur="searchBox.OnSearchFieldFocus(false)"
63 onkeyup="searchBox.OnSearchFieldChange(event)"/>
64 </span><span class="right">
65 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.svg" alt=""/></a>
69 <!--END !PROJECT_NAME-->
74 <!-- end header part -->
75 <div id="CMSISnav" class="tabs1">
77 <script type="text/javascript">
78 writeComponentTabs.call(this);
82 <script type="text/javascript">
83 writeSubComponentTabs.call(this);
85 <!-- Generated by Doxygen 1.9.6 -->
86 <script type="text/javascript">
87 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
88 var searchBox = new SearchBox("searchBox", "search/",'.html');
92 <div id="side-nav" class="ui-resizable side-nav-resizable">
94 <div id="nav-tree-contents">
95 <div id="nav-sync" class="sync"></div>
98 <div id="splitbar" style="-moz-user-select:none;"
99 class="ui-resizable-handle">
102 <script type="text/javascript">
103 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
104 $(document).ready(function(){initNavTree('group__MMU__functions.html',''); initResizable(); });
107 <div id="doc-content">
108 <!-- window showing the filter options -->
109 <div id="MSearchSelectWindow"
110 onmouseover="return searchBox.OnSearchSelectShow()"
111 onmouseout="return searchBox.OnSearchSelectHide()"
112 onkeydown="return searchBox.OnSearchSelectKey(event)">
115 <!-- iframe showing the search results (closed by default) -->
116 <div id="MSearchResultsWindow">
117 <div id="MSearchResults">
120 <div id="SRResults"></div>
121 <div class="SRStatus" id="Loading">Loading...</div>
122 <div class="SRStatus" id="Searching">Searching...</div>
123 <div class="SRStatus" id="NoMatches">No Matches</div>
130 <div class="summary">
131 <a href="#groups">Content</a> |
132 <a href="#func-members">Functions</a> </div>
133 <div class="headertitle"><div class="title">Memory Management Unit Functions<div class="ingroups"><a class="el" href="group__CMSIS__Core__FunctionInterface.html">Core Peripherals</a></div></div></div>
135 <div class="contents">
137 <p>MMU Functions provide control of the Memory Management Unit using translation tables and attributes of different regions of the physical memory map.<br />
138 Reference: <a href="http://infocenter.arm.com/help/topic/com.arm.doc.ddi0406c/index.html">Architecture Reference Manual Reference Manual - Armv7-A and Armv7-R edition</a>.
139 <a href="#details">More...</a></p>
140 <table class="memberdecls">
141 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="groups" name="groups"></a>
142 Content</h2></td></tr>
143 <tr class="memitem:group__MMU__defs__gr"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__defs__gr.html">MMU Defines and Structs</a></td></tr>
144 <tr class="memdesc:group__MMU__defs__gr"><td class="mdescLeft"> </td><td class="mdescRight">Defines and structures that relate to the Memory Management Unit. <br /></td></tr>
145 <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
146 </table><table class="memberdecls">
147 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
148 Functions</h2></td></tr>
149 <tr class="memitem:ga9132cbfe3b2367de3db27daf4cc82ad7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga9132cbfe3b2367de3db27daf4cc82ad7">MMU_XNSection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#ga2fe1157deda82e66b9a1b19772309b63">mmu_execute_Type</a> xn)</td></tr>
150 <tr class="memdesc:ga9132cbfe3b2367de3db27daf4cc82ad7"><td class="mdescLeft"> </td><td class="mdescRight">Set section execution-never attribute. <br /></td></tr>
151 <tr class="separator:ga9132cbfe3b2367de3db27daf4cc82ad7"><td class="memSeparator" colspan="2"> </td></tr>
152 <tr class="memitem:gabd88f4c41b74365c38209692785287d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gabd88f4c41b74365c38209692785287d0">MMU_DomainSection</a> (uint32_t *descriptor_l1, uint8_t domain)</td></tr>
153 <tr class="memdesc:gabd88f4c41b74365c38209692785287d0"><td class="mdescLeft"> </td><td class="mdescRight">Set section domain. <br /></td></tr>
154 <tr class="separator:gabd88f4c41b74365c38209692785287d0"><td class="memSeparator" colspan="2"> </td></tr>
155 <tr class="memitem:ga3577aec23189228c9f95abba50c3716d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga3577aec23189228c9f95abba50c3716d">MMU_PSection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#ga06d94c0eaa22d713636acaff81485409">mmu_ecc_check_Type</a> p_bit)</td></tr>
156 <tr class="memdesc:ga3577aec23189228c9f95abba50c3716d"><td class="mdescLeft"> </td><td class="mdescRight">Set section parity check. <br /></td></tr>
157 <tr class="separator:ga3577aec23189228c9f95abba50c3716d"><td class="memSeparator" colspan="2"> </td></tr>
158 <tr class="memitem:ga946866c84a72690c385ee07545bf8145"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga946866c84a72690c385ee07545bf8145">MMU_APSection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> user, <a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> priv, uint32_t afe)</td></tr>
159 <tr class="memdesc:ga946866c84a72690c385ee07545bf8145"><td class="mdescLeft"> </td><td class="mdescRight">Set section access privileges. <br /></td></tr>
160 <tr class="separator:ga946866c84a72690c385ee07545bf8145"><td class="memSeparator" colspan="2"> </td></tr>
161 <tr class="memitem:ga29ea426394746cdd6a4b4c14164ec6b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga29ea426394746cdd6a4b4c14164ec6b9">MMU_SharedSection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#gab884a11fa8d094573ab77fb1c0f8d8a7">mmu_shared_Type</a> s_bit)</td></tr>
162 <tr class="memdesc:ga29ea426394746cdd6a4b4c14164ec6b9"><td class="mdescLeft"> </td><td class="mdescRight">Set section shareability. <br /></td></tr>
163 <tr class="separator:ga29ea426394746cdd6a4b4c14164ec6b9"><td class="memSeparator" colspan="2"> </td></tr>
164 <tr class="memitem:ga3ca22117a7f2d3c4d1cd1bf832cc4d2f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga3ca22117a7f2d3c4d1cd1bf832cc4d2f">MMU_GlobalSection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#ga04160605fbe20914c8ef020430684a30">mmu_global_Type</a> g_bit)</td></tr>
165 <tr class="memdesc:ga3ca22117a7f2d3c4d1cd1bf832cc4d2f"><td class="mdescLeft"> </td><td class="mdescRight">Set section Global attribute. <br /></td></tr>
166 <tr class="separator:ga3ca22117a7f2d3c4d1cd1bf832cc4d2f"><td class="memSeparator" colspan="2"> </td></tr>
167 <tr class="memitem:ga84a5a15ee353d70a9b904e3814bd94d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga84a5a15ee353d70a9b904e3814bd94d8">MMU_SecureSection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#gac3d277641df9fb3bb3b555e2e79dd639">mmu_secure_Type</a> s_bit)</td></tr>
168 <tr class="memdesc:ga84a5a15ee353d70a9b904e3814bd94d8"><td class="mdescLeft"> </td><td class="mdescRight">Set section Security attribute. <br /></td></tr>
169 <tr class="separator:ga84a5a15ee353d70a9b904e3814bd94d8"><td class="memSeparator" colspan="2"> </td></tr>
170 <tr class="memitem:gab0e0fed40d998757147beb8fcf05a890"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gab0e0fed40d998757147beb8fcf05a890">MMU_XNPage</a> (uint32_t *descriptor_l2, <a class="el" href="group__MMU__defs__gr.html#ga2fe1157deda82e66b9a1b19772309b63">mmu_execute_Type</a> xn, <a class="el" href="group__MMU__defs__gr.html#gab184b824a6d7cb728bd46c6abcd0c21a">mmu_region_size_Type</a> page)</td></tr>
171 <tr class="memdesc:gab0e0fed40d998757147beb8fcf05a890"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page execution-never attribute. <br /></td></tr>
172 <tr class="separator:gab0e0fed40d998757147beb8fcf05a890"><td class="memSeparator" colspan="2"> </td></tr>
173 <tr class="memitem:ga45f5389cb1351bb2806a38ac8c32d416"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga45f5389cb1351bb2806a38ac8c32d416">MMU_DomainPage</a> (uint32_t *descriptor_l1, uint8_t domain)</td></tr>
174 <tr class="memdesc:ga45f5389cb1351bb2806a38ac8c32d416"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page domain. <br /></td></tr>
175 <tr class="separator:ga45f5389cb1351bb2806a38ac8c32d416"><td class="memSeparator" colspan="2"> </td></tr>
176 <tr class="memitem:gab15289c416609cd56dde816b39a4cea4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gab15289c416609cd56dde816b39a4cea4">MMU_PPage</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#ga06d94c0eaa22d713636acaff81485409">mmu_ecc_check_Type</a> p_bit)</td></tr>
177 <tr class="memdesc:gab15289c416609cd56dde816b39a4cea4"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page parity check. <br /></td></tr>
178 <tr class="separator:gab15289c416609cd56dde816b39a4cea4"><td class="memSeparator" colspan="2"> </td></tr>
179 <tr class="memitem:gac7c88d4d613350059b4d77814ea2c7a0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gac7c88d4d613350059b4d77814ea2c7a0">MMU_APPage</a> (uint32_t *descriptor_l2, <a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> user, <a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> priv, uint32_t afe)</td></tr>
180 <tr class="memdesc:gac7c88d4d613350059b4d77814ea2c7a0"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page access privileges. <br /></td></tr>
181 <tr class="separator:gac7c88d4d613350059b4d77814ea2c7a0"><td class="memSeparator" colspan="2"> </td></tr>
182 <tr class="memitem:gaaa19560532778e4fdc667e56fd2dd378"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gaaa19560532778e4fdc667e56fd2dd378">MMU_SharedPage</a> (uint32_t *descriptor_l2, <a class="el" href="group__MMU__defs__gr.html#gab884a11fa8d094573ab77fb1c0f8d8a7">mmu_shared_Type</a> s_bit)</td></tr>
183 <tr class="memdesc:gaaa19560532778e4fdc667e56fd2dd378"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page shareability. <br /></td></tr>
184 <tr class="separator:gaaa19560532778e4fdc667e56fd2dd378"><td class="memSeparator" colspan="2"> </td></tr>
185 <tr class="memitem:ga14dfeaf8983de57521aaa66c19dd43c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga14dfeaf8983de57521aaa66c19dd43c9">MMU_GlobalPage</a> (uint32_t *descriptor_l2, <a class="el" href="group__MMU__defs__gr.html#ga04160605fbe20914c8ef020430684a30">mmu_global_Type</a> g_bit)</td></tr>
186 <tr class="memdesc:ga14dfeaf8983de57521aaa66c19dd43c9"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page Global attribute. <br /></td></tr>
187 <tr class="separator:ga14dfeaf8983de57521aaa66c19dd43c9"><td class="memSeparator" colspan="2"> </td></tr>
188 <tr class="memitem:ga2c1887ed6aaff0a51e3effc3db595c94"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga2c1887ed6aaff0a51e3effc3db595c94">MMU_SecurePage</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#gac3d277641df9fb3bb3b555e2e79dd639">mmu_secure_Type</a> s_bit)</td></tr>
189 <tr class="memdesc:ga2c1887ed6aaff0a51e3effc3db595c94"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page Security attribute. <br /></td></tr>
190 <tr class="separator:ga2c1887ed6aaff0a51e3effc3db595c94"><td class="memSeparator" colspan="2"> </td></tr>
191 <tr class="memitem:ga353d3d794bcd1b35b3b5aeb73d6feb08"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga353d3d794bcd1b35b3b5aeb73d6feb08">MMU_MemorySection</a> (uint32_t *descriptor_l1, <a class="el" href="group__MMU__defs__gr.html#ga83ac8de9263f89879079da521e86d5f2">mmu_memory_Type</a> mem, <a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> outer, <a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> inner)</td></tr>
192 <tr class="memdesc:ga353d3d794bcd1b35b3b5aeb73d6feb08"><td class="mdescLeft"> </td><td class="mdescRight">Set Section memory attributes. <br /></td></tr>
193 <tr class="separator:ga353d3d794bcd1b35b3b5aeb73d6feb08"><td class="memSeparator" colspan="2"> </td></tr>
194 <tr class="memitem:ga9a2946f7c93bcb05cdd20be691a54b8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga9a2946f7c93bcb05cdd20be691a54b8c">MMU_MemoryPage</a> (uint32_t *descriptor_l2, <a class="el" href="group__MMU__defs__gr.html#ga83ac8de9263f89879079da521e86d5f2">mmu_memory_Type</a> mem, <a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> outer, <a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> inner, <a class="el" href="group__MMU__defs__gr.html#gab184b824a6d7cb728bd46c6abcd0c21a">mmu_region_size_Type</a> page)</td></tr>
195 <tr class="memdesc:ga9a2946f7c93bcb05cdd20be691a54b8c"><td class="mdescLeft"> </td><td class="mdescRight">Set 4k/64k page memory attributes. <br /></td></tr>
196 <tr class="separator:ga9a2946f7c93bcb05cdd20be691a54b8c"><td class="memSeparator" colspan="2"> </td></tr>
197 <tr class="memitem:ga4f21eee79309cf8cde694d0d7e1205bd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga4f21eee79309cf8cde694d0d7e1205bd">MMU_GetSectionDescriptor</a> (uint32_t *descriptor, <a class="el" href="structmmu__region__attributes__Type.html">mmu_region_attributes_Type</a> reg)</td></tr>
198 <tr class="memdesc:ga4f21eee79309cf8cde694d0d7e1205bd"><td class="mdescLeft"> </td><td class="mdescRight">Create a L1 section descriptor. <br /></td></tr>
199 <tr class="separator:ga4f21eee79309cf8cde694d0d7e1205bd"><td class="memSeparator" colspan="2"> </td></tr>
200 <tr class="memitem:gaa2fcfb63c7019665b8a352d54f55d740"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gaa2fcfb63c7019665b8a352d54f55d740">MMU_GetPageDescriptor</a> (uint32_t *descriptor, uint32_t *descriptor2, <a class="el" href="structmmu__region__attributes__Type.html">mmu_region_attributes_Type</a> reg)</td></tr>
201 <tr class="memdesc:gaa2fcfb63c7019665b8a352d54f55d740"><td class="mdescLeft"> </td><td class="mdescRight">Create a L1 and L2 4k/64k page descriptor. <br /></td></tr>
202 <tr class="separator:gaa2fcfb63c7019665b8a352d54f55d740"><td class="memSeparator" colspan="2"> </td></tr>
203 <tr class="memitem:gaaff28ea191391cbbd389d74327961753"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#gaaff28ea191391cbbd389d74327961753">MMU_TTSection</a> (uint32_t *ttb, uint32_t base_address, uint32_t count, uint32_t descriptor_l1)</td></tr>
204 <tr class="memdesc:gaaff28ea191391cbbd389d74327961753"><td class="mdescLeft"> </td><td class="mdescRight">Create a 1MB Section. <br /></td></tr>
205 <tr class="separator:gaaff28ea191391cbbd389d74327961753"><td class="memSeparator" colspan="2"> </td></tr>
206 <tr class="memitem:ga823cca9649a28bab8a90f8bd9bb92d83"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga823cca9649a28bab8a90f8bd9bb92d83">MMU_TTPage4k</a> (uint32_t *ttb, uint32_t base_address, uint32_t count, uint32_t descriptor_l1, uint32_t *ttb_l2, uint32_t descriptor_l2)</td></tr>
207 <tr class="memdesc:ga823cca9649a28bab8a90f8bd9bb92d83"><td class="mdescLeft"> </td><td class="mdescRight">Create a 4k page entry. <br /></td></tr>
208 <tr class="separator:ga823cca9649a28bab8a90f8bd9bb92d83"><td class="memSeparator" colspan="2"> </td></tr>
209 <tr class="memitem:ga48c509501f94a3f7316e79f8ccd34184"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga48c509501f94a3f7316e79f8ccd34184">MMU_TTPage64k</a> (uint32_t *ttb, uint32_t base_address, uint32_t count, uint32_t descriptor_l1, uint32_t *ttb_l2, uint32_t descriptor_l2)</td></tr>
210 <tr class="memdesc:ga48c509501f94a3f7316e79f8ccd34184"><td class="mdescLeft"> </td><td class="mdescRight">Create a 64k page entry. <br /></td></tr>
211 <tr class="separator:ga48c509501f94a3f7316e79f8ccd34184"><td class="memSeparator" colspan="2"> </td></tr>
212 <tr class="memitem:ga63334cbd77d310d078eb226c7542b96b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga63334cbd77d310d078eb226c7542b96b">MMU_Enable</a> (void)</td></tr>
213 <tr class="memdesc:ga63334cbd77d310d078eb226c7542b96b"><td class="mdescLeft"> </td><td class="mdescRight">Enable MMU. <br /></td></tr>
214 <tr class="separator:ga63334cbd77d310d078eb226c7542b96b"><td class="memSeparator" colspan="2"> </td></tr>
215 <tr class="memitem:ga2a2badd06531e04f559b97fdb2aea154"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga2a2badd06531e04f559b97fdb2aea154">MMU_Disable</a> (void)</td></tr>
216 <tr class="memdesc:ga2a2badd06531e04f559b97fdb2aea154"><td class="mdescLeft"> </td><td class="mdescRight">Disable MMU. <br /></td></tr>
217 <tr class="separator:ga2a2badd06531e04f559b97fdb2aea154"><td class="memSeparator" colspan="2"> </td></tr>
218 <tr class="memitem:ga9de65bea1cabf73dc4302e0e727cc8c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__MMU__functions.html#ga9de65bea1cabf73dc4302e0e727cc8c3">MMU_InvalidateTLB</a> (void)</td></tr>
219 <tr class="memdesc:ga9de65bea1cabf73dc4302e0e727cc8c3"><td class="mdescLeft"> </td><td class="mdescRight">Invalidate entire unified TLB. <br /></td></tr>
220 <tr class="separator:ga9de65bea1cabf73dc4302e0e727cc8c3"><td class="memSeparator" colspan="2"> </td></tr>
222 <a name="details" id="details"></a><h2 class="groupheader">Description</h2>
223 <h2 class="groupheader">Function Documentation</h2>
224 <a id="gac7c88d4d613350059b4d77814ea2c7a0" name="gac7c88d4d613350059b4d77814ea2c7a0"></a>
225 <h2 class="memtitle"><span class="permalink"><a href="#gac7c88d4d613350059b4d77814ea2c7a0">◆ </a></span>MMU_APPage()</h2>
227 <div class="memitem">
228 <div class="memproto">
229 <table class="memname">
231 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_APPage </td>
233 <td class="paramtype">uint32_t * </td>
234 <td class="paramname"><em>descriptor_l2</em>, </td>
237 <td class="paramkey"></td>
239 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> </td>
240 <td class="paramname"><em>user</em>, </td>
243 <td class="paramkey"></td>
245 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> </td>
246 <td class="paramname"><em>priv</em>, </td>
249 <td class="paramkey"></td>
251 <td class="paramtype">uint32_t </td>
252 <td class="paramname"><em>afe</em> </td>
260 </div><div class="memdoc">
261 <dl class="params"><dt>Parameters</dt><dd>
262 <table class="params">
263 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor. </td></tr>
264 <tr><td class="paramdir">[in]</td><td class="paramname">user</td><td>User Level Access: NO_ACCESS, RW, READ </td></tr>
265 <tr><td class="paramdir">[in]</td><td class="paramname">priv</td><td>Privilege Level Access: NO_ACCESS, RW, READ </td></tr>
266 <tr><td class="paramdir">[in]</td><td class="paramname">afe</td><td>Access flag enable</td></tr>
270 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
271 <p>The function sets 4k/64k page access privileges </p>
275 <a id="ga946866c84a72690c385ee07545bf8145" name="ga946866c84a72690c385ee07545bf8145"></a>
276 <h2 class="memtitle"><span class="permalink"><a href="#ga946866c84a72690c385ee07545bf8145">◆ </a></span>MMU_APSection()</h2>
278 <div class="memitem">
279 <div class="memproto">
280 <table class="memname">
282 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_APSection </td>
284 <td class="paramtype">uint32_t * </td>
285 <td class="paramname"><em>descriptor_l1</em>, </td>
288 <td class="paramkey"></td>
290 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> </td>
291 <td class="paramname"><em>user</em>, </td>
294 <td class="paramkey"></td>
296 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga2ee598252f996e4f96640b096291d280">mmu_access_Type</a> </td>
297 <td class="paramname"><em>priv</em>, </td>
300 <td class="paramkey"></td>
302 <td class="paramtype">uint32_t </td>
303 <td class="paramname"><em>afe</em> </td>
311 </div><div class="memdoc">
312 <dl class="params"><dt>Parameters</dt><dd>
313 <table class="params">
314 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
315 <tr><td class="paramdir">[in]</td><td class="paramname">user</td><td>User Level Access: NO_ACCESS, RW, READ </td></tr>
316 <tr><td class="paramdir">[in]</td><td class="paramname">priv</td><td>Privilege Level Access: NO_ACCESS, RW, READ </td></tr>
317 <tr><td class="paramdir">[in]</td><td class="paramname">afe</td><td>Access flag enable</td></tr>
321 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
322 <p>The function sets section access privileges </p>
326 <a id="ga2a2badd06531e04f559b97fdb2aea154" name="ga2a2badd06531e04f559b97fdb2aea154"></a>
327 <h2 class="memtitle"><span class="permalink"><a href="#ga2a2badd06531e04f559b97fdb2aea154">◆ </a></span>MMU_Disable()</h2>
329 <div class="memitem">
330 <div class="memproto">
331 <table class="memname">
333 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void MMU_Disable </td>
335 <td class="paramtype">void </td>
336 <td class="paramname"></td><td>)</td>
340 </div><div class="memdoc">
344 <a id="ga45f5389cb1351bb2806a38ac8c32d416" name="ga45f5389cb1351bb2806a38ac8c32d416"></a>
345 <h2 class="memtitle"><span class="permalink"><a href="#ga45f5389cb1351bb2806a38ac8c32d416">◆ </a></span>MMU_DomainPage()</h2>
347 <div class="memitem">
348 <div class="memproto">
349 <table class="memname">
351 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_DomainPage </td>
353 <td class="paramtype">uint32_t * </td>
354 <td class="paramname"><em>descriptor_l1</em>, </td>
357 <td class="paramkey"></td>
359 <td class="paramtype">uint8_t </td>
360 <td class="paramname"><em>domain</em> </td>
368 </div><div class="memdoc">
369 <dl class="params"><dt>Parameters</dt><dd>
370 <table class="params">
371 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
372 <tr><td class="paramdir">[in]</td><td class="paramname">domain</td><td>Page domain</td></tr>
376 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
377 <p>The function sets 4k/64k page domain </p>
381 <a id="gabd88f4c41b74365c38209692785287d0" name="gabd88f4c41b74365c38209692785287d0"></a>
382 <h2 class="memtitle"><span class="permalink"><a href="#gabd88f4c41b74365c38209692785287d0">◆ </a></span>MMU_DomainSection()</h2>
384 <div class="memitem">
385 <div class="memproto">
386 <table class="memname">
388 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_DomainSection </td>
390 <td class="paramtype">uint32_t * </td>
391 <td class="paramname"><em>descriptor_l1</em>, </td>
394 <td class="paramkey"></td>
396 <td class="paramtype">uint8_t </td>
397 <td class="paramname"><em>domain</em> </td>
405 </div><div class="memdoc">
406 <dl class="params"><dt>Parameters</dt><dd>
407 <table class="params">
408 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
409 <tr><td class="paramdir">[in]</td><td class="paramname">domain</td><td>Section domain</td></tr>
413 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
414 <p>The function sets section domain. </p>
418 <a id="ga63334cbd77d310d078eb226c7542b96b" name="ga63334cbd77d310d078eb226c7542b96b"></a>
419 <h2 class="memtitle"><span class="permalink"><a href="#ga63334cbd77d310d078eb226c7542b96b">◆ </a></span>MMU_Enable()</h2>
421 <div class="memitem">
422 <div class="memproto">
423 <table class="memname">
425 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void MMU_Enable </td>
427 <td class="paramtype">void </td>
428 <td class="paramname"></td><td>)</td>
432 </div><div class="memdoc">
433 <p>Set M bit 0 to enable the MMU Set AFE bit to enable simplified access permissions model Clear TRE bit to disable TEX remap and A bit to disable strict alignment fault checking </p>
437 <a id="gaa2fcfb63c7019665b8a352d54f55d740" name="gaa2fcfb63c7019665b8a352d54f55d740"></a>
438 <h2 class="memtitle"><span class="permalink"><a href="#gaa2fcfb63c7019665b8a352d54f55d740">◆ </a></span>MMU_GetPageDescriptor()</h2>
440 <div class="memitem">
441 <div class="memproto">
442 <table class="memname">
444 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_GetPageDescriptor </td>
446 <td class="paramtype">uint32_t * </td>
447 <td class="paramname"><em>descriptor</em>, </td>
450 <td class="paramkey"></td>
452 <td class="paramtype">uint32_t * </td>
453 <td class="paramname"><em>descriptor2</em>, </td>
456 <td class="paramkey"></td>
458 <td class="paramtype"><a class="el" href="structmmu__region__attributes__Type.html">mmu_region_attributes_Type</a> </td>
459 <td class="paramname"><em>reg</em> </td>
467 </div><div class="memdoc">
468 <dl class="params"><dt>Parameters</dt><dd>
469 <table class="params">
470 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor</td><td>L1 descriptor </td></tr>
471 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor2</td><td>L2 descriptor </td></tr>
472 <tr><td class="paramdir">[in]</td><td class="paramname">reg</td><td>4k/64k page attributes</td></tr>
476 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
477 <p>The function creates a 4k/64k page descriptor. Assumptions:</p><ul>
478 <li>TEX remap disabled, so memory type and attributes are described directly by bits in the descriptor</li>
479 <li>Functions always return 0 </li>
484 <a id="ga4f21eee79309cf8cde694d0d7e1205bd" name="ga4f21eee79309cf8cde694d0d7e1205bd"></a>
485 <h2 class="memtitle"><span class="permalink"><a href="#ga4f21eee79309cf8cde694d0d7e1205bd">◆ </a></span>MMU_GetSectionDescriptor()</h2>
487 <div class="memitem">
488 <div class="memproto">
489 <table class="memname">
491 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_GetSectionDescriptor </td>
493 <td class="paramtype">uint32_t * </td>
494 <td class="paramname"><em>descriptor</em>, </td>
497 <td class="paramkey"></td>
499 <td class="paramtype"><a class="el" href="structmmu__region__attributes__Type.html">mmu_region_attributes_Type</a> </td>
500 <td class="paramname"><em>reg</em> </td>
508 </div><div class="memdoc">
509 <dl class="params"><dt>Parameters</dt><dd>
510 <table class="params">
511 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor</td><td>L1 descriptor </td></tr>
512 <tr><td class="paramdir">[in]</td><td class="paramname">reg</td><td>Section attributes</td></tr>
516 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
517 <p>The function creates a section descriptor. </p>
521 <a id="ga14dfeaf8983de57521aaa66c19dd43c9" name="ga14dfeaf8983de57521aaa66c19dd43c9"></a>
522 <h2 class="memtitle"><span class="permalink"><a href="#ga14dfeaf8983de57521aaa66c19dd43c9">◆ </a></span>MMU_GlobalPage()</h2>
524 <div class="memitem">
525 <div class="memproto">
526 <table class="memname">
528 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_GlobalPage </td>
530 <td class="paramtype">uint32_t * </td>
531 <td class="paramname"><em>descriptor_l2</em>, </td>
534 <td class="paramkey"></td>
536 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga04160605fbe20914c8ef020430684a30">mmu_global_Type</a> </td>
537 <td class="paramname"><em>g_bit</em> </td>
545 </div><div class="memdoc">
546 <dl class="params"><dt>Parameters</dt><dd>
547 <table class="params">
548 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor. </td></tr>
549 <tr><td class="paramdir">[in]</td><td class="paramname">g_bit</td><td>4k/64k page attribute: GLOBAL, NON_GLOBAL</td></tr>
553 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
554 <p>The function sets 4k/64k page Global attribute </p>
558 <a id="ga3ca22117a7f2d3c4d1cd1bf832cc4d2f" name="ga3ca22117a7f2d3c4d1cd1bf832cc4d2f"></a>
559 <h2 class="memtitle"><span class="permalink"><a href="#ga3ca22117a7f2d3c4d1cd1bf832cc4d2f">◆ </a></span>MMU_GlobalSection()</h2>
561 <div class="memitem">
562 <div class="memproto">
563 <table class="memname">
565 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_GlobalSection </td>
567 <td class="paramtype">uint32_t * </td>
568 <td class="paramname"><em>descriptor_l1</em>, </td>
571 <td class="paramkey"></td>
573 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga04160605fbe20914c8ef020430684a30">mmu_global_Type</a> </td>
574 <td class="paramname"><em>g_bit</em> </td>
582 </div><div class="memdoc">
583 <dl class="params"><dt>Parameters</dt><dd>
584 <table class="params">
585 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
586 <tr><td class="paramdir">[in]</td><td class="paramname">g_bit</td><td>Section attribute: GLOBAL, NON_GLOBAL</td></tr>
590 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
591 <p>The function sets section Global attribute </p>
595 <a id="ga9de65bea1cabf73dc4302e0e727cc8c3" name="ga9de65bea1cabf73dc4302e0e727cc8c3"></a>
596 <h2 class="memtitle"><span class="permalink"><a href="#ga9de65bea1cabf73dc4302e0e727cc8c3">◆ </a></span>MMU_InvalidateTLB()</h2>
598 <div class="memitem">
599 <div class="memproto">
600 <table class="memname">
602 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void MMU_InvalidateTLB </td>
604 <td class="paramtype">void </td>
605 <td class="paramname"></td><td>)</td>
609 </div><div class="memdoc">
613 <a id="ga9a2946f7c93bcb05cdd20be691a54b8c" name="ga9a2946f7c93bcb05cdd20be691a54b8c"></a>
614 <h2 class="memtitle"><span class="permalink"><a href="#ga9a2946f7c93bcb05cdd20be691a54b8c">◆ </a></span>MMU_MemoryPage()</h2>
616 <div class="memitem">
617 <div class="memproto">
618 <table class="memname">
620 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_MemoryPage </td>
622 <td class="paramtype">uint32_t * </td>
623 <td class="paramname"><em>descriptor_l2</em>, </td>
626 <td class="paramkey"></td>
628 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga83ac8de9263f89879079da521e86d5f2">mmu_memory_Type</a> </td>
629 <td class="paramname"><em>mem</em>, </td>
632 <td class="paramkey"></td>
634 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> </td>
635 <td class="paramname"><em>outer</em>, </td>
638 <td class="paramkey"></td>
640 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> </td>
641 <td class="paramname"><em>inner</em>, </td>
644 <td class="paramkey"></td>
646 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#gab184b824a6d7cb728bd46c6abcd0c21a">mmu_region_size_Type</a> </td>
647 <td class="paramname"><em>page</em> </td>
655 </div><div class="memdoc">
656 <dl class="params"><dt>Parameters</dt><dd>
657 <table class="params">
658 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor. </td></tr>
659 <tr><td class="paramdir">[in]</td><td class="paramname">mem</td><td>4k/64k page memory type: NORMAL, DEVICE, SHARED_DEVICE, NON_SHARED_DEVICE, STRONGLY_ORDERED </td></tr>
660 <tr><td class="paramdir">[in]</td><td class="paramname">outer</td><td>Outer cacheability: NON_CACHEABLE, WB_WA, WT, WB_NO_WA, </td></tr>
661 <tr><td class="paramdir">[in]</td><td class="paramname">inner</td><td>Inner cacheability: NON_CACHEABLE, WB_WA, WT, WB_NO_WA, </td></tr>
662 <tr><td class="paramdir">[in]</td><td class="paramname">page</td><td>Page size</td></tr>
666 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
667 <p>The function sets 4k/64k page memory attributes </p>
671 <a id="ga353d3d794bcd1b35b3b5aeb73d6feb08" name="ga353d3d794bcd1b35b3b5aeb73d6feb08"></a>
672 <h2 class="memtitle"><span class="permalink"><a href="#ga353d3d794bcd1b35b3b5aeb73d6feb08">◆ </a></span>MMU_MemorySection()</h2>
674 <div class="memitem">
675 <div class="memproto">
676 <table class="memname">
678 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_MemorySection </td>
680 <td class="paramtype">uint32_t * </td>
681 <td class="paramname"><em>descriptor_l1</em>, </td>
684 <td class="paramkey"></td>
686 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga83ac8de9263f89879079da521e86d5f2">mmu_memory_Type</a> </td>
687 <td class="paramname"><em>mem</em>, </td>
690 <td class="paramkey"></td>
692 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> </td>
693 <td class="paramname"><em>outer</em>, </td>
696 <td class="paramkey"></td>
698 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga11c86b7b193efb2c59b6a2179a02f584">mmu_cacheability_Type</a> </td>
699 <td class="paramname"><em>inner</em> </td>
707 </div><div class="memdoc">
708 <dl class="params"><dt>Parameters</dt><dd>
709 <table class="params">
710 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
711 <tr><td class="paramdir">[in]</td><td class="paramname">mem</td><td>Section memory type: NORMAL, DEVICE, SHARED_DEVICE, NON_SHARED_DEVICE, STRONGLY_ORDERED </td></tr>
712 <tr><td class="paramdir">[in]</td><td class="paramname">outer</td><td>Outer cacheability: NON_CACHEABLE, WB_WA, WT, WB_NO_WA, </td></tr>
713 <tr><td class="paramdir">[in]</td><td class="paramname">inner</td><td>Inner cacheability: NON_CACHEABLE, WB_WA, WT, WB_NO_WA,</td></tr>
717 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
718 <p>The function sets section memory attributes </p>
722 <a id="gab15289c416609cd56dde816b39a4cea4" name="gab15289c416609cd56dde816b39a4cea4"></a>
723 <h2 class="memtitle"><span class="permalink"><a href="#gab15289c416609cd56dde816b39a4cea4">◆ </a></span>MMU_PPage()</h2>
725 <div class="memitem">
726 <div class="memproto">
727 <table class="memname">
729 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_PPage </td>
731 <td class="paramtype">uint32_t * </td>
732 <td class="paramname"><em>descriptor_l1</em>, </td>
735 <td class="paramkey"></td>
737 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga06d94c0eaa22d713636acaff81485409">mmu_ecc_check_Type</a> </td>
738 <td class="paramname"><em>p_bit</em> </td>
746 </div><div class="memdoc">
747 <dl class="params"><dt>Parameters</dt><dd>
748 <table class="params">
749 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
750 <tr><td class="paramdir">[in]</td><td class="paramname">p_bit</td><td>Parity check: ECC_DISABLED, ECC_ENABLED</td></tr>
754 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
755 <p>The function sets 4k/64k page parity check </p>
759 <a id="ga3577aec23189228c9f95abba50c3716d" name="ga3577aec23189228c9f95abba50c3716d"></a>
760 <h2 class="memtitle"><span class="permalink"><a href="#ga3577aec23189228c9f95abba50c3716d">◆ </a></span>MMU_PSection()</h2>
762 <div class="memitem">
763 <div class="memproto">
764 <table class="memname">
766 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_PSection </td>
768 <td class="paramtype">uint32_t * </td>
769 <td class="paramname"><em>descriptor_l1</em>, </td>
772 <td class="paramkey"></td>
774 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga06d94c0eaa22d713636acaff81485409">mmu_ecc_check_Type</a> </td>
775 <td class="paramname"><em>p_bit</em> </td>
783 </div><div class="memdoc">
784 <dl class="params"><dt>Parameters</dt><dd>
785 <table class="params">
786 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
787 <tr><td class="paramdir">[in]</td><td class="paramname">p_bit</td><td>Parity check: ECC_DISABLED, ECC_ENABLED</td></tr>
791 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
792 <p>The function sets section parity check </p>
796 <a id="ga2c1887ed6aaff0a51e3effc3db595c94" name="ga2c1887ed6aaff0a51e3effc3db595c94"></a>
797 <h2 class="memtitle"><span class="permalink"><a href="#ga2c1887ed6aaff0a51e3effc3db595c94">◆ </a></span>MMU_SecurePage()</h2>
799 <div class="memitem">
800 <div class="memproto">
801 <table class="memname">
803 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_SecurePage </td>
805 <td class="paramtype">uint32_t * </td>
806 <td class="paramname"><em>descriptor_l1</em>, </td>
809 <td class="paramkey"></td>
811 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#gac3d277641df9fb3bb3b555e2e79dd639">mmu_secure_Type</a> </td>
812 <td class="paramname"><em>s_bit</em> </td>
820 </div><div class="memdoc">
821 <dl class="params"><dt>Parameters</dt><dd>
822 <table class="params">
823 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
824 <tr><td class="paramdir">[in]</td><td class="paramname">s_bit</td><td>4k/64k page Security attribute: SECURE, NON_SECURE</td></tr>
828 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
829 <p>The function sets 4k/64k page Global attribute </p>
833 <a id="ga84a5a15ee353d70a9b904e3814bd94d8" name="ga84a5a15ee353d70a9b904e3814bd94d8"></a>
834 <h2 class="memtitle"><span class="permalink"><a href="#ga84a5a15ee353d70a9b904e3814bd94d8">◆ </a></span>MMU_SecureSection()</h2>
836 <div class="memitem">
837 <div class="memproto">
838 <table class="memname">
840 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_SecureSection </td>
842 <td class="paramtype">uint32_t * </td>
843 <td class="paramname"><em>descriptor_l1</em>, </td>
846 <td class="paramkey"></td>
848 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#gac3d277641df9fb3bb3b555e2e79dd639">mmu_secure_Type</a> </td>
849 <td class="paramname"><em>s_bit</em> </td>
857 </div><div class="memdoc">
858 <dl class="params"><dt>Parameters</dt><dd>
859 <table class="params">
860 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
861 <tr><td class="paramdir">[in]</td><td class="paramname">s_bit</td><td>Section Security attribute: SECURE, NON_SECURE</td></tr>
865 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
866 <p>The function sets section Global attribute </p>
870 <a id="gaaa19560532778e4fdc667e56fd2dd378" name="gaaa19560532778e4fdc667e56fd2dd378"></a>
871 <h2 class="memtitle"><span class="permalink"><a href="#gaaa19560532778e4fdc667e56fd2dd378">◆ </a></span>MMU_SharedPage()</h2>
873 <div class="memitem">
874 <div class="memproto">
875 <table class="memname">
877 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_SharedPage </td>
879 <td class="paramtype">uint32_t * </td>
880 <td class="paramname"><em>descriptor_l2</em>, </td>
883 <td class="paramkey"></td>
885 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#gab884a11fa8d094573ab77fb1c0f8d8a7">mmu_shared_Type</a> </td>
886 <td class="paramname"><em>s_bit</em> </td>
894 </div><div class="memdoc">
895 <dl class="params"><dt>Parameters</dt><dd>
896 <table class="params">
897 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor. </td></tr>
898 <tr><td class="paramdir">[in]</td><td class="paramname">s_bit</td><td>4k/64k page shareability: NON_SHARED, SHARED</td></tr>
902 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
903 <p>The function sets 4k/64k page shareability </p>
907 <a id="ga29ea426394746cdd6a4b4c14164ec6b9" name="ga29ea426394746cdd6a4b4c14164ec6b9"></a>
908 <h2 class="memtitle"><span class="permalink"><a href="#ga29ea426394746cdd6a4b4c14164ec6b9">◆ </a></span>MMU_SharedSection()</h2>
910 <div class="memitem">
911 <div class="memproto">
912 <table class="memname">
914 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_SharedSection </td>
916 <td class="paramtype">uint32_t * </td>
917 <td class="paramname"><em>descriptor_l1</em>, </td>
920 <td class="paramkey"></td>
922 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#gab884a11fa8d094573ab77fb1c0f8d8a7">mmu_shared_Type</a> </td>
923 <td class="paramname"><em>s_bit</em> </td>
931 </div><div class="memdoc">
932 <dl class="params"><dt>Parameters</dt><dd>
933 <table class="params">
934 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
935 <tr><td class="paramdir">[in]</td><td class="paramname">s_bit</td><td>Section shareability: NON_SHARED, SHARED</td></tr>
939 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
940 <p>The function sets section shareability </p>
944 <a id="ga823cca9649a28bab8a90f8bd9bb92d83" name="ga823cca9649a28bab8a90f8bd9bb92d83"></a>
945 <h2 class="memtitle"><span class="permalink"><a href="#ga823cca9649a28bab8a90f8bd9bb92d83">◆ </a></span>MMU_TTPage4k()</h2>
947 <div class="memitem">
948 <div class="memproto">
949 <table class="memname">
951 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void MMU_TTPage4k </td>
953 <td class="paramtype">uint32_t * </td>
954 <td class="paramname"><em>ttb</em>, </td>
957 <td class="paramkey"></td>
959 <td class="paramtype">uint32_t </td>
960 <td class="paramname"><em>base_address</em>, </td>
963 <td class="paramkey"></td>
965 <td class="paramtype">uint32_t </td>
966 <td class="paramname"><em>count</em>, </td>
969 <td class="paramkey"></td>
971 <td class="paramtype">uint32_t </td>
972 <td class="paramname"><em>descriptor_l1</em>, </td>
975 <td class="paramkey"></td>
977 <td class="paramtype">uint32_t * </td>
978 <td class="paramname"><em>ttb_l2</em>, </td>
981 <td class="paramkey"></td>
983 <td class="paramtype">uint32_t </td>
984 <td class="paramname"><em>descriptor_l2</em> </td>
992 </div><div class="memdoc">
993 <dl class="params"><dt>Parameters</dt><dd>
994 <table class="params">
995 <tr><td class="paramdir">[in]</td><td class="paramname">ttb</td><td>L1 table base address </td></tr>
996 <tr><td class="paramdir">[in]</td><td class="paramname">base_address</td><td>4k base address </td></tr>
997 <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of 4k pages to create </td></tr>
998 <tr><td class="paramdir">[in]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor (region attributes) </td></tr>
999 <tr><td class="paramdir">[in]</td><td class="paramname">ttb_l2</td><td>L2 table base address </td></tr>
1000 <tr><td class="paramdir">[in]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor (region attributes) </td></tr>
1007 <a id="ga48c509501f94a3f7316e79f8ccd34184" name="ga48c509501f94a3f7316e79f8ccd34184"></a>
1008 <h2 class="memtitle"><span class="permalink"><a href="#ga48c509501f94a3f7316e79f8ccd34184">◆ </a></span>MMU_TTPage64k()</h2>
1010 <div class="memitem">
1011 <div class="memproto">
1012 <table class="memname">
1014 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void MMU_TTPage64k </td>
1016 <td class="paramtype">uint32_t * </td>
1017 <td class="paramname"><em>ttb</em>, </td>
1020 <td class="paramkey"></td>
1022 <td class="paramtype">uint32_t </td>
1023 <td class="paramname"><em>base_address</em>, </td>
1026 <td class="paramkey"></td>
1028 <td class="paramtype">uint32_t </td>
1029 <td class="paramname"><em>count</em>, </td>
1032 <td class="paramkey"></td>
1034 <td class="paramtype">uint32_t </td>
1035 <td class="paramname"><em>descriptor_l1</em>, </td>
1038 <td class="paramkey"></td>
1040 <td class="paramtype">uint32_t * </td>
1041 <td class="paramname"><em>ttb_l2</em>, </td>
1044 <td class="paramkey"></td>
1046 <td class="paramtype">uint32_t </td>
1047 <td class="paramname"><em>descriptor_l2</em> </td>
1055 </div><div class="memdoc">
1056 <dl class="params"><dt>Parameters</dt><dd>
1057 <table class="params">
1058 <tr><td class="paramdir">[in]</td><td class="paramname">ttb</td><td>L1 table base address </td></tr>
1059 <tr><td class="paramdir">[in]</td><td class="paramname">base_address</td><td>64k base address </td></tr>
1060 <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of 64k pages to create </td></tr>
1061 <tr><td class="paramdir">[in]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor (region attributes) </td></tr>
1062 <tr><td class="paramdir">[in]</td><td class="paramname">ttb_l2</td><td>L2 table base address </td></tr>
1063 <tr><td class="paramdir">[in]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor (region attributes) </td></tr>
1070 <a id="gaaff28ea191391cbbd389d74327961753" name="gaaff28ea191391cbbd389d74327961753"></a>
1071 <h2 class="memtitle"><span class="permalink"><a href="#gaaff28ea191391cbbd389d74327961753">◆ </a></span>MMU_TTSection()</h2>
1073 <div class="memitem">
1074 <div class="memproto">
1075 <table class="memname">
1077 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> void MMU_TTSection </td>
1079 <td class="paramtype">uint32_t * </td>
1080 <td class="paramname"><em>ttb</em>, </td>
1083 <td class="paramkey"></td>
1085 <td class="paramtype">uint32_t </td>
1086 <td class="paramname"><em>base_address</em>, </td>
1089 <td class="paramkey"></td>
1091 <td class="paramtype">uint32_t </td>
1092 <td class="paramname"><em>count</em>, </td>
1095 <td class="paramkey"></td>
1097 <td class="paramtype">uint32_t </td>
1098 <td class="paramname"><em>descriptor_l1</em> </td>
1106 </div><div class="memdoc">
1107 <dl class="params"><dt>Parameters</dt><dd>
1108 <table class="params">
1109 <tr><td class="paramdir">[in]</td><td class="paramname">ttb</td><td>Translation table base address </td></tr>
1110 <tr><td class="paramdir">[in]</td><td class="paramname">base_address</td><td>Section base address </td></tr>
1111 <tr><td class="paramdir">[in]</td><td class="paramname">count</td><td>Number of sections to create </td></tr>
1112 <tr><td class="paramdir">[in]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor (region attributes) </td></tr>
1119 <a id="gab0e0fed40d998757147beb8fcf05a890" name="gab0e0fed40d998757147beb8fcf05a890"></a>
1120 <h2 class="memtitle"><span class="permalink"><a href="#gab0e0fed40d998757147beb8fcf05a890">◆ </a></span>MMU_XNPage()</h2>
1122 <div class="memitem">
1123 <div class="memproto">
1124 <table class="memname">
1126 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_XNPage </td>
1128 <td class="paramtype">uint32_t * </td>
1129 <td class="paramname"><em>descriptor_l2</em>, </td>
1132 <td class="paramkey"></td>
1134 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga2fe1157deda82e66b9a1b19772309b63">mmu_execute_Type</a> </td>
1135 <td class="paramname"><em>xn</em>, </td>
1138 <td class="paramkey"></td>
1140 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#gab184b824a6d7cb728bd46c6abcd0c21a">mmu_region_size_Type</a> </td>
1141 <td class="paramname"><em>page</em> </td>
1149 </div><div class="memdoc">
1150 <dl class="params"><dt>Parameters</dt><dd>
1151 <table class="params">
1152 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l2</td><td>L2 descriptor. </td></tr>
1153 <tr><td class="paramdir">[in]</td><td class="paramname">xn</td><td>Page execution-never attribute : EXECUTE , NON_EXECUTE. </td></tr>
1154 <tr><td class="paramdir">[in]</td><td class="paramname">page</td><td>Page size: PAGE_4k, PAGE_64k,</td></tr>
1158 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
1159 <p>The function sets 4k/64k page execution-never attribute </p>
1163 <a id="ga9132cbfe3b2367de3db27daf4cc82ad7" name="ga9132cbfe3b2367de3db27daf4cc82ad7"></a>
1164 <h2 class="memtitle"><span class="permalink"><a href="#ga9132cbfe3b2367de3db27daf4cc82ad7">◆ </a></span>MMU_XNSection()</h2>
1166 <div class="memitem">
1167 <div class="memproto">
1168 <table class="memname">
1170 <td class="memname"><a class="el" href="group__comp__cntrl__gr.html#gaba87361bfad2ae52cfe2f40c1a1dbf9c">__STATIC_INLINE</a> int MMU_XNSection </td>
1172 <td class="paramtype">uint32_t * </td>
1173 <td class="paramname"><em>descriptor_l1</em>, </td>
1176 <td class="paramkey"></td>
1178 <td class="paramtype"><a class="el" href="group__MMU__defs__gr.html#ga2fe1157deda82e66b9a1b19772309b63">mmu_execute_Type</a> </td>
1179 <td class="paramname"><em>xn</em> </td>
1187 </div><div class="memdoc">
1188 <dl class="params"><dt>Parameters</dt><dd>
1189 <table class="params">
1190 <tr><td class="paramdir">[out]</td><td class="paramname">descriptor_l1</td><td>L1 descriptor. </td></tr>
1191 <tr><td class="paramdir">[in]</td><td class="paramname">xn</td><td>Section execution-never attribute : EXECUTE , NON_EXECUTE.</td></tr>
1195 <dl class="section return"><dt>Returns</dt><dd>0</dd></dl>
1196 <p>The function sets section execution-never attribute </p>
1200 </div><!-- contents -->
1201 </div><!-- doc-content -->
1202 <!-- start footer part -->
1203 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
1206 <script type="text/javascript">
1208 writeFooter.call(this);