OSDN Git Service

Initial revision
[pf3gnuchains/pf3gnuchains4x.git] / utils / amd-udi / udi / udipt29k.h
1 /******************************************************************************
2  * Copyright 1991 Advanced Micro Devices, Inc.
3  *
4  * This software is the property of Advanced Micro Devices, Inc  (AMD)  which
5  * specifically  grants the user the right to modify, use and distribute this
6  * software provided this notice is not removed or altered.  All other rights
7  * are reserved by AMD.
8  *
9  * AMD MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS
10  * SOFTWARE.  IN NO EVENT SHALL AMD BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL
11  * DAMAGES IN CONNECTION WITH OR ARISING FROM THE FURNISHING, PERFORMANCE, OR
12  * USE OF THIS SOFTWARE.
13  *
14  * Comments about this software should be directed to udi@amd.com. If access
15  * to electronic mail isn't available, send mail to:
16  *
17  * Advanced Micro Devices, Inc.
18  * 29K Support Products
19  * Mail Stop 573
20  * 5900 E. Ben White Blvd.
21  * Austin, TX 78741
22  *****************************************************************************
23  *       $Id$
24  *       $Id: @(#)udipt29k.h    2.5, AMD
25  */
26
27 /* This file is to be used to reconfigure the UDI Procedural interface
28    for a given target. This file should be placed so that it will be
29    included from udiproc.h. Everything in here will probably need to
30    be changed when you change the target processor. Nothing in here
31    should need to change when you change hosts or compilers.
32 */
33
34 /* Select a target CPU Family */
35 #define TargetCPUFamily         Am29K
36
37 /* Enumerate the processor specific values for Space in a resource */
38 #define UDI29KDRAMSpace         0
39 #define UDI29KIOSpace           1
40 #define UDI29KCPSpace0          2
41 #define UDI29KCPSpace1          3
42 #define UDI29KIROMSpace         4
43 #define UDI29KIRAMSpace         5
44 #define UDI29KLocalRegs         8
45 #define UDI29KGlobalRegs        9
46 #define UDI29KRealRegs          10
47 #define UDI29KSpecialRegs       11
48 #define UDI29KTLBRegs           12      /* Not Am29005 */
49 #define UDI29KACCRegs           13      /* Am29050 only */
50 #define UDI29KICacheSpace       14      /* Am2903x only */
51 #define UDI29KAm29027Regs       15      /* When available */
52 #define UDI29KPC                16
53 #define UDI29KDCacheSpace       17      /* When available */
54
55 /* Enumerate the Co-processor registers */
56 #define UDI29KCP_F              0
57 #define UDI29KCP_Flag           8
58 #define UDI29KCP_I              12
59 #define UDI29KCP_ITmp           16
60 #define UDI29KCP_R              20
61 #define UDI29KCP_S              28
62 #define UDI29KCP_RTmp           36
63 #define UDI29KCP_STmp           44
64 #define UDI29KCP_Stat           52
65 #define UDI29KCP_Prec           56
66 #define UDI29KCP_Reg0           60
67 #define UDI29KCP_Reg1           68
68 #define UDI29KCP_Reg2           76
69 #define UDI29KCP_Reg3           84
70 #define UDI29KCP_Reg4           92
71 #define UDI29KCP_Reg5           100
72 #define UDI29KCP_Reg6           108
73 #define UDI29KCP_Reg7           116
74 #define UDI29KCP_Mode           124
75
76 /* Enumerate the stacks in StackSizes array */
77 #define UDI29KMemoryStack       0
78 #define UDI29KRegisterStack     1
79
80 /* Enumerate the chips for ChipVersions array */
81 #define UDI29K29KVersion        0
82 #define UDI29K29027Version      1
83
84 /* Define special value for elements of ChipVersions array for
85  * chips not present */
86 #define UDI29KChipNotPresent    -1
87
88 typedef UDIInt32                UDICount;
89 typedef UDIUInt32               UDISize;
90
91 typedef UDIInt                  CPUSpace;
92 typedef UDIUInt32               CPUOffset;
93 typedef UDIUInt32               CPUSizeT;