root/kernel/blk_drv/scsi/seagate2.s

/* [previous][next][first][last][top][bottom][index][help] */
   1 /*
   2  *      seagate2.S
   3  *      low level scsi driver for ST01/ST02 by
   4  *              Drew Eckhardt 
   5  *
   6  *      <drew@colorado.edu>
   7  */
   8 .text
   9 .globl _seagate_intr
  10 _seagate_intr:
  11         cld                     # GCC thing
  12 
  13         pushal 
  14         push %ds
  15         push %es
  16         
  17         mov $0x10, %ax          # switch to kernel space
  18         mov %ax, %ds
  19         mov %ax, %es
  20         
  21 
  22 
  23         xor %eax, %eax 
  24         xchg _do_seagate, %eax
  25         test %eax, %eax
  26         jnz 1f
  27         mov $_seagate_unexpected_intr, %eax     
  28 1:      call *%eax
  29 
  30         mov $0x20, %al          # non-specific EOI
  31         out %al, $0x20
  32 
  33         pop %es
  34         pop %ds
  35         popal
  36         iret

/* [previous][next][first][last][top][bottom][index][help] */