mycroft
867ebf1d84
Clear the controller active flag after a timeout.
1994-11-30 02:32:03 +00:00
mycroft
5584ff927f
Don't stall the queue on CHECK SENSE if we get a reselect while selecting.
1994-11-30 02:08:01 +00:00
mycroft
639a64de08
Fix a null pointer reference.
1994-11-29 21:35:13 +00:00
mycroft
51bed8d804
Add an assertion mechanism to check for more abnormal conditions.
1994-11-29 21:29:56 +00:00
mycroft
58cb5339d6
For consistency...
1994-11-29 20:57:28 +00:00
mycroft
41b26a6dfd
Handle BUS FREE phase a little differently, to get better error detection. Other
...
cleanup.
1994-11-29 20:08:27 +00:00
mycroft
bb90feebac
Disable debugging breakpoints by default.
1994-11-29 17:56:49 +00:00
mycroft
5ac2484d95
* Redo most of the message and phase state machines. Multiple pending
...
message outs should now work correctly (including retransmissions).
Multiple messages ins should be more efficient. Missing REQ after
reselection phase should now (correctly) cause a wait with ENREQINIT
set.
* Abstract out the reselection out sequence, and use it directly to
get sense info. (This is somewhat faster than the generic done/sched
sequence.)
* If there are no ACBs available, wait interruptibly for one.
* Leave the interrupt registers alone during message in/out; just
watch for phase change. Don't (incorrectly) reenable interrupts
during data in/out; defer that to aicintr().
* Handle command pointer per SCSI 2 spec.
* Other minor coding improvements.
1994-11-29 17:50:39 +00:00
christos
6a2c060851
fix unary plus typo :-)
1994-11-25 23:19:03 +00:00
mycroft
cba32aa25f
Minor update for new autoconfig.
1994-11-25 08:17:21 +00:00
mycroft
0649f37219
Officially credit Onno.
1994-11-23 22:00:08 +00:00
mycroft
8bacafc13c
Clean up deleted files.
1994-11-23 09:10:13 +00:00
mycroft
2058abab15
Forgot to commit this as part of the LBA changes.
1994-11-23 07:56:52 +00:00
mycroft
cc44b4600c
There's no point in bothering to unlock what we didn't lock.
1994-11-23 07:54:15 +00:00
mycroft
6dda55519e
Fix an outdated comment.
1994-11-23 03:11:01 +00:00
mycroft
a3fc466734
Use logical block addressing if available. Be a little more careful about
...
maintaining timeouts. Clean up wddump() a bit.
1994-11-23 01:35:43 +00:00
mycroft
525fc36e19
Implement 32-bit reads and writes, but for now assume 16-bit mode.
1994-11-22 10:20:16 +00:00
mycroft
3a99ddf172
Add a missing newline in some error messages.
1994-11-22 09:36:56 +00:00
mycroft
db3bde9525
Implement EIDE multi-sector PIO and DMA modes, based on code from Onno van
...
der Linden. Also, various structural cleanup, and fix two bogons that crept
in, and remove all of the old clustering nonsense.
1994-11-22 09:33:59 +00:00
mycroft
1e01855683
Minor fix to debugging code.
1994-11-22 05:50:48 +00:00
mycroft
85826f0fbe
Fudge a couple more fields for ancient disks.
1994-11-22 05:39:16 +00:00
mycroft
e1a7bac628
Change some constant names, etc., to better match the ATA spec.
1994-11-22 05:34:49 +00:00
mycroft
95edd299b0
Add still more locking.
1994-11-22 03:23:49 +00:00
mycroft
dcb90851c2
Minor change.
1994-11-22 01:21:11 +00:00
mycroft
5bd4115690
Add some missing locking, and some general cleanup.
1994-11-20 22:36:43 +00:00
mycroft
d2d4dc4654
Use immediate constants for port numbers < 0x100.
1994-11-20 21:36:44 +00:00
christos
f63115591a
Included <sys/cdefs.h> since this file is now using __signed.
...
It broke non gnu compilers.
1994-11-20 18:50:18 +00:00
mycroft
9a3840f2f0
Stylistic changes.
1994-11-18 22:25:12 +00:00
mycroft
79a1309e3c
Remove Xwild; it's no longer used.
1994-11-18 22:22:40 +00:00
mycroft
e075f8c13d
Convert port, IRQ, and DRQ numbers to ints.
1994-11-18 22:18:35 +00:00
mycroft
61800cfa25
Convert port, IRQ, and DRQ numbers to ints.
1994-11-18 22:07:32 +00:00
mycroft
35cdd801e6
Convert port, IRQ, and DRQ numbers to ints.
1994-11-18 21:57:40 +00:00
christos
fc8e694056
Fixed error svr4 error code mapping; my old attempt was a noop.
1994-11-16 20:14:42 +00:00
mycroft
a2727ec558
Check IRQ 9, not IRQ 2.
1994-11-15 00:00:24 +00:00
mycroft
b341f7a8c0
Map IRQ 2 to IRQ 9.
1994-11-14 23:58:56 +00:00
mycroft
e91e570cfd
Shorten the Cyrix handling code a little.
1994-11-14 23:35:48 +00:00
mycroft
423bfa0764
Garbage collect unused variable.
1994-11-14 08:53:06 +00:00
christos
a96cb110a3
Added new svr4 files
1994-11-14 05:54:30 +00:00
christos
55845b1901
changed open prototype in conf.c; added bsd->svr4 errno mapping in trap.c
1994-11-14 05:53:48 +00:00
mycroft
1c5ac2e88c
pcb.h requires segments.h now.
1994-11-08 23:09:21 +00:00
mycroft
f875a9efe6
Allocate pv_pages differently.
1994-11-08 01:17:19 +00:00
mycroft
d254e95680
Garbage collect some variables which are no longer used.
1994-11-07 10:19:28 +00:00
mycroft
21e911d911
Update for new autoconfig.
1994-11-07 09:03:48 +00:00
mycroft
cfae52f542
It's legitimate, if foolish, to mask SIGCONT.
1994-11-07 05:57:28 +00:00
mycroft
297c06de67
Comment previous change.
1994-11-07 05:32:50 +00:00
mycroft
86a2079aef
When restarting syscalls, make sure we adjust the PC by the correct amount
...
depending on what instruction we used to enter the kernel. Push the
instruction length into tf_err on entry.
1994-11-07 05:26:08 +00:00
mycroft
ed993b3930
Two trivial optimizations.
1994-11-07 05:09:04 +00:00
mycroft
d5f99262a9
Since npxdna() and npxsave() are only ever called at spl0 now, we can get rid
...
of all the overhead of frobbing the IDT, and just use a simple flag to tell
npxintr() to ignore interrupts. This allows lots of code reduction.
Also, update some comments and add some DIAGNOSTIC code to detect is these
assumptions ever become wrong.
1994-11-07 03:39:37 +00:00
mycroft
5133a6cfd7
Only save the FPU state if somebody else needs the FPU, or when forking.
1994-11-06 23:43:17 +00:00
mycroft
f3ef31e4aa
Oops; forgot to adjust stack offset.
1994-11-06 22:05:08 +00:00