Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/netbsd-2-0]: src/sys/arch/powerpc/marvell Pullup rev 1.7 (requested by m...



details:   https://anonhg.NetBSD.org/src/rev/d116750e7224
branches:  netbsd-2-0
changeset: 561271:d116750e7224
user:      jmc <jmc%NetBSD.org@localhost>
date:      Fri Jun 04 03:40:03 2004 +0000

description:
Pullup rev 1.7 (requested by matt in ticket #436)

Fix softnet intr handling (to be like the generic ppc softintr).

diffstat:

 sys/arch/powerpc/marvell/marvell_intr.h |  18 +++++-------------
 1 files changed, 5 insertions(+), 13 deletions(-)

diffs (39 lines):

diff -r 47717cc8f207 -r d116750e7224 sys/arch/powerpc/marvell/marvell_intr.h
--- a/sys/arch/powerpc/marvell/marvell_intr.h   Fri Jun 04 03:38:45 2004 +0000
+++ b/sys/arch/powerpc/marvell/marvell_intr.h   Fri Jun 04 03:40:03 2004 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: marvell_intr.h,v 1.6 2003/09/03 21:33:36 matt Exp $    */
+/*     $NetBSD: marvell_intr.h,v 1.6.2.1 2004/06/04 03:40:03 jmc Exp $ */
 
 /*-
  * Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -476,6 +476,10 @@
 #define        splsoftnet()            splraise(IPL_SOFTNET)
 #define        splsoftserial()         splraise(IPL_SOFTSERIAL)
 
+struct intrhand;
+extern struct intrhand *softnet_handlers[];
+#define        schednetisr(an_isr)     softintr_schedule(softnet_handlers[(an_isr)])
+
 #define __HAVE_GENERIC_SOFT_INTERRUPTS /* should be in <machine/types.h> */
 void *softintr_establish(int level, void (*fun)(void *), void *arg);
 void softintr_disestablish(void *cookie);
@@ -512,18 +516,6 @@
 #endif
 void   strayintr(int);
 
-#define        schednetisr(isr)  do {                  \
-       __asm __volatile(                       \
-               "1:     lwarx   0,0,%1\n"       \
-               "       or      0,0,%0\n"       \
-               "       stwcx.  0,0,%1\n"       \
-               "       bne-    1b"             \
-          :                                    \
-          : "r"(1 << (isr)), "b"(&netisr)      \
-          : "cr0", "r0");                      \
-       softintr_schedule(softnet_si);          \
-} while (/*CONSTCOND*/ 0)
-
 /*
  * defines for indexing intrcnt
  */



Home | Main Index | Thread Index | Old Index