|
|
1.1 root 1: /*
2: * seagate2.S
3: * low level scsi driver for ST01/ST02 by
4: * Drew Eckhardt
5: *
6: * <[email protected]>
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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.