mycroft
3dddacd1ce
Rearrange tests so `offline' has higher priority than `out of paper'.
1995-01-22 00:12:39 +00:00
mycroft
fcdbd2bd7b
Remove outdated comment.
1995-01-16 10:36:26 +00:00
mycroft
a2dafd0821
Avoid using btrl, and check astpending before the return cs, because it's
...
faster and usually false.
1995-01-15 00:36:37 +00:00
mycroft
87d587e640
Simplify some sanity checks.
1995-01-13 14:46:44 +00:00
mycroft
4740006541
Oops.
1995-01-13 14:05:17 +00:00
mycroft
1e5cd9212d
(Almost) allow sector sizes other than 512 bytes. Reduce some expensive operations.
1995-01-13 12:30:59 +00:00
mycroft
7bb384b66c
Avoid some repeated multiplications.
1995-01-13 11:14:27 +00:00
mycroft
7650bd97fc
Always boundary check I/O.
1995-01-13 10:46:32 +00:00
mycroft
c541b630fc
Add a sc_bcount, similar to wd.c.
1995-01-13 10:35:58 +00:00
mycroft
0033c975c6
Fix another bug in the DMA code.
1995-01-13 10:22:58 +00:00
mycroft
4abdb375bc
Minor rearrangement.
1995-01-13 09:40:21 +00:00
mycroft
c2bc310a37
Change the way sc_skip is used. Fix a bug in the (incomplete) DMA code. Add a
...
new sc_blkno (which will be useful later).
1995-01-13 08:58:16 +00:00
mycroft
da7d74e3dc
Fix typos.
1995-01-13 08:37:25 +00:00
mycroft
ca84c10497
Only allow opening one density at a time.
1995-01-13 08:29:25 +00:00
mycroft
04a1fc8816
Change the way b_cylin and sc_track (now sc_cylin) are used slightly.
...
If transfer goes past end of disk, truncate it.
1995-01-13 07:57:01 +00:00
pk
0a22930d97
Explicitly test the RXRDY status bit on incoming characters.
1995-01-11 09:56:40 +00:00
mycroft
e06bc8c13e
Don't issue a controller self-test...
1995-01-07 22:48:29 +00:00
mycroft
06b0414491
Actually, do the ID reset in elink_reset().
1995-01-07 21:37:54 +00:00
mycroft
37e16c5747
Don't print line numbers in most of the diagnostics.
1995-01-07 06:49:35 +00:00
mycroft
d4f91d51a9
Fix a race condition between normal I/O and wd_get_parms().
1995-01-07 03:07:22 +00:00
mycroft
7f61bec5cd
Cosmetic changes, to look more like the new esp.c will.
1995-01-07 01:51:07 +00:00
mycroft
ba288b4ae1
Do the reset in the individual drivers, not in elink_idseq().
1995-01-06 21:41:26 +00:00
mycroft
6125e1b551
Fix oversight in previous.
1995-01-04 00:47:53 +00:00
mycroft
9e499d41b3
\
...
These files have been 99% rewritten from the original ast driver. Add an
appropriate copyright notice.
1995-01-03 22:38:54 +00:00
mycroft
0349c5b9e0
Add a multiplexer for BOCA serial boards.
1995-01-03 22:26:36 +00:00
hpeyerl
09834a5bd3
This is correct according to the docs on both cards.
...
Doesn't seem to make any difference to the known problems though.
1995-01-03 05:04:04 +00:00
mycroft
a987158712
Add interrupt sharing types.
1995-01-03 03:56:09 +00:00
mycroft
b6c8a9a4e9
Update intr_establish() prototype.
1995-01-03 03:14:35 +00:00
mycroft
93a0c4a258
Add interrupt sharing types.
1995-01-03 01:42:11 +00:00
mycroft
b5cf1b5ddd
Add interrupt sharing types.
1995-01-03 01:30:14 +00:00
mycroft
326830c1ba
Use direct config for subdevices.
1995-01-02 22:27:46 +00:00
mycroft
e148dc7a64
Move setting of sc_maddr so soft config works.
1995-01-02 22:01:05 +00:00
mycroft
a774fa6fe5
Use soft configuration when possible.
1995-01-02 21:57:04 +00:00
mycroft
3a967fcbb6
More cleanup.
1995-01-02 21:27:27 +00:00
mycroft
72dec3b548
Various cleanup.
1995-01-02 20:54:01 +00:00
mycroft
3a74796b3e
Need isareg.h.
1995-01-02 20:39:35 +00:00
mycroft
894bb9145f
Use soft configuration where possible.
1995-01-02 20:32:55 +00:00
mycroft
2d5b04744a
Don't assume ia_maddr is in the hole.
1995-01-02 20:06:29 +00:00
mycroft
76b0b02cc3
Fix non-serious typo.
1994-12-31 05:34:00 +00:00
mycroft
8fd135209c
Numerous changes. Many bugs fixed, better autoconfig, a few new features.
1994-12-28 19:42:47 +00:00
hpeyerl
262b425866
temporary warning until I get new docs.
1994-12-28 16:47:50 +00:00
mycroft
ce06e718ad
Fix flags to isa_dmastart().
1994-12-17 18:45:11 +00:00
mycroft
ca65f2ce5d
Remove dkbad.h.
1994-12-14 15:17:22 +00:00
mycroft
05e78f1424
Add empty pcstop().
1994-12-13 13:42:53 +00:00
mycroft
e694663b46
Make the diagnostics less cryptic.
1994-12-12 04:43:51 +00:00
mycroft
3e4a358e28
Patch from Thomas Eberhardt to make PCnet-32 chips work.
1994-12-12 04:39:52 +00:00
christos
303841c92e
3c509 fixes to avoid adapter getting stuck in high traffic conditions.
...
I don't particularly like the fixes, but at least now the 3c509 never
gets stuck. On the other hand, performance still sucks in some cases.
1994-12-10 14:52:02 +00:00
mycroft
793e542f89
Fix format of attach message.
1994-12-10 05:55:26 +00:00
mycroft
8e6f464987
fdclose -> Fdclose
1994-12-03 15:17:06 +00:00
mycroft
8fd1f92ae7
Don't futz with the cursor shape unless we really, really need to.
1994-12-01 11:12:04 +00:00
mycroft
211b002017
Ignore ERR during diagnostics.
1994-12-01 10:45:26 +00:00
mycroft
6686f7f263
Rework detection a bit, and check for the Pentium fdiv bug.
1994-11-30 04:42:07 +00:00
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
5bd4115690
Add some missing locking, and some general cleanup.
1994-11-20 22:36:43 +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
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
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
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
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
2a9b6f7959
Fix stupid bug in last change.
1994-11-04 23:30:15 +00:00
mycroft
4ec6774e12
Add a simplified version of wdcommand() that can be used in some cases.
...
Avoid needing a wd_softc inside wdprobe().
1994-11-04 23:18:06 +00:00
mycroft
38420d7db1
Don't need cd_indirect.
1994-11-04 22:51:59 +00:00
mycroft
3df6bf0c0e
Trivial stylistic changes.
1994-11-04 21:32:23 +00:00
mycroft
854d8d96dc
Rearrange slightly.
1994-11-04 19:25:34 +00:00
mycroft
cfc4633919
Remove outdated comment.
1994-11-04 19:17:47 +00:00
mycroft
1ec8f8d19c
Make IRQ_SLAVE a plain number, too, and remove IRQ{0-15}.
1994-11-04 19:13:49 +00:00
mycroft
8d01374523
Don't need icu.h any more.
1994-11-04 19:08:19 +00:00
mycroft
b7acf321cd
No longer needs icu.h.
1994-11-04 18:59:34 +00:00
mycroft
d66f8d7cdb
Clean up deleted files.
1994-11-04 18:54:43 +00:00
mycroft
29414c5a0a
Change all of the uses of IRQ{0-15} and bit masks to use plain numbers
...
rather than bit shifting.
1994-11-04 18:34:50 +00:00
mycroft
9af4fee97d
Use kvtop() rather than address arithmetic in a couple of places.
1994-11-04 08:55:53 +00:00
mycroft
d9b8813f0e
Correct pcprobe() argument list.
1994-11-04 07:30:51 +00:00
mycroft
1948fcb3fa
Add a new function config_scan(), which just calls a particular function
...
with each plausibly cfdata, ignoring the priority mechanism completely.
1994-11-04 06:40:11 +00:00