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-M): Core Register Access 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-M)
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-M 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__coreregister__trustzone__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="#func-members">Functions</a> </div>
132 <div class="headertitle"><div class="title">Core Register Access Functions<div class="ingroups"><a class="el" href="group__trustzone__functions.html">TrustZone for Armv8-M/v8.1-M</a></div></div></div>
134 <div class="contents">
136 <p>Core register Access functions related to TrustZone for Armv8-M.
137 <a href="#details">More...</a></p>
138 <table class="memberdecls">
139 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
140 Functions</h2></td></tr>
141 <tr class="memitem:ga27bf1f88e794c30808ee73a29d46e358"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga27bf1f88e794c30808ee73a29d46e358">__TZ_get_CONTROL_NS</a> (void)</td></tr>
142 <tr class="memdesc:ga27bf1f88e794c30808ee73a29d46e358"><td class="mdescLeft"> </td><td class="mdescRight">Get Control register (non-secure) <br /></td></tr>
143 <tr class="separator:ga27bf1f88e794c30808ee73a29d46e358"><td class="memSeparator" colspan="2"> </td></tr>
144 <tr class="memitem:ga3eb150204e6d389d5b49065179b9cde5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga3eb150204e6d389d5b49065179b9cde5">__TZ_set_CONTROL_NS</a> (uint32_t control)</td></tr>
145 <tr class="memdesc:ga3eb150204e6d389d5b49065179b9cde5"><td class="mdescLeft"> </td><td class="mdescRight">Set Control register (non-secure) <br /></td></tr>
146 <tr class="separator:ga3eb150204e6d389d5b49065179b9cde5"><td class="memSeparator" colspan="2"> </td></tr>
147 <tr class="memitem:ga40ff8336c6d09af6da1081d4e4adc126"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga40ff8336c6d09af6da1081d4e4adc126">__TZ_get_PSP_NS</a> (void)</td></tr>
148 <tr class="memdesc:ga40ff8336c6d09af6da1081d4e4adc126"><td class="mdescLeft"> </td><td class="mdescRight">Get Process Stack Pointer (non-secure) <br /></td></tr>
149 <tr class="separator:ga40ff8336c6d09af6da1081d4e4adc126"><td class="memSeparator" colspan="2"> </td></tr>
150 <tr class="memitem:gaea8db21c00cfa4144ee74dc65dbd7580"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gaea8db21c00cfa4144ee74dc65dbd7580">__TZ_set_PSP_NS</a> (uint32_t topOfProcStack)</td></tr>
151 <tr class="memdesc:gaea8db21c00cfa4144ee74dc65dbd7580"><td class="mdescLeft"> </td><td class="mdescRight">Set Process Stack Pointer (non-secure) <br /></td></tr>
152 <tr class="separator:gaea8db21c00cfa4144ee74dc65dbd7580"><td class="memSeparator" colspan="2"> </td></tr>
153 <tr class="memitem:gab3aa15eb4f352e230b9f7a3e8856a9e9"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gab3aa15eb4f352e230b9f7a3e8856a9e9">__TZ_get_MSP_NS</a> (void)</td></tr>
154 <tr class="memdesc:gab3aa15eb4f352e230b9f7a3e8856a9e9"><td class="mdescLeft"> </td><td class="mdescRight">Get Main Stack Pointer (non-secure) <br /></td></tr>
155 <tr class="separator:gab3aa15eb4f352e230b9f7a3e8856a9e9"><td class="memSeparator" colspan="2"> </td></tr>
156 <tr class="memitem:ga41c3ac2d9af23c40647c053ad7d564e7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga41c3ac2d9af23c40647c053ad7d564e7">__TZ_set_MSP_NS</a> (uint32_t topOfMainStack)</td></tr>
157 <tr class="memdesc:ga41c3ac2d9af23c40647c053ad7d564e7"><td class="mdescLeft"> </td><td class="mdescRight">Set Main Stack Pointer (non-secure) <br /></td></tr>
158 <tr class="separator:ga41c3ac2d9af23c40647c053ad7d564e7"><td class="memSeparator" colspan="2"> </td></tr>
159 <tr class="memitem:gaaaf2aaf904b25ed17fd3e5e63f8e029b"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gaaaf2aaf904b25ed17fd3e5e63f8e029b">__TZ_get_SP_NS</a> (void)</td></tr>
160 <tr class="memdesc:gaaaf2aaf904b25ed17fd3e5e63f8e029b"><td class="mdescLeft"> </td><td class="mdescRight">Get Stack Pointer (non-secure) <br /></td></tr>
161 <tr class="separator:gaaaf2aaf904b25ed17fd3e5e63f8e029b"><td class="memSeparator" colspan="2"> </td></tr>
162 <tr class="memitem:gab7263167cb006aeeb04b68e579dae015"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gab7263167cb006aeeb04b68e579dae015">__TZ_set_SP_NS</a> (uint32_t topOfStack)</td></tr>
163 <tr class="memdesc:gab7263167cb006aeeb04b68e579dae015"><td class="mdescLeft"> </td><td class="mdescRight">Set Stack Pointer (non-secure) <br /></td></tr>
164 <tr class="separator:gab7263167cb006aeeb04b68e579dae015"><td class="memSeparator" colspan="2"> </td></tr>
165 <tr class="memitem:ga7cc3271c79e619f8838e8767df3cb509"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga7cc3271c79e619f8838e8767df3cb509">__TZ_get_PRIMASK_NS</a> (void)</td></tr>
166 <tr class="memdesc:ga7cc3271c79e619f8838e8767df3cb509"><td class="mdescLeft"> </td><td class="mdescRight">Get Priority Mask (non-secure) <br /></td></tr>
167 <tr class="separator:ga7cc3271c79e619f8838e8767df3cb509"><td class="memSeparator" colspan="2"> </td></tr>
168 <tr class="memitem:ga6686c2ab5756b5049fad1644e89b3340"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga6686c2ab5756b5049fad1644e89b3340">__TZ_set_PRIMASK_NS</a> (uint32_t priMask)</td></tr>
169 <tr class="memdesc:ga6686c2ab5756b5049fad1644e89b3340"><td class="mdescLeft"> </td><td class="mdescRight">Set Priority Mask (non-secure) <br /></td></tr>
170 <tr class="separator:ga6686c2ab5756b5049fad1644e89b3340"><td class="memSeparator" colspan="2"> </td></tr>
171 <tr class="memitem:ga624509c924d2583f0d4dca6ab270f051"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga624509c924d2583f0d4dca6ab270f051">__TZ_get_BASEPRI_NS</a> (void)</td></tr>
172 <tr class="memdesc:ga624509c924d2583f0d4dca6ab270f051"><td class="mdescLeft"> </td><td class="mdescRight">Get Base Priority (non-secure) <br /></td></tr>
173 <tr class="separator:ga624509c924d2583f0d4dca6ab270f051"><td class="memSeparator" colspan="2"> </td></tr>
174 <tr class="memitem:ga92c187f0b4d53627b59e0fd0bda0b0df"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga92c187f0b4d53627b59e0fd0bda0b0df">__TZ_set_BASEPRI_NS</a> (uint32_t basePri)</td></tr>
175 <tr class="memdesc:ga92c187f0b4d53627b59e0fd0bda0b0df"><td class="mdescLeft"> </td><td class="mdescRight">Set Base Priority (non-secure) <br /></td></tr>
176 <tr class="separator:ga92c187f0b4d53627b59e0fd0bda0b0df"><td class="memSeparator" colspan="2"> </td></tr>
177 <tr class="memitem:ga578b41087f207e1a475daae6cc8a28dc"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga578b41087f207e1a475daae6cc8a28dc">__TZ_get_FAULTMASK_NS</a> (void)</td></tr>
178 <tr class="memdesc:ga578b41087f207e1a475daae6cc8a28dc"><td class="mdescLeft"> </td><td class="mdescRight">Get Fault Mask (non-secure) <br /></td></tr>
179 <tr class="separator:ga578b41087f207e1a475daae6cc8a28dc"><td class="memSeparator" colspan="2"> </td></tr>
180 <tr class="memitem:ga4f0912db7bc65439d23817c1d372a7a4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga4f0912db7bc65439d23817c1d372a7a4">__TZ_set_FAULTMASK_NS</a> (uint32_t faultMask)</td></tr>
181 <tr class="memdesc:ga4f0912db7bc65439d23817c1d372a7a4"><td class="mdescLeft"> </td><td class="mdescRight">Set Fault Mask (non-secure) <br /></td></tr>
182 <tr class="separator:ga4f0912db7bc65439d23817c1d372a7a4"><td class="memSeparator" colspan="2"> </td></tr>
183 <tr class="memitem:ga5da646ec291b6a183f38497ce92be51c"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga5da646ec291b6a183f38497ce92be51c">__TZ_get_PSPLIM_NS</a> (void)</td></tr>
184 <tr class="memdesc:ga5da646ec291b6a183f38497ce92be51c"><td class="mdescLeft"> </td><td class="mdescRight">Get Process Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. <br /></td></tr>
185 <tr class="separator:ga5da646ec291b6a183f38497ce92be51c"><td class="memSeparator" colspan="2"> </td></tr>
186 <tr class="memitem:ga81e0995ee0fd2a9dcd9e9681bc22c76f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga81e0995ee0fd2a9dcd9e9681bc22c76f">__TZ_set_PSPLIM_NS</a> (uint32_t ProcStackPtrLimit)</td></tr>
187 <tr class="memdesc:ga81e0995ee0fd2a9dcd9e9681bc22c76f"><td class="mdescLeft"> </td><td class="mdescRight">Set Process Stack Pointer (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. <br /></td></tr>
188 <tr class="separator:ga81e0995ee0fd2a9dcd9e9681bc22c76f"><td class="memSeparator" colspan="2"> </td></tr>
189 <tr class="memitem:gada00853d3e49fa8d21f375c53d28fa51"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gada00853d3e49fa8d21f375c53d28fa51">__TZ_get_MSPLIM_NS</a> (void)</td></tr>
190 <tr class="memdesc:gada00853d3e49fa8d21f375c53d28fa51"><td class="mdescLeft"> </td><td class="mdescRight">Get Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. <br /></td></tr>
191 <tr class="separator:gada00853d3e49fa8d21f375c53d28fa51"><td class="memSeparator" colspan="2"> </td></tr>
192 <tr class="memitem:gad2013f4d4311d6db253594a12d192617"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gad2013f4d4311d6db253594a12d192617">__TZ_set_MSPLIM_NS</a> (uint32_t MainStackPtrLimit)</td></tr>
193 <tr class="memdesc:gad2013f4d4311d6db253594a12d192617"><td class="mdescLeft"> </td><td class="mdescRight">Set Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. <br /></td></tr>
194 <tr class="separator:gad2013f4d4311d6db253594a12d192617"><td class="memSeparator" colspan="2"> </td></tr>
196 <a name="details" id="details"></a><h2 class="groupheader">Description</h2>
197 <p>Core register Access functions related to TrustZone for Armv8-M. </p>
198 <h2 class="groupheader">Function Documentation</h2>
199 <a id="ga624509c924d2583f0d4dca6ab270f051" name="ga624509c924d2583f0d4dca6ab270f051"></a>
200 <h2 class="memtitle"><span class="permalink"><a href="#ga624509c924d2583f0d4dca6ab270f051">◆ </a></span>__TZ_get_BASEPRI_NS()</h2>
202 <div class="memitem">
203 <div class="memproto">
204 <table class="memname">
206 <td class="memname">uint32_t __TZ_get_BASEPRI_NS </td>
208 <td class="paramtype">void </td>
209 <td class="paramname"></td><td>)</td>
213 </div><div class="memdoc">
215 <p>Get Base Priority (non-secure) </p>
216 <p>Returns the current value of the non-secure Base Priority register when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>Base Priority register value </dd></dl>
217 <dl class="section see"><dt>See also</dt><dd><br />
219 <li><a class="el" href="group__Core__Register__gr.html#ga32da759f46e52c95bcfbde5012260667">__get_BASEPRI</a> </li>
225 <a id="ga27bf1f88e794c30808ee73a29d46e358" name="ga27bf1f88e794c30808ee73a29d46e358"></a>
226 <h2 class="memtitle"><span class="permalink"><a href="#ga27bf1f88e794c30808ee73a29d46e358">◆ </a></span>__TZ_get_CONTROL_NS()</h2>
228 <div class="memitem">
229 <div class="memproto">
230 <table class="memname">
232 <td class="memname">uint32_t __TZ_get_CONTROL_NS </td>
234 <td class="paramtype">void </td>
235 <td class="paramname"></td><td>)</td>
239 </div><div class="memdoc">
241 <p>Get Control register (non-secure) </p>
242 <p>Returns the content of the non-secure Control register when in secure mode. </p><dl class="section return"><dt>Returns</dt><dd>non-secure Control register value </dd></dl>
243 <dl class="section see"><dt>See also</dt><dd><br />
245 <li><a class="el" href="group__Core__Register__gr.html#ga963cf236b73219ce78e965deb01b81a7">__get_CONTROL</a>; <a class="el" href="unionCONTROL__Type.html" title="Union type to access the Control Registers (CONTROL).">CONTROL_Type</a> </li>
251 <a id="ga578b41087f207e1a475daae6cc8a28dc" name="ga578b41087f207e1a475daae6cc8a28dc"></a>
252 <h2 class="memtitle"><span class="permalink"><a href="#ga578b41087f207e1a475daae6cc8a28dc">◆ </a></span>__TZ_get_FAULTMASK_NS()</h2>
254 <div class="memitem">
255 <div class="memproto">
256 <table class="memname">
258 <td class="memname">uint32_t __TZ_get_FAULTMASK_NS </td>
260 <td class="paramtype">void </td>
261 <td class="paramname"></td><td>)</td>
265 </div><div class="memdoc">
267 <p>Get Fault Mask (non-secure) </p>
268 <p>Returns the current value of the non-secure Fault Mask register when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>Fault Mask register value </dd></dl>
269 <dl class="section see"><dt>See also</dt><dd><br />
271 <li><a class="el" href="group__Core__Register__gr.html#gaa78e4e6bf619a65e9f01b4af13fed3a8">__get_FAULTMASK</a> </li>
277 <a id="gab3aa15eb4f352e230b9f7a3e8856a9e9" name="gab3aa15eb4f352e230b9f7a3e8856a9e9"></a>
278 <h2 class="memtitle"><span class="permalink"><a href="#gab3aa15eb4f352e230b9f7a3e8856a9e9">◆ </a></span>__TZ_get_MSP_NS()</h2>
280 <div class="memitem">
281 <div class="memproto">
282 <table class="memname">
284 <td class="memname">uint32_t __TZ_get_MSP_NS </td>
286 <td class="paramtype">void </td>
287 <td class="paramname"></td><td>)</td>
291 </div><div class="memdoc">
293 <p>Get Main Stack Pointer (non-secure) </p>
294 <p>Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>MSP register value </dd></dl>
295 <dl class="section see"><dt>See also</dt><dd><br />
297 <li><a class="el" href="group__Core__Register__gr.html#gab898559392ba027814e5bbb5a98b38d2">__get_MSP</a> </li>
303 <a id="gada00853d3e49fa8d21f375c53d28fa51" name="gada00853d3e49fa8d21f375c53d28fa51"></a>
304 <h2 class="memtitle"><span class="permalink"><a href="#gada00853d3e49fa8d21f375c53d28fa51">◆ </a></span>__TZ_get_MSPLIM_NS()</h2>
306 <div class="memitem">
307 <div class="memproto">
308 <table class="memname">
310 <td class="memname">uint32_t __TZ_get_MSPLIM_NS </td>
312 <td class="paramtype">void </td>
313 <td class="paramname"></td><td>)</td>
317 </div><div class="memdoc">
319 <p>Get Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
320 <p>Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>MSPLIM register value </dd></dl>
324 <a id="ga7cc3271c79e619f8838e8767df3cb509" name="ga7cc3271c79e619f8838e8767df3cb509"></a>
325 <h2 class="memtitle"><span class="permalink"><a href="#ga7cc3271c79e619f8838e8767df3cb509">◆ </a></span>__TZ_get_PRIMASK_NS()</h2>
327 <div class="memitem">
328 <div class="memproto">
329 <table class="memname">
331 <td class="memname">uint32_t __TZ_get_PRIMASK_NS </td>
333 <td class="paramtype">void </td>
334 <td class="paramname"></td><td>)</td>
338 </div><div class="memdoc">
340 <p>Get Priority Mask (non-secure) </p>
341 <p>Returns the current state of the non-secure priority mask bit from the Priority Mask register when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>Priority Mask value </dd></dl>
342 <dl class="section see"><dt>See also</dt><dd><br />
344 <li><a class="el" href="group__Core__Register__gr.html#ga799b5d9a2ae75e459264c8512c7c0e02">__get_PRIMASK</a> </li>
350 <a id="ga40ff8336c6d09af6da1081d4e4adc126" name="ga40ff8336c6d09af6da1081d4e4adc126"></a>
351 <h2 class="memtitle"><span class="permalink"><a href="#ga40ff8336c6d09af6da1081d4e4adc126">◆ </a></span>__TZ_get_PSP_NS()</h2>
353 <div class="memitem">
354 <div class="memproto">
355 <table class="memname">
357 <td class="memname">uint32_t __TZ_get_PSP_NS </td>
359 <td class="paramtype">void </td>
360 <td class="paramname"></td><td>)</td>
364 </div><div class="memdoc">
366 <p>Get Process Stack Pointer (non-secure) </p>
367 <p>Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>PSP register value </dd></dl>
368 <dl class="section see"><dt>See also</dt><dd><br />
370 <li><a class="el" href="group__Core__Register__gr.html#ga914dfa8eff7ca53380dd54cf1d8bebd9">__get_PSP</a> </li>
376 <a id="ga5da646ec291b6a183f38497ce92be51c" name="ga5da646ec291b6a183f38497ce92be51c"></a>
377 <h2 class="memtitle"><span class="permalink"><a href="#ga5da646ec291b6a183f38497ce92be51c">◆ </a></span>__TZ_get_PSPLIM_NS()</h2>
379 <div class="memitem">
380 <div class="memproto">
381 <table class="memname">
383 <td class="memname">uint32_t __TZ_get_PSPLIM_NS </td>
385 <td class="paramtype">void </td>
386 <td class="paramname"></td><td>)</td>
390 </div><div class="memdoc">
392 <p>Get Process Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
393 <p>Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>PSPLIM register value </dd></dl>
397 <a id="gaaaf2aaf904b25ed17fd3e5e63f8e029b" name="gaaaf2aaf904b25ed17fd3e5e63f8e029b"></a>
398 <h2 class="memtitle"><span class="permalink"><a href="#gaaaf2aaf904b25ed17fd3e5e63f8e029b">◆ </a></span>__TZ_get_SP_NS()</h2>
400 <div class="memitem">
401 <div class="memproto">
402 <table class="memname">
404 <td class="memname">uint32_t __TZ_get_SP_NS </td>
406 <td class="paramtype">void </td>
407 <td class="paramname"></td><td>)</td>
411 </div><div class="memdoc">
413 <p>Get Stack Pointer (non-secure) </p>
414 <p>Returns the current value of the non-secure Stack Pointer (SP) when in secure state. </p><dl class="section return"><dt>Returns</dt><dd>SP register value </dd></dl>
418 <a id="ga92c187f0b4d53627b59e0fd0bda0b0df" name="ga92c187f0b4d53627b59e0fd0bda0b0df"></a>
419 <h2 class="memtitle"><span class="permalink"><a href="#ga92c187f0b4d53627b59e0fd0bda0b0df">◆ </a></span>__TZ_set_BASEPRI_NS()</h2>
421 <div class="memitem">
422 <div class="memproto">
423 <table class="memname">
425 <td class="memname">void __TZ_set_BASEPRI_NS </td>
427 <td class="paramtype">uint32_t </td>
428 <td class="paramname"><em>basePri</em></td><td>)</td>
432 </div><div class="memdoc">
434 <p>Set Base Priority (non-secure) </p>
435 <p>Assigns the given value to the non-secure Base Priority register when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
436 <table class="params">
437 <tr><td class="paramdir">[in]</td><td class="paramname">basePri</td><td>Base Priority value to set </td></tr>
441 <dl class="section see"><dt>See also</dt><dd><br />
443 <li><a class="el" href="group__Core__Register__gr.html#ga360c73eb7ffb16088556f9278953b882">__set_BASEPRI</a> </li>
449 <a id="ga3eb150204e6d389d5b49065179b9cde5" name="ga3eb150204e6d389d5b49065179b9cde5"></a>
450 <h2 class="memtitle"><span class="permalink"><a href="#ga3eb150204e6d389d5b49065179b9cde5">◆ </a></span>__TZ_set_CONTROL_NS()</h2>
452 <div class="memitem">
453 <div class="memproto">
454 <table class="memname">
456 <td class="memname">void __TZ_set_CONTROL_NS </td>
458 <td class="paramtype">uint32_t </td>
459 <td class="paramname"><em>control</em></td><td>)</td>
463 </div><div class="memdoc">
465 <p>Set Control register (non-secure) </p>
466 <p>Writes the given value to the non-secure Control register when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
467 <table class="params">
468 <tr><td class="paramdir">[in]</td><td class="paramname">control</td><td>Control register value to set </td></tr>
472 <dl class="section see"><dt>See also</dt><dd><br />
474 <li><a class="el" href="group__Core__Register__gr.html#gac64d37e7ff9de06437f9fb94bbab8b6c">__set_CONTROL</a>; <a class="el" href="unionCONTROL__Type.html" title="Union type to access the Control Registers (CONTROL).">CONTROL_Type</a> </li>
480 <a id="ga4f0912db7bc65439d23817c1d372a7a4" name="ga4f0912db7bc65439d23817c1d372a7a4"></a>
481 <h2 class="memtitle"><span class="permalink"><a href="#ga4f0912db7bc65439d23817c1d372a7a4">◆ </a></span>__TZ_set_FAULTMASK_NS()</h2>
483 <div class="memitem">
484 <div class="memproto">
485 <table class="memname">
487 <td class="memname">void __TZ_set_FAULTMASK_NS </td>
489 <td class="paramtype">uint32_t </td>
490 <td class="paramname"><em>faultMask</em></td><td>)</td>
494 </div><div class="memdoc">
496 <p>Set Fault Mask (non-secure) </p>
497 <p>Assigns the given value to the non-secure Fault Mask register when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
498 <table class="params">
499 <tr><td class="paramdir">[in]</td><td class="paramname">faultMask</td><td>Fault Mask value to set </td></tr>
503 <dl class="section see"><dt>See also</dt><dd><br />
505 <li><a class="el" href="group__Core__Register__gr.html#gaa5587cc09031053a40a35c14ec36078a">__set_FAULTMASK</a> </li>
511 <a id="ga41c3ac2d9af23c40647c053ad7d564e7" name="ga41c3ac2d9af23c40647c053ad7d564e7"></a>
512 <h2 class="memtitle"><span class="permalink"><a href="#ga41c3ac2d9af23c40647c053ad7d564e7">◆ </a></span>__TZ_set_MSP_NS()</h2>
514 <div class="memitem">
515 <div class="memproto">
516 <table class="memname">
518 <td class="memname">void __TZ_set_MSP_NS </td>
520 <td class="paramtype">uint32_t </td>
521 <td class="paramname"><em>topOfMainStack</em></td><td>)</td>
525 </div><div class="memdoc">
527 <p>Set Main Stack Pointer (non-secure) </p>
528 <p>Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
529 <table class="params">
530 <tr><td class="paramdir">[in]</td><td class="paramname">topOfMainStack</td><td>Main Stack Pointer value to set </td></tr>
534 <dl class="section see"><dt>See also</dt><dd><br />
536 <li><a class="el" href="group__Core__Register__gr.html#ga0bf9564ebc1613a8faba014275dac2a4">__set_MSP</a> </li>
542 <a id="gad2013f4d4311d6db253594a12d192617" name="gad2013f4d4311d6db253594a12d192617"></a>
543 <h2 class="memtitle"><span class="permalink"><a href="#gad2013f4d4311d6db253594a12d192617">◆ </a></span>__TZ_set_MSPLIM_NS()</h2>
545 <div class="memitem">
546 <div class="memproto">
547 <table class="memname">
549 <td class="memname">void __TZ_set_MSPLIM_NS </td>
551 <td class="paramtype">uint32_t </td>
552 <td class="paramname"><em>MainStackPtrLimit</em></td><td>)</td>
556 </div><div class="memdoc">
558 <p>Set Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
559 <p>Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
560 <table class="params">
561 <tr><td class="paramdir">[in]</td><td class="paramname">MainStackPtrLimit</td><td>Main Stack Pointer value to set </td></tr>
568 <a id="ga6686c2ab5756b5049fad1644e89b3340" name="ga6686c2ab5756b5049fad1644e89b3340"></a>
569 <h2 class="memtitle"><span class="permalink"><a href="#ga6686c2ab5756b5049fad1644e89b3340">◆ </a></span>__TZ_set_PRIMASK_NS()</h2>
571 <div class="memitem">
572 <div class="memproto">
573 <table class="memname">
575 <td class="memname">void __TZ_set_PRIMASK_NS </td>
577 <td class="paramtype">uint32_t </td>
578 <td class="paramname"><em>priMask</em></td><td>)</td>
582 </div><div class="memdoc">
584 <p>Set Priority Mask (non-secure) </p>
585 <p>Assigns the given value to the non-secure Priority Mask register when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
586 <table class="params">
587 <tr><td class="paramdir">[in]</td><td class="paramname">priMask</td><td>Priority Mask </td></tr>
591 <dl class="section see"><dt>See also</dt><dd><br />
593 <li><a class="el" href="group__Core__Register__gr.html#ga70b4e1a6c1c86eb913fb9d6e8400156f">__set_PRIMASK</a> </li>
599 <a id="gaea8db21c00cfa4144ee74dc65dbd7580" name="gaea8db21c00cfa4144ee74dc65dbd7580"></a>
600 <h2 class="memtitle"><span class="permalink"><a href="#gaea8db21c00cfa4144ee74dc65dbd7580">◆ </a></span>__TZ_set_PSP_NS()</h2>
602 <div class="memitem">
603 <div class="memproto">
604 <table class="memname">
606 <td class="memname">void __TZ_set_PSP_NS </td>
608 <td class="paramtype">uint32_t </td>
609 <td class="paramname"><em>topOfProcStack</em></td><td>)</td>
613 </div><div class="memdoc">
615 <p>Set Process Stack Pointer (non-secure) </p>
616 <p>Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
617 <table class="params">
618 <tr><td class="paramdir">[in]</td><td class="paramname">topOfProcStack</td><td>Process Stack Pointer value to set </td></tr>
622 <dl class="section see"><dt>See also</dt><dd><br />
624 <li><a class="el" href="group__Core__Register__gr.html#ga48e5853f417e17a8a65080f6a605b743">__set_PSP</a> </li>
630 <a id="ga81e0995ee0fd2a9dcd9e9681bc22c76f" name="ga81e0995ee0fd2a9dcd9e9681bc22c76f"></a>
631 <h2 class="memtitle"><span class="permalink"><a href="#ga81e0995ee0fd2a9dcd9e9681bc22c76f">◆ </a></span>__TZ_set_PSPLIM_NS()</h2>
633 <div class="memitem">
634 <div class="memproto">
635 <table class="memname">
637 <td class="memname">void __TZ_set_PSPLIM_NS </td>
639 <td class="paramtype">uint32_t </td>
640 <td class="paramname"><em>ProcStackPtrLimit</em></td><td>)</td>
644 </div><div class="memdoc">
646 <p>Set Process Stack Pointer (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
647 <p>Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
648 <table class="params">
649 <tr><td class="paramdir">[in]</td><td class="paramname">ProcStackPtrLimit</td><td>Process Stack Pointer Limit value to set </td></tr>
656 <a id="gab7263167cb006aeeb04b68e579dae015" name="gab7263167cb006aeeb04b68e579dae015"></a>
657 <h2 class="memtitle"><span class="permalink"><a href="#gab7263167cb006aeeb04b68e579dae015">◆ </a></span>__TZ_set_SP_NS()</h2>
659 <div class="memitem">
660 <div class="memproto">
661 <table class="memname">
663 <td class="memname">void __TZ_set_SP_NS </td>
665 <td class="paramtype">uint32_t </td>
666 <td class="paramname"><em>topOfStack</em></td><td>)</td>
670 </div><div class="memdoc">
672 <p>Set Stack Pointer (non-secure) </p>
673 <p>Assigns the given value to the non-secure Stack Pointer (SP) when in secure state. </p><dl class="params"><dt>Parameters</dt><dd>
674 <table class="params">
675 <tr><td class="paramdir">[in]</td><td class="paramname">topOfStack</td><td>Stack Pointer value to set </td></tr>
682 </div><!-- contents -->
683 </div><!-- doc-content -->
684 <!-- start footer part -->
685 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
688 <script type="text/javascript">
690 writeFooter.call(this);