source: rtems/cpukit/score/cpu/arm/rtems/score/arm.h @ 78623bce

4.104.11
Last change on this file since 78623bce was 78623bce, checked in by Thomas Doerfler <Thomas.Doerfler@…>, on Apr 8, 2010 at 10:13:46 AM

add/adapt documentation

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