<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <title>/rzone/resources/peripherals element</title> <title>CMSIS-Zone (Preview): /rzone/resources/peripherals element</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="cmsis.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <script type="text/javascript" src="printComponentTabs.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 46px;"> <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td> <td style="padding-left: 0.5em;"> <div id="projectname">CMSIS-Zone (Preview)  <span id="projectnumber">Version 0.9.2</span> </div> <div id="projectbrief">System Resource Management</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <div id="CMSISnav" class="tabs1"> <ul class="tablist"> <script type="text/javascript"> <!-- writeComponentTabs.call(this); //--> </script> </ul> </div> <!-- Generated by Doxygen 1.8.6 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li class="current"><a href="pages.html"><span>Usage and Description</span></a></li> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </li> </ul> </div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('xml_peripherals.html','');}); </script> <div id="doc-content"> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Pages</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div class="header"> <div class="headertitle"> <div class="title">/rzone/resources/peripherals element </div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><p>The <a class="el" href="xml_peripherals.html">/rzone/resources/peripherals element</a> contains a list of all peripherals available in the system. It also restricts the availability to specific processors or security modes.</p> <p><b>Example</b> </p> <div class="fragment"><div class="line"><resources></div> <div class="line"> :</div> <div class="line"> <peripherals></div> <div class="line"> <peripheral name=<span class="stringliteral">"ADC0"</span> start=<span class="stringliteral">"0x40080000"</span> size=<span class="stringliteral">"0x1000"</span> access=<span class="stringliteral">"rwp"</span> info=<span class="stringliteral">"Analog/Digital Converter 0 (12-bit)"</span>/></div> <div class="line"> :</div> <div class="line"> <group name=<span class="stringliteral">"TIM"</span> info=<span class="stringliteral">"Timer Group"</span>></div> <div class="line"> <peripheral name=<span class="stringliteral">"TIM1"</span> start_ns=<span class="stringliteral">"0x40012c00"</span> start_s=<span class="stringliteral">"0x50012c00"</span> size=<span class="stringliteral">"0x400"</span> access=<span class="stringliteral">"rw"</span>></div> <div class="line"> <interrupt name=<span class="stringliteral">"TIM1_BRK"</span> irqn=<span class="stringliteral">"41"</span> info=<span class="stringliteral">"Timer 1 Break"</span>/></div> <div class="line"> <interrupt name=<span class="stringliteral">"TIM1_UP"</span> irqn=<span class="stringliteral">"42"</span> info=<span class="stringliteral">"Timer 1 Update"</span>/></div> <div class="line"> <interrupt name=<span class="stringliteral">"TIM1_BRK"</span> irqn=<span class="stringliteral">"43"</span> info=<span class="stringliteral">"Timer 1 Trigger and Commutation"</span>/></div> <div class="line"> <interrupt name=<span class="stringliteral">"TIM1_CC"</span> irqn=<span class="stringliteral">"44"</span> info=<span class="stringliteral">"Timer 1 Capture and Compare"</span>/></div> <div class="line"> </peripheral></div> <div class="line"> <peripheral name=<span class="stringliteral">"TIM2"</span> start_ns=<span class="stringliteral">"0x40000000"</span> start_s=<span class="stringliteral">"0x50000000"</span> size=<span class="stringliteral">"0x400"</span> access=<span class="stringliteral">"rw"</span>></div> <div class="line"> <interrupt name=<span class="stringliteral">"TIM2"</span> irqn=<span class="stringliteral">"45"</span> info=<span class="stringliteral">"Timer2 Global Interrupt"</span>/></div> <div class="line"> </peripheral></div> <div class="line"> </group></div> <div class="line"> </peripherals></div> <div class="line"></resources></div> </div><!-- fragment --><p>  </p> <table class="cmtable" summary="Element: peripherals"> <tr> <th>Parent Element </th><th colspan="3">Element Chain </th></tr> <tr> <td><a class="el" href="xml_resources.html">resources</a> </td><td colspan="3"><a class="el" href="xml_resources.html">/rzone/resources element</a> </td></tr> <tr> <th>Child Elements </th><th>Description </th><th>Type </th><th>Occurrence </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_group">group</a> </td><td>Logical grouping of peripherals. </td><td>complexType </td><td>0..* </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_peripheral">peripheral</a> </td><td>Peripheral definitions. </td><td>complexType </td><td>0..* </td></tr> </table> <h1><a class="anchor" id="xml_group"></a> /rzone/resources/peripherals/group element</h1> <p>The <a class="el" href="xml_peripherals.html#xml_group">/rzone/resources/peripherals/group element</a> can be used to logically group peripherals according to functionality or bus topology.</p> <table class="cmtable" summary="Element: group"> <tr> <th>Parent Element </th><th colspan="3">Element Chain </th></tr> <tr> <td><a class="el" href="xml_peripherals.html">peripherals</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html">/rzone/resources/peripherals element</a> </td></tr> <tr> <th>Attributes </th><th>Description </th><th>Type </th><th>Use </th></tr> <tr> <td>name </td><td>The name for the peripheral group must be be unique within a processor (specified by Pname). </td><td>xs:string </td><td>required </td></tr> <tr> <td>start </td><td>The logical start address of the peripheral group in both secure and non-secure mode. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>start_s </td><td>The logical start address of the peripheral group in secure mode. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>start_ns </td><td>The logical start address of the peripheral group in non-secure mode. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>physical </td><td>The physical start address of the peripheral group. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>size </td><td>The physical size of the peripheral group in bytes. </td><td>xs:string </td><td>required </td></tr> <tr> <td>shared </td><td>"1" specifies that this peripheral group is used by multiple zones. Default value is "0". </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>dma </td><td>"1" specifies that this peripheral group is accessed by a DMA controller. Default value is "0". </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>external </td><td>"1" specifies that this peripheral group is provided by an external component that is not part of the device. Default value is "0". </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>Pname </td><td>The processor that can access this peripheral group. If omitted all processors of the system have access. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>access </td><td><a class="el" href="zoneFormat.html#access">Access</a> permissions for this peripheral group. </td><td><a class="el" href="zoneFormat.html#access">AccessType</a> </td><td>optional </td></tr> <tr> <td>security </td><td><a class="el" href="zoneFormat.html#security">Security</a> attributes for this peripheral group. </td><td><a class="el" href="zoneFormat.html#security">SecurityType</a> </td><td>optional </td></tr> <tr> <td>privilege </td><td><a class="el" href="zoneFormat.html#privilege">Privilege level</a> for this peripheral group. </td><td><a class="el" href="zoneFormat.html#privilege">PrivilegeType</a> </td><td>optional </td></tr> <tr> <td>info </td><td>Brief description of the peripheral group. </td><td>xs:string </td><td>optional </td></tr> <tr> <th>Child Elements </th><th>Description </th><th>Type </th><th>Occurrence </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_peripheral">peripheral</a> </td><td>Peripheral definitions. </td><td>complexType </td><td>0..* </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_p_setup">setup</a> </td><td>Setup information for the peripheral group. </td><td>complexType </td><td>0..* </td></tr> </table> <h1><a class="anchor" id="xml_peripheral"></a> /rzone/resources/peripherals/.../peripheral element</h1> <p>The <a class="el" href="xml_peripherals.html#xml_peripheral">/rzone/resources/peripherals/.../peripheral element</a> is used to define an address mapping for one peripheral.</p> <table class="cmtable" summary="Element: peripheral"> <tr> <th>Parent Element </th><th colspan="3">Element Chain </th></tr> <tr> <td><a class="el" href="xml_peripherals.html">peripherals</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html">/rzone/resources/peripherals element</a> </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_group">group</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html#xml_group">/rzone/resources/peripherals/group element</a> </td></tr> <tr> <th>Attributes </th><th>Description </th><th>Type </th><th>Use </th></tr> <tr> <td>name </td><td>The name of the peripheral. The combination group / name must be be unique within a processor (specified by Pname). </td><td>xs:string </td><td>required </td></tr> <tr> <td>start </td><td>The logical start address of the peripheral in both secure and non-secure mode. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>start_s </td><td>The logical start address of the peripheral in secure mode. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>start_ns </td><td>The logical start address of the peripheral in non-secure mode. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>physcial </td><td>The physical start address of the peripheral. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>offset </td><td>Specifies an offset for the peripheral for the <a class="el" href="xml_peripherals.html#xml_group">/rzone/resources/peripherals/group element</a> values. The values <em>start</em>, <em>start_s</em>, <em>start_ns</em>, <em>physical</em> are taken from the <a class="el" href="xml_peripherals.html#xml_group">/rzone/resources/peripherals/group element</a> element if not overwritten. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>size </td><td>The physical size of the peripheral in bytes. </td><td>xs:string </td><td>required </td></tr> <tr> <td>shared </td><td>"1" specifies that this peripheral group is used by multiple zones. Default value is "0". </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>dma </td><td>"1" specifies that this peripheral group is accessed by a DMA controller. Default value is "0". </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>external </td><td>"1" specifies that this peripheral is provided by an external component that is not part of the device. Default value is "0". </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>Pname </td><td>The processor that can access this peripheral. If omitted all processors of the system have access. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>access </td><td><a class="el" href="zoneFormat.html#access">Access</a> permissions for this peripheral. </td><td><a class="el" href="zoneFormat.html#access">AccessType</a> </td><td>optional </td></tr> <tr> <td>security </td><td><a class="el" href="zoneFormat.html#security">Security</a> attributes for this peripheral. </td><td><a class="el" href="zoneFormat.html#security">SecurityType</a> </td><td>optional </td></tr> <tr> <td>privilege </td><td><a class="el" href="zoneFormat.html#privilege">Privilege level</a> for this peripheral. </td><td><a class="el" href="zoneFormat.html#privilege">PrivilegeType</a> </td><td>optional </td></tr> <tr> <td>info </td><td>Brief description of the peripheral. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>slot_name </td><td>Attribute name of the slot (i.e. Pins or Channels). Used in context menu or dialog heading. </td><td>xs:string </td><td>optional </td></tr> <tr> <td>slot_type </td><td>Specifies the values that are configured for the slots:<br/> <ul> <li>type="s" : (default) only the secure attribute is configured.</li> <li>type="p" : only the Privileged attribute is configured.</li> <li>type="sp" : both the Secure are Privileged attribute are configured. </li> </ul> </td><td>SlotTypeEnum </td><td>optional </td></tr> <tr> <th>Child Elements </th><th>Description </th><th>Type </th><th>Occurrence </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_slot">slot</a> </td><td>Configuration of security or privileged attribute for slots (typically channels or pins). </td><td>complexType </td><td>0..* </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_interrupt">interrupt</a> </td><td>Interrupts generated by this peripheral. </td><td>complexType </td><td>0..* </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_p_setup">setup</a> </td><td>Setup information for the peripheral. </td><td>complexType </td><td>0..* </td></tr> </table> <h1><a class="anchor" id="xml_slot"></a> /rzone/resources/peripherals/.../peripheral/slot element</h1> <p>The <a class="el" href="xml_peripherals.html#xml_slot">/rzone/resources/peripherals/.../peripheral/slot element</a> is specific to a channel or pin of a peripheral. It specifies the configuration for interrupts or setup registers that belong to that slot (which is typically a channels or pins).</p> <table class="cmtable" summary="Element: interrupt"> <tr> <th>Parent Element </th><th colspan="3">Element Chain </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_peripheral">peripheral</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html#xml_peripheral">/rzone/resources/peripherals/.../peripheral element</a> </td></tr> <tr> <th>Attributes </th><th>Description </th><th>Type </th><th>Use </th></tr> <tr> <td>name </td><td>The name of the slot (typically channel or pin name). </td><td>xs:string </td><td>required </td></tr> <tr> <td>secure </td><td>Setting of the secure attribute (default="0"). </td><td>xs:boolean </td><td>optional </td></tr> <tr> <td>privilege </td><td>Setting of the privilege attribute (default="0"). </td><td>xs:boolean </td><td>optional </td></tr> <tr> <th>Child Elements </th><th>Description </th><th>Type </th><th>Occurrence </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_interrupt">interrupt</a> </td><td>Interrupts generated by this peripheral. </td><td>complexType </td><td>0..* </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_p_setup">setup</a> </td><td>Setup information for the peripheral. </td><td>complexType </td><td>0..* </td></tr> </table> <h1><a class="anchor" id="xml_interrupt"></a> /rzone/resources/peripherals/.../interrupt element</h1> <p>The <a class="el" href="xml_peripherals.html#xml_interrupt">/rzone/resources/peripherals/.../interrupt element</a> defines the interrupts that are generated by a peripheral or slot.</p> <table class="cmtable" summary="Element: interrupt"> <tr> <th>Parent Element </th><th colspan="3">Element Chain </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_peripheral">peripheral</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html#xml_peripheral">/rzone/resources/peripherals/.../peripheral element</a> </td></tr> <tr> <th>Attributes </th><th>Description </th><th>Type </th><th>Use </th></tr> <tr> <td>name </td><td>The name of the interrupt. </td><td>xs:string </td><td>required </td></tr> <tr> <td>irqn </td><td>The interrupt number. </td><td>xs:string </td><td>required </td></tr> <tr> <td>info </td><td>Brief description of the peripheral. </td><td>xs:string </td><td>optional </td></tr> </table> <h1><a class="anchor" id="xml_p_setup"></a> /rzone/resources/peripherals/.../setup element</h1> <p>The <a class="el" href="xml_peripherals.html#xml_p_setup">/rzone/resources/peripherals/.../setup element</a> defines the setup information for this peripheral, slot, or peripheral group. The attributes <em>security</em> and <em>privilege</em> specifies conditions. When the peripheral is specified for on the the conditions, the <em>value</em> is assigned to the <em>register</em> name (with an optional <em>index</em>).</p> <table class="cmtable" summary="Element: peripheral"> <tr> <th>Parent Element </th><th colspan="3">Element Chain </th></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_peripheral">peripheral</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html#xml_peripheral">/rzone/resources/peripherals/.../peripheral element</a> </td></tr> <tr> <td><a class="el" href="xml_peripherals.html#xml_group">group</a> </td><td colspan="3"><a class="el" href="xml_peripherals.html#xml_group">/rzone/resources/peripherals/group element</a> </td></tr> <tr> <th>Attributes </th><th>Description </th><th>Type </th><th>Use </th></tr> <tr> <td>name </td><td>The name of the register. </td><td>xs:string </td><td>required </td></tr> <tr> <td>index </td><td>An index value for the register. </td><td>xs:string </td><td>required </td></tr> <tr> <td>value </td><td>The value that should be written to the register when the <em>security</em> or <em>privilege</em> condition matches with the peripheral configuration. </td><td>xs:string </td><td>required </td></tr> <tr> <td>security </td><td><a class="el" href="zoneFormat.html#security">Security</a> condition for this setup value. Security can be "s" or "n". When a peripheral matches that security setting the value will be written. </td><td><a class="el" href="zoneFormat.html#security">SecurityType</a> </td><td>optional </td></tr> <tr> <td>privilege </td><td><a class="el" href="zoneFormat.html#privilege">Privilege level</a> condition for this setup value. Privilege can be "u" or "p". When a peripheral matches that privilege setting the value will be written. When both Security and Privilege is specified, both conditions must match. </td><td><a class="el" href="zoneFormat.html#privilege">PrivilegeType</a> </td><td>optional </td></tr> <tr> <td>info </td><td>Brief description of the setup value. </td><td>xs:string </td><td>optional </td></tr> </table> </div></div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="zoneFormat.html">Zone Description Format</a></li><li class="navelem"><a class="el" href="xml_rzone_pg.html">/rzone element</a></li><li class="navelem"><a class="el" href="xml_resources.html">/rzone/resources element</a></li> <li class="footer">Generated on Wed Jul 10 2019 15:21:06 for CMSIS-Zone (Preview) Version 0.9.2 by Arm Ltd. All rights reserved. <!-- <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 --> </li> </ul> </div> </body> </html>