OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [gdb-5.0/] [gdb/] [29k-share/] [udi/] [udiproc.h] - Blame information for rev 1774

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 106 markom
/* local type decs. and macro defs.
2
 
3
   Copyright 1993 Free Software Foundation, Inc.
4
 
5
   This file is part of GDB.
6
 
7
   This program is free software; you can redistribute it and/or modify
8
   it under the terms of the GNU General Public License as published by
9
   the Free Software Foundation; either version 2 of the License, or
10
   (at your option) any later version.
11
 
12
   This program is distributed in the hope that it will be useful,
13
   but WITHOUT ANY WARRANTY; without even the implied warranty of
14
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15
   GNU General Public License for more details.
16
 
17
   You should have received a copy of the GNU General Public License
18
   along with this program; if not, write to the Free Software
19
   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
20
 
21
#include "udiphcfg.h"   /* Get host specific configuration */
22
#include "udiptcfg.h"   /* Get target specific configuration */
23
 
24
/* Here are all of the CPU Families for which UDI is currently defined */
25
#define Am29K           1       /* AMD's Am290xx and Am292xx parts */
26
 
27
typedef UDIInt          UDIError;
28
typedef UDIInt          UDISessionId;
29
typedef UDIInt          UDIPId;
30
typedef UDIInt          UDIStepType;
31
typedef UDIInt          UDIBreakType;
32
typedef UDIUInt         UDIBreakId;
33
typedef UDIUInt         UDIMode;
34
 
35
typedef UDIStruct
36
{
37
    CPUSpace    Space;
38
    CPUOffset   Offset;
39
} UDIResource;
40
 
41
typedef UDIStruct
42
{
43
    CPUOffset   Low;
44
    CPUOffset   High;
45
} UDIRange;
46
 
47
typedef UDIStruct
48
{
49
    CPUSpace    Space;
50
    CPUOffset   Offset;
51
    CPUSizeT    Size;
52
    } UDIMemoryRange;
53
 
54
/* Values for UDIStepType parameters */
55
#define UDIStepNatural          0x0000
56
#define UDIStepOverTraps        0x0001
57
#define UDIStepOverCalls        0x0002
58
#define UDIStepInRange          0x0004
59
#define UDIStepNatural          0x0000
60
 
61
/* Values for UDIBreakType parameters */
62
#define UDIBreakFlagExecute     0x0001
63
#define UDIBreakFlagRead        0x0002
64
#define UDIBreakFlagWrite       0x0004
65
#define UDIBreakFlagFetch       0x0008
66
 
67
/* Special values for UDIWait MaxTime parameter */
68
#define UDIWaitForever  (UDIInt32) -1   /* Infinite time delay */
69
 
70
/* Special values for PId */
71
#define UDIProcessProcessor     -1      /* Raw Hardware, if possible */
72
 
73
/* Values for UDIWait StopReason */
74
#define UDIGrossState           0xff
75
#define UDITrapped              0        /* Fine state - which trap */
76
#define UDINotExecuting         1
77
#define UDIRunning              2
78
#define UDIStopped              3
79
#define UDIWarned               4
80
#define UDIStepped              5
81
#define UDIWaiting              6
82
#define UDIHalted               7
83
#define UDIStdoutReady          8       /* fine state - size */
84
#define UDIStderrReady          9       /* fine state - size */
85
#define UDIStdinNeeded          10      /* fine state - size */
86
#define UDIStdinModeX           11      /* fine state - mode */
87
#define UDIBreak                12      /* Fine state - Breakpoint Id */
88
#define UDIExited               13      /* Fine state - exit code */
89
 
90
/* Enumerate the return values from the callback function
91
   for UDIEnumerateTIPs.
92
*/
93
#define UDITerminateEnumeration 0
94
#define UDIContinueEnumeration  1
95
 
96
/* Enumerate values for Terminate parameter to UDIDisconnect */
97
#define UDITerminateSession     1
98
#define UDIContinueSession      0
99
 
