Reworked ARM Cortex-M device support files to be more generic (removed peripherals).
Added scatter and C-startup files.
diff --git a/Device/ARM/SVD/ARMv8MML.svd b/Device/ARM/SVD/ARMv8MML.svd
index b9a639f..bb2c998 100644
--- a/Device/ARM/SVD/ARMv8MML.svd
+++ b/Device/ARM/SVD/ARMv8MML.svd
@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- File naming: <part/series name>.svd -->
+<!-- File naming: <vendor>_<part/series name>.svd -->
<!--
- Copyright (C) 2012-2014 ARM Limited. All rights reserved.
+ Copyright (C) 2012 - 2018 Arm Limited. All rights reserved.
Purpose: System Viewer Description (SVD) Example (Schema Version 1.1)
This is a description of a none-existent and incomplete device
- for demonstration purposes only.
-
+ for demonstration purposes only.
+
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright
@@ -16,30 +16,30 @@
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
- - Neither the name of ARM nor the names of its contributors may be used
- to endorse or promote products derived from this software without
+ - Neither the name of ARM nor the names of its contributors may be used
+ to endorse or promote products derived from this software without
specific prior written permission.
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
POSSIBILITY OF SUCH DAMAGE.
-->
-
+
<device schemaVersion="1.3" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd" >
<vendor>ARM Ltd.</vendor> <!-- device vendor name -->
<vendorID>ARM</vendorID> <!-- device vendor short name -->
<name>ARMv8MML</name> <!-- name of part-->
<series>ARMV8M</series> <!-- device series the device belongs to -->
<version>1.0</version> <!-- version of this description, adding CMSIS-SVD 1.1 tags -->
- <description>ARM 32-bit v8-M Baseline based device</description>
+ <description>ARM 32-bit v8-M Baseline based device.</description>
<licenseText> <!-- this license text will appear in header file. \n force line breaks -->
ARM Limited (ARM) is supplying this software for use with Cortex-M\n
processor based microcontroller, but can be equally used for other\n
@@ -52,12 +52,14 @@
ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR\n
CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
</licenseText>
+
<cpu> <!-- details about the cpu embedded in the device -->
- <name>CM4</name>
+ <name>ARMV8MML</name>
<revision>r0p0</revision>
<endian>little</endian>
<mpuPresent>true</mpuPresent>
<fpuPresent>false</fpuPresent>
+ <vtorPresent>true</vtorPresent>
<nvicPrioBits>3</nvicPrioBits>
<vendorSystickConfig>false</vendorSystickConfig>
<sauNumRegions>4</sauNumRegions>
@@ -87,8 +89,8 @@
<access>n</access>
</region>
</sauRegionsConfig>
-
</cpu>
+
<addressUnitBits>8</addressUnitBits> <!-- byte addressable memory -->
<width>32</width> <!-- bus width is 32 bits -->
<!-- default settings implicitly inherited by subsequent sections -->
@@ -98,165 +100,4 @@
<resetValue>0x00000000</resetValue> <!-- by default all bits of the registers are initialized to 0 on reset -->
<resetMask>0xFFFFFFFF</resetMask> <!-- by default all 32Bits of the registers are used -->
- <peripherals>
- <!-- Timer 0 -->
- <peripheral>
- <name>SAU</name>
- <version>1.0</version>
- <description>Security Attribution Unit</description>
- <groupName>SAU</groupName>
- <baseAddress>0xE000EDD0</baseAddress>
- <size>32</size>
- <access>read-write</access>
-
- <addressBlock>
- <offset>0</offset>
- <size>0x20</size>
- <usage>registers</usage>
- </addressBlock>
-
- <registers>
- <!-- CTRL: Control Register -->
- <register>
- <name>CTRL</name>
- <description>Control Register</description>
- <addressOffset>0x00</addressOffset>
- <fields>
- <!-- EN: Enable -->
- <field>
- <name>ENABLE</name>
- <description>Enable</description>
- <bitRange>[0:0]</bitRange>
- <enumeratedValues>
- <enumeratedValue>
- <name>Disable</name>
- <description>SAU is disabled</description>
- <value>0</value>
- </enumeratedValue>
- <enumeratedValue>
- <name>Enable</name>
- <description>SAU is enabled</description>
- <value>1</value>
- </enumeratedValue>
- </enumeratedValues>
- </field>
-
- <!-- RST: Reset -->
- <field>
- <name>ALLNS</name>
- <description>Security attribution if SAU disabled</description>
- <bitRange>[1:1]</bitRange>
- <enumeratedValues>
- <enumeratedValue>
- <name>Secure</name>
- <description>Memory is marked as secure</description>
- <value>0</value>
- </enumeratedValue>
- <enumeratedValue>
- <name>Non_Secure</name>
- <description>Memory is marked as non-secure</description>
- <value>1</value>
- </enumeratedValue>
- </enumeratedValues>
- </field>
- </fields>
- </register>
-
- <!-- TYPE: -->
- <register>
- <name>TYPE</name>
- <description>Type Register</description>
- <addressOffset>0x04</addressOffset>
- <access>read-only</access>
- <fields>
- <!-- SREGION: -->
- <field>
- <name>SREGION</name>
- <description>Number of implemented SAU regions</description>
- <bitRange>[7:0]</bitRange>
- </field>
- </fields>
- </register>
-
- <!-- RNR: -->
- <register>
- <name>RNR</name>
- <description>Region Number Register</description>
- <addressOffset>0x08</addressOffset>
- <fields>
- <!-- REGION: -->
- <field>
- <name>REGION</name>
- <description>Currently selected SAU region</description>
- <bitRange>[7:0]</bitRange>
- <enumeratedValues>
- <enumeratedValue>
- <name>SAU_Region_0</name>
- <description>Select SAU Region 0</description>
- <value>0</value>
- </enumeratedValue>
- <enumeratedValue>
- <name>SAU_Region_1</name>
- <description>Select SAU Region 1</description>
- <value>1</value>
- </enumeratedValue>
- <enumeratedValue>
- <name>SAU_Region_2</name>
- <description>Select SAU Region 2</description>
- <value>2</value>
- </enumeratedValue>
- <enumeratedValue>
- <name>SAU_Region_3</name>
- <description>Select SAU Region 3</description>
- <value>3</value>
- </enumeratedValue>
- </enumeratedValues>
- </field>
- </fields>
- </register>
-
- <!-- RBAR: -->
- <register>
- <name>RBAR</name>
- <description>Region Base Address Register</description>
- <addressOffset>0x0C</addressOffset>
- <fields>
- <!-- BADDR: -->
- <field>
- <name>BADDR</name>
- <description>Base Address</description>
- <bitRange>[31:5]</bitRange>
- </field>
- </fields>
- </register>
-
- <!-- RBAR: -->
- <register>
- <name>RLAR</name>
- <description>Region Limit Address Register</description>
- <addressOffset>0x10</addressOffset>
- <fields>
- <!-- LADDR: -->
- <field>
- <name>LADDR</name>
- <description>Limit Address</description>
- <bitRange>[31:5]</bitRange>
- </field>
- <!-- NSC: -->
- <field>
- <name>NSC</name>
- <description>Non-Secure Callable</description>
- <bitRange>[1:1]</bitRange>
- </field>
- <!-- ENABLE: -->
- <field>
- <name>ENABLE</name>
- <description>SAU Region enabled</description>
- <bitRange>[0:0]</bitRange>
- </field>
- </fields>
- </register>
- </registers>
- </peripheral>
- </peripherals>
</device>