Module Name:    src
Committed By:   matt
Date:           Mon Feb 22 20:08:58 UTC 2010

Modified Files:
        src/sys/arch/mips/include [matt-nb5-mips64]: intr.h

Log Message:
Add initial list of IPIs for MIPS SMP.


To generate a diff of this commit:
cvs rdiff -u -r1.3.96.3 -r1.3.96.4 src/sys/arch/mips/include/intr.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/mips/include/intr.h
diff -u src/sys/arch/mips/include/intr.h:1.3.96.3 src/sys/arch/mips/include/intr.h:1.3.96.4
--- src/sys/arch/mips/include/intr.h:1.3.96.3	Tue Feb 16 08:13:57 2010
+++ src/sys/arch/mips/include/intr.h	Mon Feb 22 20:08:58 2010
@@ -1,4 +1,4 @@
-/* $NetBSD: intr.h,v 1.3.96.3 2010/02/16 08:13:57 matt Exp $ */
+/* $NetBSD: intr.h,v 1.3.96.4 2010/02/22 20:08:58 matt Exp $ */
 /*-
  * Copyright (c) 2009, 2010 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -37,22 +37,29 @@
 
 #define	IPL_NONE	0
 #define	IPL_SOFTCLOCK	(IPL_NONE+1)
-#define	IPL_SOFTBIO	(IPL_SOFTCLOCK)		/* shares SWINT with softclock */
+#define	IPL_SOFTBIO	(IPL_SOFTCLOCK)	/* shares SWINT with softclock */
 #define	IPL_SOFTNET	(IPL_SOFTBIO+1)
-#define	IPL_SOFTSERIAL	(IPL_SOFTNET)		/* shares SWINT with softnet */
+#define	IPL_SOFTSERIAL	(IPL_SOFTNET)	/* shares SWINT with softnet */
 #define	IPL_VM		(IPL_SOFTSERIAL+1)
 #define	IPL_SCHED	(IPL_VM+1)
 #define	IPL_HIGH	(IPL_SCHED)
 
 #define	_IPL_N		(IPL_HIGH+1)
 
-#define	IST_UNUSABLE	-1	/* interrupt cannot be used */
-#define	IST_NONE	0	/* none (dummy) */
-#define	IST_PULSE	1	/* pulsed */
-#define	IST_EDGE	2	/* edge-triggered */
-#define	IST_LEVEL	3	/* level-triggered */
-#define	IST_LEVEL_HIGH	4	/* level triggered, active high */
-#define	IST_LEVEL_LOW	5       /* level triggered, active low */
+#define	IST_UNUSABLE	-1		/* interrupt cannot be used */
+#define	IST_NONE	0		/* none (dummy) */
+#define	IST_PULSE	1		/* pulsed */
+#define	IST_EDGE	2		/* edge-triggered */
+#define	IST_LEVEL	3		/* level-triggered */
+#define	IST_LEVEL_HIGH	4		/* level triggered, active high */
+#define	IST_LEVEL_LOW	5		/* level triggered, active low */
+
+#define	IPI_NOP		__BIT(0)	/* do nothing, interrupt only */
+#define	IPI_SHOOTDOWN	__BIT(1)	/* do a tlb shootdown */
+#define	IPI_FPSYNC	__BIT(2)	/* save current fp registers */
+#define	IPI_FPDISCARD	__BIT(3)	/* discard current fp registers */
+#define	IPI_ISYNC	__BIT(4)	/* sync icache for pages */
+#define	IPI_KPREEMPT	__BIT(5)	/* schedule a kernel preemption */
 
 struct splsw {
 	int	(*splsw_splhigh)(void);

Reply via email to