From: Dave A. <ai...@us...> - 2002-04-28 19:43:46
|
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 */ |