source: rtems/cpukit/score/cpu/arm/rtems/score/arm.h @ 7f70d1b7

4.104.114.84.95
Last change on this file since 7f70d1b7 was 7f70d1b7, checked in by Ralf Corsepius <ralf.corsepius@…>, on 01/28/05 at 15:56:09

New header guard.

  • Property mode set to 100644
File size: 1.7 KB
Line 
1/**
2 * @file rtems/score/arm.h
3 */
4
5/* 
6 *  $Id$
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 *  This file contains the information required to build
29 *  RTEMS for a particular member of the "arm"
30 *  family when executing in protected mode.  It does
31 *  this by setting variables to indicate which implementation
32 *  dependent features are present in a particular member
33 *  of the family.
34 */
35#if defined(__ARM_ARCH_4__)
36#  define CPU_MODEL_NAME  "ARMv4"
37#  define ARM_HAS_CLZ     0
38
39#elif defined(__ARM_ARCH_4T__)
40#  define CPU_MODEL_NAME  "ARMv4T"
41#  define ARM_HAS_CLZ     0
42
43#elif defined(__ARM_ARCH_5__)
44#  define CPU_MODEL_NAME  "ARMv5"
45#  define ARM_HAS_CLZ     1
46
47#elif defined(__ARM_ARCH_5T__)
48#  define CPU_MODEL_NAME  "ARMv5T"
49#  define ARM_HAS_CLZ     1
50
51#elif defined(__ARM_ARCH_5E__)
52#  define CPU_MODEL_NAME  "ARMv5E"
53#  define ARM_HAS_CLZ     1
54
55#elif defined(__ARM_ARCH_5TE__)
56#  define CPU_MODEL_NAME  "ARMv5TE"
57#  define ARM_HAS_CLZ     1
58
59#else
60#  error "Unsupported CPU Model"
61
62#endif
63
64/* All ARM CPUs are assumed to not have floating point units */
65#if defined(__SOFTFP__)
66#define ARM_HAS_FPU     0
67#else
68#define ARM_HAS_FPU     1
69# error "FPU-support not yet implemented for the arm"
70#endif
71
72
73/*
74 *  Define the name of the CPU family.
75 */
76
77#define CPU_NAME "ARM"
78
79#ifdef __cplusplus
80}
81#endif
82
83#endif /* ! _INCLUDE_ARM_h */
Note: See TracBrowser for help on using the repository browser.