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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [hal/] [common/] [v2_0/] [include/] [dbg-thread-syscall.h] - Blame information for rev 454

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

Line No. Rev Author Line
1 27 unneback
//========================================================================
2
//
3
//      dbg-thread-syscall.h
4
//
5
//      Supports thread-aware debugging
6
//
7
//========================================================================
8
//####ECOSGPLCOPYRIGHTBEGIN####
9
// -------------------------------------------
10
// This file is part of eCos, the Embedded Configurable Operating System.
11
// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
12
//
13
// eCos is free software; you can redistribute it and/or modify it under
14
// the terms of the GNU General Public License as published by the Free
15
// Software Foundation; either version 2 or (at your option) any later version.
16
//
17
// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
19
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20
// for more details.
21
//
22
// You should have received a copy of the GNU General Public License along
23
// with eCos; if not, write to the Free Software Foundation, Inc.,
24
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25
//
26
// As a special exception, if other files instantiate templates or use macros
27
// or inline functions from this file, or you compile this file and link it
28
// with other works to produce a work based on this file, this file does not
29
// by itself cause the resulting work to be covered by the GNU General Public
30
// License. However the source code for this file must still be made available
31
// in accordance with section (3) of the GNU General Public License.
32
//
33
// This exception does not invalidate any other reasons why a work based on
34
// this file might be covered by the GNU General Public License.
35
//
36
// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
37
// at http://sources.redhat.com/ecos/ecos-license/
38
// -------------------------------------------
39
//####ECOSGPLCOPYRIGHTEND####
40
//========================================================================
41
//#####DESCRIPTIONBEGIN####
42
//
43
// Author(s):     Red Hat, nickg
44
// Contributors:  Red Hat, nickg
45
// Date:          1998-08-25
46
// Purpose:       
47
// Description:   Supports thread-aware debugging
48
// Usage:         This header is not to be included by user code.
49
//                This file should be included only by
50
//                thread-syscall-relay.c and dbg-thread-demux.c
51
//
52
//####DESCRIPTIONEND####
53
//
54
//========================================================================
55
 
56
 
57
enum dbg_syscall_ids
58
  {
59
    dbg_null_func ,
60
    dbg_capabilities_func,
61
    dbg_currthread_func,
62
    dbg_threadlist_func,
63
    dbg_threadinfo_func,
64
    dbg_getthreadreg_func,
65
    dbg_setthreadreg_func,
66
    dbg_scheduler_func,
67
  } ;
68
 
69
 
70
union dbg_thread_syscall_parms
71
{
72
  struct
73
  {
74
    struct dbg_capabilities * abilities ;
75
  } cap_parms ;
76
 
77
  struct
78
  {
79
    threadref * ref ;
80
  } currthread_parms ;
81
 
82
  struct
83
  {
84
    int startflag ;
85
    threadref * lastid ;
86
    threadref * nextthreadid ;
87
  } threadlist_parms ;
88
 
89
  struct
90
  {
91
    threadref * ref ;
92
    struct cygmon_thread_debug_info * info ;
93
  } info_parms ;
94
 
95
  struct
96
  {
97
    threadref * thread ;
98
    int regcount ;
99
    void * registers ;
100
  } reg_parms ;
101
  struct
102
  {
103
    threadref * thread ;        /* 64-bit thread identifier */
104
    int lock;                   /* 0 == unlock, 1 == lock */
105
    int mode;                   /* 0 == short (step), 1 == continue */
106
  } scheduler_parms ;
107
} ;
108
 
109
 
110
typedef int (*dbg_syscall_func) (enum dbg_syscall_ids id,
111
                                 union dbg_thread_syscall_parms  * p ) ;

powered by: WebSVN 2.1.0

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