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
mycroft
2e8ae560f6
Commit incest with the config system for this one specific case.
1994-11-04 03:57:32 +00:00
mycroft
fa769b0e97
Set ia_irq correctly.
1994-11-04 02:55:32 +00:00
mycroft
10c353cf10
Update to match autoconfig code.
1994-11-04 01:02:40 +00:00
mycroft
8f064215a2
isa.h -> isareg.h, and update prototype of pcprobe().
1994-11-04 01:00:38 +00:00
mycroft
7773b21b74
Correct an oversight.
1994-11-04 00:53:06 +00:00
mycroft
d4dd538296
Oops; forgot isacd.
1994-11-04 00:07:39 +00:00
mycroft
d35f08ffa6
isa.h -> isareg.h
1994-11-04 00:00:36 +00:00
mycroft
3fca7e771a
New version using standard config_*() functions.
1994-11-03 23:53:19 +00:00
mycroft
ebbdd6473b
Update to match autoconfig code.
1994-11-03 23:26:03 +00:00
mycroft
19fc9d55c8
*intr() arg does not need to be void*.
1994-11-03 23:23:38 +00:00
mycroft
d0163400d1
Update to match autoconfig code.
1994-11-03 23:21:24 +00:00
mycroft
54cc63645d
Update to match autoconfig code.
1994-11-03 23:08:27 +00:00
mycroft
d23d1e83dc
Use indirect config for subdevices, and add dkdrivers where missing.
1994-11-03 22:55:58 +00:00
mycroft
283745574f
Commit this, though it really does need work.
1994-11-03 16:55:57 +00:00
mycroft
ea307925ae
Clean up deleted files.
1994-11-03 15:55:47 +00:00
cgd
6ac2bbfc35
be more careful with types, also pull in headers where necessary.
1994-10-30 21:43:03 +00:00
mycroft
9769a6a6f7
Various:
...
* Forget all cached info when opening a new disc.
* If the disc is removed, flush the buffer queue rather than stalling it.
* Set the default label after getting the disc size, and fill in the info
for RAW_PART also.
* Change another use of the unit number to a softc pointer.
* Use a dkdevice to hold the label and open partition masks.
* Force the partition offset to 0 for RAW_PART, regardless of the label.
* Nuke MCDPHYS() and MCDREADRAW; they had a silly bug that caused the code
to not work, and they aren't useful anyway.
Some other minor cleanup.
1994-10-28 23:39:59 +00:00
cgd
022ee8f7fe
new RCS ID format.
1994-10-27 04:14:23 +00:00
mycroft
e75cb9b517
Oops; need spltty() around call to print().
1994-10-26 18:13:24 +00:00
mycroft
556a119342
Implement *cnpollc().
1994-10-26 18:06:30 +00:00
mycroft
7be5732f87
Implement new system call entry method. Clean up all of the IDT frobnication
...
code.
1994-10-26 01:30:59 +00:00
mycroft
260ddbefb7
Rearrange ed_init() slightly, to better correspond to the National manual.
...
Optimize ed_rint() slightly in the case of multiple packets. (Avoid an outb
and an inb for each packet).
1994-10-23 23:24:56 +00:00
mycroft
603fe7b5a6
Slight optimization.
1994-10-23 21:38:00 +00:00
mycroft
0114159848
Fix the packet length correction for buggy chips so that it actually works,
...
and always use it (otherwise short packets could still be corrupted). Also
produce a diagnostic message if DIAGNOSTIC, since it *is* a hardware bug.
Add an ED_PAGE_SHIFT constant, and use it, to avoid GCC doing horrendous
things with divides and multiplies.
1994-10-23 21:22:13 +00:00
mycroft
3e30a415ae
Be careful not to stack multiple timeouts.
1994-10-20 19:22:01 +00:00
mycroft
4d072c5435
Remove the local timeout mechanism, and just use explicit timeout()/untimeout()
...
calls.
1994-10-20 18:37:45 +00:00
mycroft
c11a06cbc2
Always set d_secsize to 512 for now.
1994-10-20 17:03:09 +00:00
mycroft
0862d07daf
Don't switch to single-sector mode just because we got a corrected error.
1994-10-20 16:36:21 +00:00
mycroft
d4153fff4d
Rearrange wdcstart() in a more logical fashion, and eliminate many redundant
...
calculations. Also, speed up bad block searching a little.
1994-10-20 16:19:08 +00:00
mycroft
cd66683989
openpart -> openmask
1994-10-20 14:08:07 +00:00
mycroft
cae71ba91d
Various changes:
...
* Add a dkdevice; move sc_*openpart, sc_label, and sc_cpulabel into it.
* Turn sc_wlabel into a flag, and don't set it automatically in DIOCWLABEL.
* If there is no label, disallow all I/O except to the raw partition.
* Don't allow I/O to `unused' partitions.
* Beginnings of support for block sizes other than 512 bytes.
Other minor changes.
1994-10-20 13:44:46 +00:00
mycroft
cb4e5ecaa5
Print a single `soft error' message when an operation was retried and
...
eventually completed successfully. Also fix fsbn numbers in diskerr() calls.
1994-10-20 04:46:17 +00:00
mycroft
b2d8a64ebd
Make another printf() #ifdef FD_DEBUG.
1994-10-20 03:38:13 +00:00
mycroft
872999d392
Make the verbose diagnostics #ifdef FD_DEBUG.
1994-10-20 00:52:23 +00:00
mycroft
70e27da16b
Fix up some printfs and make them consistent.
1994-10-18 18:24:35 +00:00
mycroft
8ae8b4ab29
Bug fixes from Rafal Boni:
...
* Set promiscuous mode flag before configuring card, so it actually works.
* Handle failed TDR commands correctly.
* Remove some apparently defunct and bogus code.
(This driver needs more work.)
1994-10-18 13:40:30 +00:00
cgd
320359f8e2
change, requested by Jarle Greipsland
1994-10-17 00:08:29 +00:00
mycroft
d00c05633a
Wait on the correct bit in the lower half of kbc_get8042cmd(); and some other
...
mostly stylistic changes. Based on suggestions from John Hood.
1994-10-16 15:46:13 +00:00
cgd
49c34d3337
move arch dependence to archs. clean up a bit. deal with weird MAXPARTITONS.
1994-10-14 18:26:22 +00:00
mycroft
6f5794ecba
Fix bugs in dealing with odd-length mbufs in ed_pio_write_mbufs(). From
...
John Hood.
1994-10-14 13:05:13 +00:00
mycroft
7c01f7ce51
Changes from DG to deal with some old chips that corrupt the packet length.
1994-10-12 13:42:00 +00:00
mycroft
4252ca6644
Correct multicast filter calculation.
1994-10-09 21:19:04 +00:00
mycroft
ee5cde2719
Oops; slight optimization to the previous.
1994-10-09 18:10:55 +00:00
mycroft
236f105ccd
Remove unneeded #includes.
1994-10-09 15:06:23 +00:00
mycroft
f72ff16e5b
Oops. Just fake %ebp; nothing else.
1994-10-09 14:45:40 +00:00
mycroft
c9cb256e1d
If DDB is configured, make a fake stack frame.
1994-10-09 14:43:00 +00:00
mycroft
cce04a7aa1
Put the delay in a macro, and implement it differently.
1994-10-09 09:28:54 +00:00
mycroft
b90985ee3d
Don't poll the BUSY bit until the SDH register is set.
1994-10-07 11:34:52 +00:00
mycroft
1eaa03e7dc
Fix initial allocation of dev array, and simplify the code
...
slightly.
1994-10-07 09:08:29 +00:00
mycroft
86e7908a72
Make some comments more clear.
1994-10-01 07:19:32 +00:00
mycroft
f7b0f89811
Various minor changes to sync better with DG's version.
1994-10-01 07:13:32 +00:00
mycroft
0e28696023
Add IO_PPI.
1994-10-01 03:52:46 +00:00
mycroft
e32c213d35
Add IO_PMP[12] and IO_PMPSIZE.
1994-10-01 03:48:49 +00:00
mycroft
1e0ffaa7d6
Clean up a little.
1994-10-01 03:42:59 +00:00
mycroft
c25a6980ac
Add INTRUNMASK().
1994-10-01 03:37:37 +00:00
mycroft
cc1852efe4
Add some delays to save the Gateway (lose, lose) keyboard controllers.
1994-09-18 19:33:11 +00:00
mycroft
b7cc64e049
Check the SB Pro IRQ and DRQ correctly. From Jason Thorpe.
1994-09-16 23:48:22 +00:00
mycroft
c7003d37d3
Only reset FIFO if changing baud rate. From John Kohl (slightly edited).
1994-09-16 02:50:39 +00:00
mycroft
8dd2c63b08
Turn off the delay debugging messages again.
1994-09-12 20:29:08 +00:00
mycroft
584de55692
Missed an iobase that should be u_short.
1994-09-05 00:21:40 +00:00
mycroft
a13c1b15cc
Minor.
1994-08-26 12:43:17 +00:00
deraadt
de20d2cf67
Re-enable EISA reset code -- definately needed now. do RX_DISCARD_TOP_PACK
...
before leaving splhigh(), to give incoming packets a better chance.
1994-08-26 12:11:44 +00:00
deraadt
6c2b49032b
fix debugging stuff, from dean
1994-08-25 20:18:25 +00:00
mycroft
5e4a51278b
Set the FIFO threshold based on the receive speed, per Mark Weaver.
1994-08-24 07:25:18 +00:00
mycroft
c4eac0f370
Some cleanup, checked by Dean.
1994-08-23 23:40:55 +00:00
mycroft
8ac5e10c5d
Various code cleanup.
1994-08-23 19:30:12 +00:00