Adds vmstat/iostat kernel support and more verbose device probe info
[unix-history] / usr / src / sys.386bsd / i386 / isa / icu.s
index 4d77346..0a96854 100644 (file)
  * SUCH DAMAGE.
  *
  *     @(#)icu.s       7.2 (Berkeley) 5/21/91
  * SUCH DAMAGE.
  *
  *     @(#)icu.s       7.2 (Berkeley) 5/21/91
+ *
+ * PATCHES MAGIC                LEVEL   PATCH THAT GOT US HERE
+ * --------------------         -----   ----------------------
+ * CURRENT PATCH LEVEL:         2       00117
+ * --------------------         -----   ----------------------
+ * 
+ * 28 Nov 92   Frank MacLachlan        Aligned addresses and data
+ *                                     on 32bit boundaries.
+ * 24 Mar 93   Rodney W. Grimes        Added interrupt counters for vmstat
+ *                                     also stray and false intr counters added
  */
 
 /*
  */
 
 /*
@@ -43,6 +53,7 @@
  */
 
        .data
  */
 
        .data
+       ALIGN32
        .globl  _imen
        .globl  _cpl
 _cpl:  .long   0xffff                  # current priority level (all off)
        .globl  _imen
        .globl  _cpl
 _cpl:  .long   0xffff                  # current priority level (all off)
@@ -56,12 +67,28 @@ _biomask:   .long   0
        .globl  _netmask
 _netmask:      .long   0
        .globl  _isa_intr
        .globl  _netmask
 _netmask:      .long   0
        .globl  _isa_intr
+       /*
+        * This is the names of the counters for vmstat added by
+        * rgrimes@agora.rain.com (Rodney W. Grimes) 10/30/1992
+        * Added false and stray counters 3/25/1993 rgrimes
+        */
+       .globl  _intrcnt, _eintrcnt     /* Added to make vmstat happy */
+       .globl  _isa_false7_intrcnt, _isa_false15_intrcnt, _isa_stray_intrcnt
+_intrcnt:                              /* Added to make vmstat happy */
+_isa_false7_intrcnt:
+               .space  4               /* false IRQ7's */
+_isa_false15_intrcnt:
+               .space  4               /* false IRQ15's */
+_isa_stray_intrcnt:
+               .space  4               /* stray interrupts */
 _isa_intr:     .space  16*4
 _isa_intr:     .space  16*4
+_eintrcnt:                             /* Added to make vmstat happy */
 
        .text
 /*
  * Handle return from interrupt after device handler finishes
  */
 
        .text
 /*
  * Handle return from interrupt after device handler finishes
  */
+       ALIGN32
 doreti:
        cli
        popl    %ebx                    # remove intr number
 doreti:
        cli
        popl    %ebx                    # remove intr number
@@ -89,6 +116,7 @@ doreti:
        addl    $8,%esp
        iret
 
        addl    $8,%esp
        iret
 
+       ALIGN32
 1:     cmpl    $0,_netisr              # check for softint s/traps
        jne     1f
        cmpl    $0,_want_resched
 1:     cmpl    $0,_netisr              # check for softint s/traps
        jne     1f
        cmpl    $0,_want_resched
@@ -102,6 +130,7 @@ doreti:
        
 #include "../net/netisr.h"
 
        
 #include "../net/netisr.h"
 
+       ALIGN32
 1:
 
 #define DONET(s, c)    ; \
 1:
 
 #define DONET(s, c)    ; \
@@ -171,6 +200,7 @@ doreti:
 
        .globl  _splhigh
        .globl  _splclock
 
        .globl  _splhigh
        .globl  _splclock
+       ALIGN32
 _splhigh:
 _splclock:
        cli                             # disable interrupts
 _splhigh:
 _splclock:
        cli                             # disable interrupts
@@ -190,6 +220,7 @@ _splclock:
        ret
 
        .globl  _spltty                 # block clists
        ret
 
        .globl  _spltty                 # block clists
+       ALIGN32
 _spltty:
        cli                             # disable interrupts
        NOP
 _spltty:
        cli                             # disable interrupts
        NOP
@@ -210,6 +241,7 @@ _spltty:
 
        .globl  _splimp
        .globl  _splnet
 
        .globl  _splimp
        .globl  _splnet
+       ALIGN32
 _splimp:
 _splnet:
        cli                             # disable interrupts
 _splimp:
 _splnet:
        cli                             # disable interrupts
@@ -230,6 +262,7 @@ _splnet:
        ret
 
        .globl  _splbio 
        ret
 
        .globl  _splbio 
+       ALIGN32
 _splbio:
        cli                             # disable interrupts
        NOP
 _splbio:
        cli                             # disable interrupts
        NOP
@@ -249,6 +282,7 @@ _splbio:
        ret
 
        .globl  _splsoftclock
        ret
 
        .globl  _splsoftclock
+       ALIGN32
 _splsoftclock:
        cli                             # disable interrupts
        NOP
 _splsoftclock:
        cli                             # disable interrupts
        NOP
@@ -269,6 +303,7 @@ _splsoftclock:
 
        .globl _splnone
        .globl _spl0
 
        .globl _splnone
        .globl _spl0
+       ALIGN32
 _splnone:
 _spl0:
        cli                             # disable interrupts
 _splnone:
 _spl0:
        cli                             # disable interrupts
@@ -307,6 +342,7 @@ _spl0:
        ret
 
        .globl _splx
        ret
 
        .globl _splx
+       ALIGN32
 _splx:
        cli                             # disable interrupts
        NOP
 _splx:
        cli                             # disable interrupts
        NOP