xref: /minix3/sys/arch/i386/include/kcore.h (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc /*	$NetBSD: kcore.h,v 1.5 2010/10/05 23:48:16 jym Exp $	*/
2*0a6a1f1dSLionel Sambuc 
3*0a6a1f1dSLionel Sambuc /*
4*0a6a1f1dSLionel Sambuc  * Copyright (c) 1996 Carnegie-Mellon University.
5*0a6a1f1dSLionel Sambuc  * All rights reserved.
6*0a6a1f1dSLionel Sambuc  *
7*0a6a1f1dSLionel Sambuc  * Author: Chris G. Demetriou
8*0a6a1f1dSLionel Sambuc  *
9*0a6a1f1dSLionel Sambuc  * Permission to use, copy, modify and distribute this software and
10*0a6a1f1dSLionel Sambuc  * its documentation is hereby granted, provided that both the copyright
11*0a6a1f1dSLionel Sambuc  * notice and this permission notice appear in all copies of the
12*0a6a1f1dSLionel Sambuc  * software, derivative works or modified versions, and any portions
13*0a6a1f1dSLionel Sambuc  * thereof, and that both notices appear in supporting documentation.
14*0a6a1f1dSLionel Sambuc  *
15*0a6a1f1dSLionel Sambuc  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
16*0a6a1f1dSLionel Sambuc  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND
17*0a6a1f1dSLionel Sambuc  * FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
18*0a6a1f1dSLionel Sambuc  *
19*0a6a1f1dSLionel Sambuc  * Carnegie Mellon requests users of this software to return to
20*0a6a1f1dSLionel Sambuc  *
21*0a6a1f1dSLionel Sambuc  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
22*0a6a1f1dSLionel Sambuc  *  School of Computer Science
23*0a6a1f1dSLionel Sambuc  *  Carnegie Mellon University
24*0a6a1f1dSLionel Sambuc  *  Pittsburgh PA 15213-3890
25*0a6a1f1dSLionel Sambuc  *
26*0a6a1f1dSLionel Sambuc  * any improvements or extensions that they make and grant Carnegie the
27*0a6a1f1dSLionel Sambuc  * rights to redistribute these changes.
28*0a6a1f1dSLionel Sambuc  */
29*0a6a1f1dSLionel Sambuc 
30*0a6a1f1dSLionel Sambuc /*
31*0a6a1f1dSLionel Sambuc  * Modified for NetBSD/i386 by Jason R. Thorpe, Numerical Aerospace
32*0a6a1f1dSLionel Sambuc  * Simulation Facility, NASA Ames Research Center.
33*0a6a1f1dSLionel Sambuc  */
34*0a6a1f1dSLionel Sambuc 
35*0a6a1f1dSLionel Sambuc #ifndef _I386_KCORE_H_
36*0a6a1f1dSLionel Sambuc #define _I386_KCORE_H_
37*0a6a1f1dSLionel Sambuc 
38*0a6a1f1dSLionel Sambuc typedef struct cpu_kcore_hdr {
39*0a6a1f1dSLionel Sambuc 	uint32_t	pdppaddr;		/* PA of PDP */
40*0a6a1f1dSLionel Sambuc 	uint32_t	nmemsegs;		/* Number of RAM segments */
41*0a6a1f1dSLionel Sambuc #if 0
42*0a6a1f1dSLionel Sambuc 	phys_ram_seg_t  memsegs[];		/* RAM segments */
43*0a6a1f1dSLionel Sambuc #endif
44*0a6a1f1dSLionel Sambuc } cpu_kcore_hdr_t;
45*0a6a1f1dSLionel Sambuc 
46*0a6a1f1dSLionel Sambuc /*
47*0a6a1f1dSLionel Sambuc  * Used to indicate that PAE should be used for virtual address
48*0a6a1f1dSLionel Sambuc  * translation. As PDPpaddr is expected to be PAGE_SIZE aligned,
49*0a6a1f1dSLionel Sambuc  * this can be safely OR'ed in pdppaddr.
50*0a6a1f1dSLionel Sambuc  * To avoid any kind of conflict with existing MMU bits, we chose one
51*0a6a1f1dSLionel Sambuc  * ignored by hardware
52*0a6a1f1dSLionel Sambuc  */
53*0a6a1f1dSLionel Sambuc #define I386_KCORE_PAE	PG_AVAIL1
54*0a6a1f1dSLionel Sambuc 
55*0a6a1f1dSLionel Sambuc #ifdef _KERNEL
56*0a6a1f1dSLionel Sambuc void	dumpsys(void);
57*0a6a1f1dSLionel Sambuc 
58*0a6a1f1dSLionel Sambuc extern struct pcb dumppcb;
59*0a6a1f1dSLionel Sambuc extern int	sparse_dump;
60*0a6a1f1dSLionel Sambuc #endif
61*0a6a1f1dSLionel Sambuc 
62*0a6a1f1dSLionel Sambuc #endif /* _I386_KCORE_H_ */
63