Update of /cvsroot/linux-vax/kernel-2.4/include/asm-vax
In directory usw-pr-cvs1:/tmp/cvs-serv31597
Added Files:
kdb.h kdbprivate.h
Log Message:
DA: kdb support
--- NEW FILE ---
/*
* Real include/asm/kdb.h for Vax.
*
* Minimalist Kernel Debugger
*
* Copyright (C) 1999 Silicon Graphics, Inc.
* Copyright (C) Scott Lurndal (sl...@en...)
* Copyright (C) Scott Foehner (sfo...@en...)
* Copyright (C) Srinivasa Thirumalachar (sp...@en...)
*
* See the file LIA-COPYRIGHT for additional information.
*
* Written March 1999 by Scott Lurndal at Silicon Graphics, Inc.
*
* Modifications from:
* Richard Bass 1999/07/20
* Many bug fixes and enhancements.
* Scott Foehner
* Port to ia64
* Scott Lurndal 1999/12/12
* v1.0 restructuring.
* David Airlie 2002
* VAX Porting Project
*/
#if !defined(_ASM_KDB_H)
#define _ASM_KDB_H
#define KDB_ENTER() asm("\tchms $0\n")
struct pt_regs;
typedef struct pt_regs *kdb_eframe_t;
typedef unsigned long kdb_machreg_t;
#define kdb_machreg_fmt "0x%lx"
#define kdb_machreg_fmt0 "0x%08lx"
#define kdb_bfd_vma_fmt "0x%lx"
#define kdb_bfd_vma_fmt0 "0x%08lx"
#define kdb_elfw_addr_fmt "0x%x"
#define kdb_elfw_addr_fmt0 "0x%08x"
#endif /* ASM_KDB_H */
--- NEW FILE ---
/*
* Minimalist Kernel Debugger
*
* Copyright (C) 1999 Silicon Graphics, Inc.
* Copyright (C) Scott Lurndal (sl...@en...)
* Copyright (C) Scott Foehner (sfo...@en...)
* Copyright (C) Srinivasa Thirumalachar (sp...@en...)
*
* See the file LIA-COPYRIGHT for additional information.
*
* Written March 1999 by Scott Lurndal at Silicon Graphics, Inc.
*
* Modifications from:
* Richard Bass 1999/07/20
* Many bug fixes and enhancements.
* Scott Foehner
* Port to ia64
* Scott Lurndal 1999/12/12
* v1.0 restructuring.
* Keith Owens 2000/05/23
* KDB v1.2
*/
#if !defined(_ASM_KDBPRIVATE_H)
#define _ASM_KDBPRIVATE_H
typedef unsigned char kdb_machinst_t;
/*
* KDB_MAXBPT describes the total number of breakpoints
* supported by this architecure.
*/
#define KDB_MAXBPT 16
/*
* KDB_MAXHARDBPT describes the total number of hardware
* breakpoint registers that exist.
*/
#define KDB_MAXHARDBPT 0
/*
* Provide space for KDB_MAX_COMMANDS commands.
*/
#define KDB_MAX_COMMANDS 125
/*
* Platform specific environment entries
*/
#define KDB_PLATFORM_ENV "IDMODE=vax", "BYTESPERWORD=4", "IDCOUNT=16"
/*
* Define the direction that the stack grows
*/
#define KDB_STACK_DIRECTION (-1) /* Stack grows down */
/*
* Support for ia32 debug registers
*/
typedef struct _kdbhard_bp {
kdb_machreg_t bph_reg; /* Register this breakpoint uses */
unsigned int bph_free:1; /* Register available for use */
unsigned int bph_data:1; /* Data Access breakpoint */
unsigned int bph_write:1; /* Write Data breakpoint */
unsigned int bph_mode:2; /* 0=inst, 1=write, 2=io, 3=read */
unsigned int bph_length:2; /* 0=1, 1=2, 2=BAD, 3=4 (bytes) */
} kdbhard_bp_t;
extern kdbhard_bp_t kdb_hardbreaks[/* KDB_MAXHARDBPT */];
#undef KDB_HAVE_LONGJMP
#ifdef KDB_HAVE_LONGJMP
/*
* Support for setjmp/longjmp
*/
#define JB_BX 0
#define JB_SI 1
#define JB_DI 2
#define JB_BP 3
#define JB_SP 4
#define JB_PC 5
typedef struct __kdb_jmp_buf {
unsigned long regs[6]; /* kdba_setjmp assumes fixed offsets here */
} kdb_jmp_buf;
extern int kdba_setjmp(kdb_jmp_buf *);
extern void kdba_longjmp(kdb_jmp_buf *, int);
extern kdb_jmp_buf kdbjmpbuf[];
#endif /* KDB_HAVE_LONGJMP */
#endif /* !_ASM_KDBPRIVATE_H */
|