source: rtems/cpukit/score/cpu/arm/rtems/score/arm.h @ 75e5127

4.115
Last change on this file since 75e5127 was 75e5127, checked in by Cudmore, Alan P. (GSFC-5820) <alan.p.cudmore@…>, on 02/20/13 at 17:41:12

add ARM_ARCH_6ZK to cpukit/score/cpu/arm/rtems/score/arm.h

  • Property mode set to 100644
File size: 2.5 KB
Line 
1/**
2 * @file
3 *
4 * @brief ARM Assembler Support API
5 */
6
7/*
8 *  COPYRIGHT (c) 2000 Canon Research Centre France SA.
9 *  Emmanuel Raguet, mailto:raguet@crf.canon.fr
10 *
11 *  Copyright (c) 2002 Advent Networks, Inc.
12 *       Jay Monkman <jmonkman@adventnetworks.com>
13 *
14 *  The license and distribution terms for this file may be
15 *  found in the file LICENSE in this distribution or at
16 *  http://www.rtems.com/license/LICENSE.
17 *
18 */
19
20#ifndef _RTEMS_SCORE_ARM_H
21#define _RTEMS_SCORE_ARM_H
22
23#ifdef __cplusplus
24extern "C" {
25#endif
26
27/**
28 * @addtogroup ScoreCPU
29 */
30/**@{**/
31
32/*
33 *  This file contains the information required to build
34 *  RTEMS for a particular member of the "arm"
35 *  family when executing in protected mode.  It does
36 *  this by setting variables to indicate which implementation
37 *  dependent features are present in a particular member
38 *  of the family.
39 */
40#if defined(__ARM_ARCH_4__)
41#  define CPU_MODEL_NAME  "ARMv4"
42#  define ARM_MULTILIB_ARCH_V4
43
44#elif defined(__ARM_ARCH_4T__)
45#  define CPU_MODEL_NAME  "ARMv4T"
46#  define ARM_MULTILIB_ARCH_V4
47
48#elif defined(__ARM_ARCH_5__)
49#  define CPU_MODEL_NAME  "ARMv5"
50#  define ARM_MULTILIB_ARCH_V4
51
52#elif defined(__ARM_ARCH_5T__)
53#  define CPU_MODEL_NAME  "ARMv5T"
54#  define ARM_MULTILIB_ARCH_V4
55
56#elif defined(__ARM_ARCH_5E__)
57#  define CPU_MODEL_NAME  "ARMv5E"
58#  define ARM_MULTILIB_ARCH_V4
59
60#elif defined(__ARM_ARCH_5TE__)
61#  define CPU_MODEL_NAME  "ARMv5TE"
62#  define ARM_MULTILIB_ARCH_V4
63
64#elif defined(__ARM_ARCH_5TEJ__)
65#  define CPU_MODEL_NAME  "ARMv5TEJ"
66#  define ARM_MULTILIB_ARCH_V4
67
68#elif defined(__ARM_ARCH_6J__)
69#  define CPU_MODEL_NAME  "ARMv6J"
70#  define ARM_MULTILIB_ARCH_V4
71
72#elif defined(__ARM_ARCH_6ZK__)
73#  define CPU_MODEL_NAME  "ARMv6ZK"
74#  define ARM_MULTILIB_ARCH_V4
75
76#elif defined(__ARM_ARCH_6M__)
77#  define CPU_MODEL_NAME  "ARMv6M"
78
79#elif defined(__ARM_ARCH_7__)
80#  define CPU_MODEL_NAME  "ARMv7"
81
82#elif defined(__ARM_ARCH_7A__)
83#  define CPU_MODEL_NAME  "ARMv7A"
84#  define ARM_MULTILIB_ARCH_V4
85
86#elif defined(__ARM_ARCH_7R__)
87#  define CPU_MODEL_NAME  "ARMv7R"
88
89#elif defined(__ARM_ARCH_7M__)
90#  define CPU_MODEL_NAME  "ARMv7M"
91#  define ARM_MULTILIB_ARCH_V7M
92
93#else
94#  error "Unsupported CPU Model"
95
96#endif
97
98/* All ARM CPUs are assumed to not have floating point units */
99#if defined(__SOFTFP__)
100#define ARM_HAS_FPU     0
101#else
102#define ARM_HAS_FPU     1
103#warning "FPU-support not yet implemented for the arm"
104#endif
105
106
107/*
108 *  Define the name of the CPU family.
109 */
110
111#define CPU_NAME "ARM"
112
113/** @} */
114
115#ifdef __cplusplus
116}
117#endif
118
119#endif /* _RTEMS_SCORE_ARM_H */
Note: See TracBrowser for help on using the repository browser.