Skip to content

Commit

Permalink
- Add initial support for ARMv8A, ARMV7R and ARMV8R
Browse files Browse the repository at this point in the history
- Added core_cxx.h files for ARMv8A, ARMV7R and ARMV8R based profiles
- Moved gic peripheral to separate file
- Moved __FPU_Enable function to the architecture specific file
- Extend core-test routines for new supported core-types
  • Loading branch information
Masmiseim36 authored and JonatanAntoni committed May 13, 2024
1 parent 6266f58 commit 432826e
Show file tree
Hide file tree
Showing 41 changed files with 5,964 additions and 3,310 deletions.
32 changes: 32 additions & 0 deletions ARM.CMSIS.pdsc
Original file line number Diff line number Diff line change
Expand Up @@ -612,6 +612,20 @@
<accept Dcore="Cortex-A7"/>
<accept Dcore="Cortex-A9"/>
</condition>
<condition id="ARMv8-A Device">
<description>Armv7-A architecture based device</description>
<accept Dcore="Cortex-A35"/>
<accept Dcore="Cortex-A53"/>
<accept Dcore="Cortex-A55"/>
<accept Dcore="Cortex-A57"/>
</condition>
<condition id="ARMv7-R Device">
<description>Armv7-R architecture based device</description>
<accept Dcore="Cortex-R4"/>
<accept Dcore="Cortex-R5"/>
<accept Dcore="Cortex-R7"/>
<accept Dcore="Cortex-R8"/>
</condition>

<condition id="TrustZone">
<description>TrustZone</description>
Expand Down Expand Up @@ -668,6 +682,24 @@
</files>
</component>

<component Cclass="CMSIS" Cgroup="CORE" Cversion="1.0.0" condition="ARMv8-A Device" >
<description>CMSIS-CORE for Cortex-A</description>
<files>
<!-- CPU independent -->
<file category="doc" name="CMSIS/Documentation/html/Core_A/index.html"/>
<file category="include" name="CMSIS/Core/Include/"/>
</files>
</component>

<component Cclass="CMSIS" Cgroup="CORE" Cversion="1.0.0" condition="ARMv7-R Device" >
<description>CMSIS-CORE for Cortex-R</description>
<files>
<!-- CPU independent -->
<file category="doc" name="CMSIS/Documentation/html/Core_R/index.html"/>
<file category="include" name="CMSIS/Core/Include/"/>
</files>
</component>

<!-- IRQ Controller -->
<component Cclass="Device" Cgroup="IRQ Controller" Csub="GIC" Capiversion="1.0.0" Cversion="1.2.0" condition="ARMv7-A Device">
<description>IRQ Controller implementation using GIC</description>
Expand Down
2,340 changes: 2,340 additions & 0 deletions CMSIS/Core/Include/a-profile/armv7a.h

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2009-2017 ARM Limited. All rights reserved.
* Copyright (c) 2009-2024 ARM Limited. All rights reserved.
*
* SPDX-License-Identifier: Apache-2.0
*
Expand Down Expand Up @@ -362,10 +362,10 @@ __STATIC_FORCEINLINE uint32_t __get_CNTP_CTL(void)

/******************************* VIRTUAL TIMER *******************************/
/** see [ARM DDI 0406C.d] :
. §B4.1.31 "CNTV_CTL, Counter-timer Virtual Timer Control register"
. §B4.1.32 "CNTV_CVAL, Counter-timer Virtual Timer CompareValue register"
. §B4.1.33 "CNTV_TVAL, Counter-timer Virtual Timer TimerValue register"
. §B4.1.34 "CNTVCT, Counter-timer Virtual Count register"
* B4.1.31 "CNTV_CTL, Counter-timer Virtual Timer Control register"
* B4.1.32 "CNTV_CVAL, Counter-timer Virtual Timer CompareValue register"
* B4.1.33 "CNTV_TVAL, Counter-timer Virtual Timer TimerValue register"
* B4.1.34 "CNTVCT, Counter-timer Virtual Count register"
**/
/** \brief Set CNTV_TVAL
This function assigns the given value to VL1 Virtual Timer Value Register (CNTV_TVAL).
Expand Down
Loading

0 comments on commit 432826e

Please sign in to comment.