xref: /freebsd-src/sys/amd64/include/intr_machdep.h (revision 95ee2897e98f5d444f26ed2334cc7c439f9c16c6)
1ecee5704SJohn Baldwin /*-
2*4d846d26SWarner Losh  * SPDX-License-Identifier: BSD-2-Clause
3c49761ddSPedro F. Giffuni  *
4ecee5704SJohn Baldwin  * Copyright (c) 2003 John Baldwin <jhb@FreeBSD.org>
5ecee5704SJohn Baldwin  *
6ecee5704SJohn Baldwin  * Redistribution and use in source and binary forms, with or without
7ecee5704SJohn Baldwin  * modification, are permitted provided that the following conditions
8ecee5704SJohn Baldwin  * are met:
9ecee5704SJohn Baldwin  * 1. Redistributions of source code must retain the above copyright
10ecee5704SJohn Baldwin  *    notice, this list of conditions and the following disclaimer.
11ecee5704SJohn Baldwin  * 2. Redistributions in binary form must reproduce the above copyright
12ecee5704SJohn Baldwin  *    notice, this list of conditions and the following disclaimer in the
13ecee5704SJohn Baldwin  *    documentation and/or other materials provided with the distribution.
14ecee5704SJohn Baldwin  *
15ecee5704SJohn Baldwin  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16ecee5704SJohn Baldwin  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17ecee5704SJohn Baldwin  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18ecee5704SJohn Baldwin  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19ecee5704SJohn Baldwin  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20ecee5704SJohn Baldwin  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21ecee5704SJohn Baldwin  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22ecee5704SJohn Baldwin  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23ecee5704SJohn Baldwin  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24ecee5704SJohn Baldwin  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25ecee5704SJohn Baldwin  * SUCH DAMAGE.
26ecee5704SJohn Baldwin  */
27ecee5704SJohn Baldwin 
28ecee5704SJohn Baldwin #ifndef __MACHINE_INTR_MACHDEP_H__
29ecee5704SJohn Baldwin #define	__MACHINE_INTR_MACHDEP_H__
30ecee5704SJohn Baldwin 
31a800b45cSJohn Baldwin #include <x86/intr_machdep.h>
32ecee5704SJohn Baldwin 
33bb471e33SJoseph Koshy /*
34bb471e33SJoseph Koshy  * The following data structure holds per-cpu data, and is placed just
3568fd3b0eSJohn Baldwin  * above the top of the space used for the NMI and MC# stacks.
36bb471e33SJoseph Koshy  */
37bb471e33SJoseph Koshy struct nmi_pcpu {
38bb471e33SJoseph Koshy 	register_t	np_pcpu;
39bb471e33SJoseph Koshy 	register_t	__padding;	/* pad to 16 bytes */
40bb471e33SJoseph Koshy };
41bb471e33SJoseph Koshy 
42cff16988SMark Johnston #define	DBLFAULT_STACK_SIZE	PAGE_SIZE
43cff16988SMark Johnston #define	NMI_STACK_SIZE		PAGE_SIZE
44cff16988SMark Johnston #define	MCE_STACK_SIZE		PAGE_SIZE
45cff16988SMark Johnston #define	DBG_STACK_SIZE		PAGE_SIZE
46cff16988SMark Johnston 
47ecee5704SJohn Baldwin #endif	/* !__MACHINE_INTR_MACHDEP_H__ */
48