100
/* Error codes */
101
#define UDINoError                      0        /* No error occured */
102
#define UDIErrorNoSuchConfiguration     1
103
#define UDIErrorCantHappen              2
104
#define UDIErrorCantConnect             3
105
#define UDIErrorNoSuchConnection        4
106
#define UDIErrorNoConnection            5
107
#define UDIErrorCantOpenConfigFile      6
108
#define UDIErrorCantStartTIP            7
109
#define UDIErrorConnectionUnavailable   8
110
#define UDIErrorTryAnotherTIP           9
111
#define UDIErrorExecutableNotTIP        10
112
#define UDIErrorInvalidTIPOption        11
113
#define UDIErrorCantDisconnect          12
114
#define UDIErrorUnknownError            13
115
#define UDIErrorCantCreateProcess       14
116
#define UDIErrorNoSuchProcess           15
117
#define UDIErrorUnknownResourceSpace    16
118
#define UDIErrorInvalidResource         17
119
#define UDIErrorUnsupportedStepType     18
120
#define UDIErrorCantSetBreakpoint       19
121
#define UDIErrorTooManyBreakpoints      20
122
#define UDIErrorInvalidBreakId          21
123
#define UDIErrorNoMoreBreakIds          22
124
#define UDIErrorUnsupportedService      23
125
#define UDIErrorTryAgain                24
126
#define UDIErrorIPCLimitation           25
127
#define UDIErrorIncomplete              26
128
#define UDIErrorAborted                 27
129
#define UDIErrorTransDone               28
130
#define UDIErrorCantAccept              29
131
#define UDIErrorTransInputNeeded        30
132
#define UDIErrorTransModeX              31
133
#define UDIErrorInvalidSize             32
134
#define UDIErrorBadConfigFileEntry      33
135
#define UDIErrorIPCInternal             34
136
/* TBD */
137
 
138
/****************************************************************** PROCEDURES
139
*/
140
 
141
UDIError UDIConnect UDIParams((
142
  char          *Configuration,         /* In */
143
  UDISessionId  *Session                /* Out */
144
  ));
145
 
146
UDIError UDIDisconnect UDIParams((
147
  UDISessionId  Session,                /* In */
148
  UDIBool       Terminate               /* In */
149
  ));
150
 
151
UDIError UDISetCurrentConnection UDIParams((
152
  UDISessionId  Session                 /* In */
153
  ));
154
 
155
UDIError UDICapabilities UDIParams((
156
  UDIUInt32     *TIPId,                 /* Out */
157
  UDIUInt32     *TargetId,              /* Out */
158
  UDIUInt32     DFEId,                  /* In */
159
  UDIUInt32     DFE,                    /* In */
160
  UDIUInt32     *TIP,                   /* Out */
161
  UDIUInt32     *DFEIPCId,              /* Out */
162
  UDIUInt32     *TIPIPCId,              /* Out */
163
  char          *TIPString              /* Out */
164
  ));
165
 
166
UDIError UDIEnumerateTIPs UDIParams((
167
  UDIInt        (*UDIETCallback)        /* In */
168
    UDIParams(( char *Configuration ))  /* In to callback() */
169
  ));
170
 
171
UDIError UDIGetErrorMsg UDIParams((
172
  UDIError      ErrorCode,              /* In */
173
  UDISizeT      MsgSize,                /* In */
174
  char          *Msg,                   /* Out */
175
  UDISizeT      *CountDone              /* Out */
176
  ));
177
 
178
UDIError UDIGetTargetConfig UDIParams((
179
  UDIMemoryRange KnownMemory[],         /* Out */
180
  UDIInt        *NumberOfRanges,        /* In/Out */
181
  UDIUInt32     ChipVersions[],         /* Out */
182
  UDIInt        *NumberOfChips          /* In/Out */
183
  ));
184
 
185
UDIError UDICreateProcess UDIParams((
186
  UDIPId        *PId                    /* Out */
187
  ));
188
 
189
UDIError UDISetCurrentProcess UDIParams((
190
  UDIPId        PId                     /* In */
191
  ));
192
 
193
UDIError UDIDestroyProcess UDIParams((
194
  UDIPId        PId                     /* In */
195
  ));
196
 
197
UDIError UDIInitializeProcess UDIParams((
198
  UDIMemoryRange ProcessMemory[],       /* In */
199
  UDIInt        NumberOfRanges,         /* In */
200
  UDIResource   EntryPoint,             /* In */
201
  CPUSizeT      StackSizes[],           /* In */
202
  UDIInt        NumberOfStacks,         /* In */
203
  char          *ArgString              /* In */
204
  ));
