CMSIS-Zone (Preview)  Version 0.9.2
System Resource Management
 All Files Pages
/rzone/resources/peripherals element

The /rzone/resources/peripherals element contains a list of all peripherals available in the system. It also restricts the availability to specific processors or security modes.

Example

<resources>
:
<peripherals>
<peripheral name="ADC0" start="0x40080000" size="0x1000" access="rwp" info="Analog/Digital Converter 0 (12-bit)"/>
:
<group name="TIM" info="Timer Group">
<peripheral name="TIM1" start_ns="0x40012c00" start_s="0x50012c00" size="0x400" access="rw">
<interrupt name="TIM1_BRK" irqn="41" info="Timer 1 Break"/>
<interrupt name="TIM1_UP" irqn="42" info="Timer 1 Update"/>
<interrupt name="TIM1_BRK" irqn="43" info="Timer 1 Trigger and Commutation"/>
<interrupt name="TIM1_CC" irqn="44" info="Timer 1 Capture and Compare"/>
</peripheral>
<peripheral name="TIM2" start_ns="0x40000000" start_s="0x50000000" size="0x400" access="rw">
<interrupt name="TIM2" irqn="45" info="Timer2 Global Interrupt"/>
</peripheral>
</group>
</peripherals>
</resources>

 

Parent Element Element Chain
resources /rzone/resources element
Child Elements Description Type Occurrence
group Logical grouping of peripherals. complexType 0..*
peripheral Peripheral definitions. complexType 0..*

/rzone/resources/peripherals/group element

The /rzone/resources/peripherals/group element can be used to logically group peripherals according to functionality or bus topology.

Parent Element Element Chain
peripherals /rzone/resources/peripherals element
Attributes Description Type Use
name The name for the peripheral group must be be unique within a processor (specified by Pname). xs:string required
start The logical start address of the peripheral group in both secure and non-secure mode. xs:string optional
start_s The logical start address of the peripheral group in secure mode. xs:string optional
start_ns The logical start address of the peripheral group in non-secure mode. xs:string optional
physical The physical start address of the peripheral group. xs:string optional
size The physical size of the peripheral group in bytes. xs:string required
shared "1" specifies that this peripheral group is used by multiple zones. Default value is "0". xs:boolean optional
dma "1" specifies that this peripheral group is accessed by a DMA controller. Default value is "0". xs:boolean optional
external "1" specifies that this peripheral group is provided by an external component that is not part of the device. Default value is "0". xs:boolean optional
Pname The processor that can access this peripheral group. If omitted all processors of the system have access. xs:string optional
access Access permissions for this peripheral group. AccessType optional
security Security attributes for this peripheral group. SecurityType optional
privilege Privilege level for this peripheral group. PrivilegeType optional
info Brief description of the peripheral group. xs:string optional
Child Elements Description Type Occurrence
peripheral Peripheral definitions. complexType 0..*
setup Setup information for the peripheral group. complexType 0..*

/rzone/resources/peripherals/.../peripheral element

The /rzone/resources/peripherals/.../peripheral element is used to define an address mapping for one peripheral.

Parent Element Element Chain
peripherals /rzone/resources/peripherals element
group /rzone/resources/peripherals/group element
Attributes Description Type Use
name The name of the peripheral. The combination group / name must be be unique within a processor (specified by Pname). xs:string required
start The logical start address of the peripheral in both secure and non-secure mode. xs:string optional
start_s The logical start address of the peripheral in secure mode. xs:string optional
start_ns The logical start address of the peripheral in non-secure mode. xs:string optional
physcial The physical start address of the peripheral. xs:string optional
offset Specifies an offset for the peripheral for the /rzone/resources/peripherals/group element values. The values start, start_s, start_ns, physical are taken from the /rzone/resources/peripherals/group element element if not overwritten. xs:string optional
size The physical size of the peripheral in bytes. xs:string required
shared "1" specifies that this peripheral group is used by multiple zones. Default value is "0". xs:boolean optional
dma "1" specifies that this peripheral group is accessed by a DMA controller. Default value is "0". xs:boolean optional
external "1" specifies that this peripheral is provided by an external component that is not part of the device. Default value is "0". xs:boolean optional
Pname The processor that can access this peripheral. If omitted all processors of the system have access. xs:string optional
access Access permissions for this peripheral. AccessType optional
security Security attributes for this peripheral. SecurityType optional
privilege Privilege level for this peripheral. PrivilegeType optional
info Brief description of the peripheral. xs:string optional
slot_name Attribute name of the slot (i.e. Pins or Channels). Used in context menu or dialog heading. xs:string optional
slot_type Specifies the values that are configured for the slots:
  • type="s" : (default) only the secure attribute is configured.
  • type="p" : only the Privileged attribute is configured.
  • type="sp" : both the Secure are Privileged attribute are configured.
SlotTypeEnum optional
Child Elements Description Type Occurrence
slot Configuration of security or privileged attribute for slots (typically channels or pins). complexType 0..*
interrupt Interrupts generated by this peripheral. complexType 0..*
setup Setup information for the peripheral. complexType 0..*

/rzone/resources/peripherals/.../peripheral/slot element

The /rzone/resources/peripherals/.../peripheral/slot element 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).

Parent Element Element Chain
peripheral /rzone/resources/peripherals/.../peripheral element
Attributes Description Type Use
name The name of the slot (typically channel or pin name). xs:string required
secure Setting of the secure attribute (default="0"). xs:boolean optional
privilege Setting of the privilege attribute (default="0"). xs:boolean optional
Child Elements Description Type Occurrence
interrupt Interrupts generated by this peripheral. complexType 0..*
setup Setup information for the peripheral. complexType 0..*

/rzone/resources/peripherals/.../interrupt element

The /rzone/resources/peripherals/.../interrupt element defines the interrupts that are generated by a peripheral or slot.

Parent Element Element Chain
peripheral /rzone/resources/peripherals/.../peripheral element
Attributes Description Type Use
name The name of the interrupt. xs:string required
irqn The interrupt number. xs:string required
info Brief description of the peripheral. xs:string optional

/rzone/resources/peripherals/.../setup element

The /rzone/resources/peripherals/.../setup element defines the setup information for this peripheral, slot, or peripheral group. The attributes security and privilege specifies conditions. When the peripheral is specified for on the the conditions, the value is assigned to the register name (with an optional index).

Parent Element Element Chain
peripheral /rzone/resources/peripherals/.../peripheral element
group /rzone/resources/peripherals/group element
Attributes Description Type Use
name The name of the register. xs:string required
index An index value for the register. xs:string required
value The value that should be written to the register when the security or privilege condition matches with the peripheral configuration. xs:string required
security Security condition for this setup value. Security can be "s" or "n". When a peripheral matches that security setting the value will be written. SecurityType optional
privilege Privilege level 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. PrivilegeType optional
info Brief description of the setup value. xs:string optional