Commit Graph

527 Commits

Author SHA1 Message Date
glass 6b63c739f3 bsd 4.4-lite pmax port as ported to NetBSD 1994-05-27 08:57:32 +00:00
mycroft 37c76e16d1 Only print the blasted messages *once* per error. 1994-05-27 08:54:52 +00:00
glass 377b097932 upgrade to bsd 4.4-lite code base. only mod is rcsids 1994-05-27 08:39:00 +00:00
hpeyerl 30c08c899f Copyright foo. 1994-05-25 20:41:53 +00:00
mycroft 0645f8963f Check the bus type, and don't attempt to enable the round-robin algorithm
on early boards.  As suggested by Atsushi Murai.
1994-05-24 13:39:15 +00:00
mycroft a9376b883a MIN --> min 1994-05-24 07:31:12 +00:00
cgd ebcaebd335 MIN -> min, MAX -> max 1994-05-24 02:35:53 +00:00
cgd cf1b01e3cc provide upgrade notice 1994-05-24 01:05:33 +00:00
cgd 057dc4deec quiet compiler warnings 1994-05-23 03:02:13 +00:00
cgd e47989d1e5 turn off spontaneous printing of messages when DEBUG turned on 1994-05-23 02:33:23 +00:00
deraadt 18dab72811 32bit eisa does not work now, do not even try 1994-05-21 05:34:02 +00:00
mycroft 922959fd05 Reverse the order of disabling shared memory and turning off 16-bit mode
where necessary, per Steve Wallace.
1994-05-19 07:47:34 +00:00
mycroft 949b970c95 Use ether_ifattach() rather than doing the same thing in each driver. 1994-05-13 06:13:43 +00:00
mycroft d023a319a4 Nuke some junk in scsi_link, as pointed out by Gordon. 1994-05-12 22:16:04 +00:00
mycroft 7040f728a9 Fill in some more struct ifnet fields. 1994-05-11 12:09:17 +00:00
mycroft 19017044cf Get rid of the private vnread() and vnwrite(); they are the same as rawread()
and rawwrite().
1994-05-11 10:03:59 +00:00
mycroft 02ec14c597 Add dummy *dump() routines. 1994-05-11 09:49:17 +00:00
mycroft ef8ba60d24 Device strategy functions return void again. 1994-05-11 04:26:17 +00:00
mycroft bd96a072fd Nothing of consequence. 1994-05-11 02:28:42 +00:00
chopps 95faa87c60 remove union's from sense_data struct, conditionaly define RAW_PART 1994-05-09 07:40:47 +00:00
mycroft fcdc2b3f3f Remove now-bogus cast. 1994-05-05 08:31:44 +00:00
mycroft 5f478330e8 Remove now-bogus casts. 1994-05-05 08:31:00 +00:00
mycroft 04df00527c Retool the state machine is a sane way. 1994-05-05 08:26:13 +00:00
mycroft 685508a6b4 Remove now-bogus cast. 1994-05-05 07:52:53 +00:00
mycroft a211907a8b Remove now-bogus cast. 1994-05-05 07:41:44 +00:00
cgd a0a7429482 lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around.  kill some unnecessary type and macro
definitions.  standardize clock handling.  More changes than you'd want.
1994-05-05 05:35:42 +00:00
mycroft a9c3f137b5 Don't frob the connector type if the card doesn't grok soft config. 1994-05-05 02:20:44 +00:00
mycroft e5c1d566ef Really fix the Buslogic/DTC problem. 1994-05-03 20:53:54 +00:00
mycroft 0ee51c2c8b Forgot to munge the #includes in last commit. 1994-05-03 20:32:22 +00:00
mycroft 884168ce49 Move beep junk to clock.c. 1994-05-03 08:23:55 +00:00
mycroft 36a9bcce8d Fix argument to aic_sched_msgout() is several places, and condense some code. 1994-05-03 08:20:43 +00:00
deraadt 394be046a5 insw takes a word count 1994-05-02 06:37:10 +00:00
cgd e0db92993a change timeout/untimeout/wakeup/sleep/tsleep args to void * 1994-04-29 23:15:51 +00:00
mycroft 39718a43cc Enable/disable shared memory access on all WD/SMC boards. Add support for
software selection of AUI or BNC connectors using LINK0.
1994-04-28 04:53:09 +00:00
mycroft fc844e1797 Style nits. 1994-04-26 03:43:26 +00:00
mycroft 62773fc6f8 Add Adaptec 6360 driver from Jarle Greipsland, with some changes by me. 1994-04-26 00:05:56 +00:00
mycroft 0e689f0375 Fix uninitialized pointer, pointed out by Michael VanLoon. 1994-04-25 03:16:03 +00:00
mycroft efbbf1b09f Deal with variable-length drives that don't specify a maximum block size.
c.f. SCSI 2 protocol definition.
1994-04-24 05:40:05 +00:00
deraadt 30c24e4508 bit better now, fixes from me & charles. squishy squishy squishy. HI ADAM! 1994-04-24 02:48:10 +00:00
mycroft 2f66816d8b Rename two files. 1994-04-24 01:34:05 +00:00
mycroft 84752ce046 Don't need isa.h. 1994-04-24 01:29:56 +00:00
hpeyerl 0ef8000051 Some changes from Charles, Adam and Christos Zoulas. 1994-04-23 04:31:12 +00:00
mycroft eb036e74c5 Don't need isa.h. 1994-04-22 23:02:40 +00:00
mycroft 221b25fd9d Separate DMA functions. 1994-04-22 22:58:50 +00:00
mycroft 160fbf23ec Fix typo. 1994-04-21 04:26:37 +00:00
mycroft 584cd2e4c9 Clean up the TUNE_1542 code. 1994-04-21 03:37:19 +00:00
mycroft 245097a031 Fix return of I/O space size from wtprobe(), as reported by Rafal Boni. 1994-04-21 00:41:52 +00:00
mycroft 689156a240 Change structure member names. 1994-04-20 22:39:33 +00:00
mycroft df873c8545 Maintain the xs free list with LIST_*(). 1994-04-20 22:13:33 +00:00
mycroft 893be926ec Use TAILQ_*() to maintain the drive activation queues. 1994-04-20 07:23:52 +00:00
cgd 28aa66d455 update from hibler 1994-04-20 05:01:22 +00:00
deraadt 0d93a0839c queue up 8 mbuf chains once again, perhaps this will help?
read packets of the card before attempting to transmit (should improve speed)
1994-04-18 12:40:39 +00:00
deraadt 4816eedf31 first attempt at EISA 32bit IO support. it still doesn't work so it's
disabled.
1994-04-16 09:53:45 +00:00
deraadt 8aca9c1cbc support multicast and promiscious mode
correct mbuf queue bugs, cleanup some extra symbols
try to let link0/link1 change while running, will this work?
1994-04-15 10:51:28 +00:00
mycroft 07b3588735 Patches from David Greenman to eliminate magic constants and add delays when
switching to and fro 16-bit access for 790s.
1994-04-14 03:54:07 +00:00
deraadt 920c317ff9 deallocate mbuf cache on ifconfig down. 1994-04-13 06:09:00 +00:00
mycroft eee893f9ea Various cleanup, but no functional differences. 1994-04-13 05:43:19 +00:00
cgd 49b3055feb undo that last 1994-04-11 21:53:54 +00:00
cgd 34ac381d05 don't cdevvp() if a vnode for the dev already exists. Note that that's
conceptually icky; you end up ref'ing a 'real' vnode, and hence perhaps
tying down a file system; should be able to reference a 'fake' one,
but i doesn't appear save to cdevvp() if vnode for same dev is already
around...  also, mark vfinddev()s XXX (for later).
1994-04-11 19:53:29 +00:00
deraadt e7eb2d4831 support multiple eisa/isa cards. 1994-04-11 11:09:00 +00:00
mycroft 58dfc9dffc Fix various types. Remove some outdated flags. 1994-04-11 03:53:58 +00:00
mycroft c01cb5c454 Fix various types. Remove some outdated flags. Actually sleep a bit if
there are too many commands pending on the controller.
1994-04-11 03:53:45 +00:00
mycroft 8b10b2cd18 Combine scsi_start_unit() and scsi_stop_unit(), and increase the start
timeout (again).
1994-04-11 02:23:41 +00:00
cgd e872e13605 allow MDMBUF flags to be set (oops) 1994-04-10 10:29:06 +00:00
cgd 17378eaf33 and fix the other case. ugly fix, but it works 1994-04-10 01:11:28 +00:00
mycroft f16c2e25f8 Add another rogue... 1994-04-10 00:07:02 +00:00
mycroft cabd481fa9 Don't print a duplicate message about stray interrupts. 1994-04-09 03:43:36 +00:00
mycroft fc5d3e31e0 Small fix to attach message. 1994-04-08 18:57:24 +00:00
mycroft 55efebae3e Fix return values from some interrupt routines. 1994-04-08 18:22:15 +00:00
mycroft 72c593c2e3 Fix return fro isa_epprobe(). 1994-04-08 17:58:47 +00:00
mycroft 0ae5489036 Return correct values from edintr(). 1994-04-08 17:16:39 +00:00
mycroft 3f5e4f423f Implement dynamic IRQ configuration and IRQ sharing. Inline spl*() calls.
Reorganize and clean up the relevant code.
1994-04-07 06:48:19 +00:00
mycroft 5fe1b5b538 Redo the last change; it was compltely bogus. 1994-04-06 00:43:57 +00:00
mycroft 8b1679d75d Remove spurious arg to printf(), per JT Conklin. 1994-04-06 00:27:49 +00:00
mycroft 87e831ef86 Try to detect garbage data from page 4 sense. 1994-04-06 00:23:31 +00:00
mycroft 100fdbd6d1 This line is redundant for LD_UNLOAD (only one use, and it does this itself)
but breaks LD_RETEN, forcing a reload of the driver state on the next I/O
operation.  Therefore, it goes away.
1994-04-05 22:39:37 +00:00
mycroft 8d0730c420 Reload the tape after retension. 1994-04-05 22:18:00 +00:00
mycroft 44f11a89b3 Implement MTRETEN (untested). 1994-04-05 22:08:09 +00:00
mycroft 692dc0e998 Implement MTEOM, currently untested. 1994-04-05 21:59:49 +00:00
mycroft 25317c76f3 Increase ahb_send_mbox timeout. 1994-04-05 08:53:00 +00:00
mycroft 314bc1f5db Clean up #includes. 1994-04-03 22:50:14 +00:00
mycroft 9a9b1d99fa Minor code cleanup. 1994-04-02 08:04:26 +00:00
mycroft 96f452cd84 Deal with Mark Weaver's rogue tape drive. 1994-04-01 06:49:22 +00:00
mycroft 5edb523880 Remove an old hack that now just causes a small memory leak during autoconfig. 1994-03-31 16:59:04 +00:00
mycroft b6f5403319 Some patches from Rafal Boni to fix egregious 3C507 mistakes. 1994-03-31 06:16:35 +00:00
mycroft 23c5083a45 Minor changes. 1994-03-30 18:35:11 +00:00
mycroft 8ccc7bdffb Turn off the timeout debugging info by default. 1994-03-30 04:58:32 +00:00
mycroft ea6d9af1c2 Print out board revision info. 1994-03-30 04:07:48 +00:00
mycroft 95f1b85a5a astprobe(): Set ia_iosize. 1994-03-29 06:58:29 +00:00
mycroft 592ec61b17 Updates for new autoconfig. 1994-03-29 04:35:37 +00:00
mycroft 5eb99ad76e New autoconfig mechanism. Hacked at the moment to use old config(8), but
look mostly like config.new to drivers.
1994-03-29 04:34:18 +00:00
mycroft 6bce5180d6 New version from Sergey Ryzhkov and Serge Vakulenko. 1994-03-29 04:32:12 +00:00
mycroft e1d51562a9 New SCSI system, based on Julian's more recent work. 1994-03-29 04:30:15 +00:00
mycroft 2e5a28159f New SCSI system, based on Julian's more recent work. 1994-03-29 04:29:20 +00:00
mycroft d5a269b4dd Put controller target in scsi_switch. 1994-03-25 07:38:51 +00:00
mycroft 008f13bb69 Fix off-by-one error in comopen() unit number sanity check. From Brian de
Alwis.
1994-03-25 04:38:01 +00:00
cgd c3218832ba print even more SCSI sense data; this should be in a function... 1994-03-24 17:47:35 +00:00
cgd 20c82de12d print out lots of info on non-media hardware error... 1994-03-24 04:32:44 +00:00
cgd 18f36e1745 copyright foo 1994-03-23 03:55:24 +00:00
mycroft a3c2ef3169 Don't poll more than 4 ports. 1994-03-23 03:04:32 +00:00
mycroft 4cc5b77bfa Some stylistic cleanup, and a very minor speedup. 1994-03-23 03:01:50 +00:00
cgd c6b399cce8 add AST-style serial multiport support, from Roland McGrath
<roland@@frob.com>.  Needs light clean by Mr. I386, but mostly
OK.  For some reason, Bad Things (TM) happened on the last cvs commit.
1994-03-23 01:28:23 +00:00
cgd c24c16f35f add AST-style serial multiport support, from Roland McGrath
<roland@frob.com>.  Needs light clean by Mr. I386, but mostly
OK.
1994-03-23 01:25:53 +00:00
cgd 456e197d26 add reasonable support for MDMBUF output flow control. input to be done later 1994-03-18 05:13:26 +00:00
mycroft b03c4f17ca Remove two bogus splx()s. 1994-03-14 13:32:56 +00:00
hpeyerl 936ff09fcd Fix for trailer support reported by <sommerfeld@orchard.medford.ma.us> 1994-03-14 06:57:25 +00:00
mycroft fe3d0b99c3 Prefix the busy-wait messages with `ignore this:' so people stop reporting
it as a bug.
1994-03-12 22:36:40 +00:00
mycroft 9ab5683dc7 Fix problem with reading the disk label if it's not at the beginning of the
disk.
1994-03-12 22:32:48 +00:00
cgd 39f57c7820 copy appropriate hardware config bits from config's flags 1994-03-12 08:04:19 +00:00
cgd 86ac0459be fix some of the last; thanks to charles for looking it over... 1994-03-12 07:43:03 +00:00
cgd c38cf8e43e support new ioctls. fix the way CRTSCTS is used, etc. Seperate 'hardware'
and 'software' flags.  beginnings of multiport support.
1994-03-12 07:25:16 +00:00
mycroft 15d0f84500 Fix bug in last change. 1994-03-12 04:10:03 +00:00
mycroft 15d758c39a Remove backward compatibility hacks for config(8), as they are no longer
useful.
1994-03-12 03:45:03 +00:00
mycroft d884f7c425 Update to match config(8). 1994-03-12 03:34:02 +00:00
mycroft d72e576cfb Rearrange top-level configuration to be more consistent. 1994-03-12 03:29:20 +00:00
mycroft 119f3ea688 Various:
Put WDF_ERROR in the wdc_softc, to avoid gratuitously forcing non-active drives
into single-sector mode on the next transfer.  Arrange to wait for an interrupt
after wdsetctlr(); this avoids long busy-wait delays, and gets rid of the
`extra interrupt' messages (except for one immediately after autoconfig on some
machines).  Replace some uses of wdsetctlr() with simply lowering wd->sc_state;
no point in forcing this immediately.  Allow control operations to time out.
Enable the warnings for long busy-wait delays by default.  Some other minor
things not worth mentioning.
1994-03-11 23:29:12 +00:00
mycroft 99dbc0692d Add a heuristic for detecting old config(8)s. This is very temporary. 1994-03-10 22:30:06 +00:00
mycroft 390f5990bb Now that the disk probe routines are actually called, they need to return
something.
1994-03-10 21:52:07 +00:00
mycroft b8be52a88c Update for new config; handles subdevices differently. 1994-03-10 21:38:46 +00:00
mycroft 367c93feb4 Updates to match config(8). 1994-03-10 20:52:09 +00:00
mycroft 0c19458c6f More updates for new config. 1994-03-10 20:05:30 +00:00
mycroft aa45779df7 Update for new config. 1994-03-10 19:57:20 +00:00
mycroft 095308adeb Add isa_dmaabort(). 1994-03-10 18:14:32 +00:00
mycroft e4102b8797 Cleanup to fit standard coding conventions, and *many* bugs fixed. 1994-03-10 05:18:33 +00:00
mycroft aab638bd07 Fix NS handling. 1994-03-09 17:19:10 +00:00
mycroft 3a57542a30 Back out previous change for now. 1994-03-09 07:58:39 +00:00
mycroft a692d2185a Inline spl*() calls. 1994-03-08 13:24:46 +00:00
mycroft a618881dd7 #include cpu.h in all files which use spl*(). 1994-03-08 12:21:10 +00:00
mycroft 49051114a6 Major cleanup and many bugs fixed; based in part on Brad Huntting's version
for BSD/386.  More to be done when the low-level interrupt system is replaced.
1994-03-08 08:12:56 +00:00
mycroft 5a17003403 Some changes inspired by Bruce Evans's driver:
Consolidate error reporting in one function.  Actually use the dk_status and
dk_error fields, and pass around only the error bit to avoid lots of unneeded
assignments and tests.  No functional differences.
1994-03-07 05:54:44 +00:00
mycroft 991225bfc8 Remove DKFL_QUIET. 1994-03-07 03:18:35 +00:00
ws 581b6ca207 Don't let uninitialized variable slip by 1994-03-06 19:34:46 +00:00
mycroft 41cc9cb4f2 Better delay() from magnum branch. 1994-03-06 17:37:56 +00:00
mycroft 5f4063cc56 DELAY() --> delay(). This is not a macro. 1994-03-06 17:21:44 +00:00
mycroft 0c082bcaf8 DELAY() --> delay(). This is not a macro. 1994-03-06 17:18:43 +00:00
mycroft 87ed28e74e Move the drive select and various other things into wdcommand(), to avoid
duplicating code.
1994-03-05 08:17:06 +00:00
mycroft 3e02952c52 Make sure we clear the interrupt when necessary. Why this isn't needed on
my hardware is a mystery.
1994-03-04 23:43:14 +00:00
mycroft 652712272f Add another missing splx(). 1994-03-04 17:51:10 +00:00
mycroft 0f92f76ceb Remember to splx() on some error conditions. 1994-03-04 17:45:22 +00:00
mycroft ef3c1bf7e6 Start the timeout loop *after* we've decided there is a disk there. 1994-03-04 04:15:24 +00:00
mycroft 220512c2a8 De-ANSIfy. Move the timeout counter into struct disk. Remove unneeded args
to wd[gs]etctlr().  Other minor changes.
1994-03-04 03:43:48 +00:00
hpeyerl 499a02a6a9 New probe for 3c579's (EISA). EISA cards still don't work but I
have no idea when I'll be able to work on this next.
1994-03-04 01:31:50 +00:00
mycroft 34115459a4 Upload the ether address to the card after a reset, per Matt Kimmel. 1994-03-03 15:30:27 +00:00
mycroft fa396ad402 Watch `seek complete' bit per IBM documentation. Clean up wdioctl(). Other
minor cleanup.
1994-03-03 01:58:21 +00:00
mycroft 7b734f94ec Be more careful about clearing the controller and drive active flags. 1994-03-02 23:27:13 +00:00
mycroft 37135f9686 Add 8003W and 8003EB, per David Greenman. 1994-03-02 22:47:36 +00:00
mycroft 21118b1bc4 Don't busy-wait for read or write completion. 1994-03-02 22:07:00 +00:00
mycroft 469206981a Fix prototype of wdintr(). 1994-03-02 21:43:42 +00:00
mycroft e9326b3ba7 Make wdc_wait() do an implicit wait_for_unbusy(). Pass structure pointers
rahter than unit numbers where appropriate.  Fix conflict if two drives have
I/O pending at the same time.  Add some more sanity checks.  Some other minor
cleanup.
1994-03-02 21:42:31 +00:00
mycroft 81de6fa982 Increment outbound packet count, per Matt Kimmel. 1994-03-02 16:23:23 +00:00