205
 
206
UDIError UDIRead UDIParams((
207
  UDIResource   From,                   /* In */
208
  UDIHostMemPtr To,                     /* Out */
209
  UDICount      Count,                  /* In */
210
  UDISizeT      Size,                   /* In */
211
  UDICount      *CountDone,             /* Out */
212
  UDIBool       HostEndian              /* In */
213
  ));
214
 
215
UDIError UDIWrite UDIParams((
216
  UDIHostMemPtr From,                   /* In */
217
  UDIResource   To,                     /* In */
218
  UDICount      Count,                  /* In */
219
  UDISizeT      Size,                   /* In */
220
  UDICount      *CountDone,             /* Out */
221
  UDIBool       HostEndian              /* In */
222
  ));
223
 
224
UDIError UDICopy UDIParams((
225
  UDIResource   From,                   /* In */
226
  UDIResource   To,                     /* In */
227
  UDICount      Count,                  /* In */
228
  UDISizeT      Size,                   /* In */
229
  UDICount      *CountDone,             /* Out */
230
  UDIBool       Direction               /* In */
231
  ));
232
 
233
UDIError UDIExecute UDIParams((
234
  void
235
  ));
236
 
237
UDIError UDIStep UDIParams((
238
  UDIUInt32     Steps,                  /* In */
239
  UDIStepType   StepType,               /* In */
240
  UDIRange      Range                   /* In */
241
  ));
242
 
243
UDIVoid UDIStop UDIParams((
244
  void
245
  ));
246
 
247
UDIError UDIWait UDIParams((
248
  UDIInt32      MaxTime,                /* In */
249
  UDIPId        *PId,                   /* Out */
250
  UDIUInt32     *StopReason             /* Out */
251
  ));
252
 
253
UDIError UDISetBreakpoint UDIParams((
254
  UDIResource   Addr,                   /* In */
255
  UDIInt32      PassCount,              /* In */
256
  UDIBreakType  Type,                   /* In */
257
  UDIBreakId    *BreakId                /* Out */
258
  ));
259
 
260
UDIError UDIQueryBreakpoint UDIParams((
261
  UDIBreakId    BreakId,                /* In */
262
  UDIResource   *Addr,                  /* Out */
263
  UDIInt32      *PassCount,             /* Out */
264
  UDIBreakType  *Type,                  /* Out */
265
  UDIInt32      *CurrentCount           /* Out */
266
  ));
267
 
268
UDIError UDIClearBreakpoint UDIParams((
269
  UDIBreakId    BreakId                 /* In */
270
  ));
271
 
272
UDIError UDIGetStdout UDIParams((
273
  UDIHostMemPtr Buf,                    /* Out */
274
  UDISizeT      BufSize,                /* In */
275
  UDISizeT      *CountDone              /* Out */
276
  ));
277
 
278
UDIError UDIGetStderr UDIParams((
279
  UDIHostMemPtr Buf,                    /* Out */
280
  UDISizeT      BufSize,                /* In */
281
  UDISizeT      *CountDone              /* Out */
282
  ));
283
 
284
UDIError UDIPutStdin UDIParams((
285
  UDIHostMemPtr Buf,                    /* In */
286
  UDISizeT      Count,                  /* In */
287
  UDISizeT      *CountDone              /* Out */
288
  ));
289
 
290
UDIError UDIStdinMode UDIParams((
291
  UDIMode       *Mode                   /* Out */
292
  ));
293
 
294
UDIError UDIPutTrans UDIParams((
295
  UDIHostMemPtr Buf,                    /* In */
296
  UDISizeT      Count,                  /* In */
297
  UDISizeT      *CountDone              /* Out */
298
  ));
299
 
300
UDIError UDIGetTrans UDIParams((
301
  UDIHostMemPtr Buf,                    /* Out */
302
  UDISizeT      BufSize,                /* In */
303
  UDISizeT      *CountDone              /* Out */
304
  ));
305
 
306
UDIError UDITransMode UDIParams((
307
  UDIMode       *Mode                   /* Out */
308
  ));

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.