Commit Graph

31 Commits

Author SHA1 Message Date
bde
69681e7b69 Don't depend on "implicit int". 1998-08-11 17:22:42 +00:00
bde
fb75e06c3e Don't pretend to support ix86's with 16-bit ints by using longs
just to ensure 32-bit variables.
1998-07-15 09:38:10 +00:00
bde
9e868cbb1a Removed unused includes. 1998-06-21 18:02:50 +00:00
bde
37b60f29dd Support compiling with gcc -ansi'. Fix missing volatile's in __asm()
statements while I'm here.
1998-04-15 17:26:17 +00:00
phk
ccc7e7fa9f Rename some local variables to avoid shadowing other local variables.
Found by: -Wshadow
1997-11-07 09:21:01 +00:00
gibbs
e1b0aaaa76 aha1542.c aic6360.c cy.c fd.c ft.c
if_ie.c if_wl.c if_zp.c isa.c isa_device.h
labpc.c mcd.c ncr5380.c scd.c seagate.c si.c
sio.c tw.c ultra14f.c wcd.c wd.c:

	Update for changes in the callout interface.

apic_vector.s icu_vector.s ipl.s ipl_funcs.c:

	Add CAM software/hardware interrupt support.
1997-09-21 21:41:49 +00:00
bde
ae8b1527fd Fixed some not-so-recently broken indentation.
Fixed pedantic syntax error (trailing comma in enum).
1997-08-25 23:06:29 +00:00
bde
26179d3e8d Removed unused #includes. 1997-07-20 14:10:18 +00:00
peter
47e5187c67 Fix(?) two volatile cast warnings. The buffer is volatile within the
function so as to avoid compiler side effects, but functions calling it
shouldn't be affected (gcc shouldn't cache memory scope past a function
call)
1997-05-25 04:13:27 +00:00
bde
117209856b Don't include <sys/ioctl.h> in the kernel. Stage 1: don't include
it when it is not used.  In most cases, the reasons for including it
went away when the special ioctl headers became self-sufficient.
1997-03-24 11:25:10 +00:00
bde
d12a47b40b Removed nested #include of <sys/conf.h> from <scsi/scsi_driver.h>
and fixed everything that depended on getting it from the wrong
place.  Most of the broken things actually only depended on getting
the declaration of their interrupt handler from "ioconf.h".
1997-03-23 04:40:00 +00:00
peter
94b6d72794 Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not
ready for it yet.
1997-02-22 09:48:43 +00:00
jkh
808a36ef65 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
phk
bca885205d Remove devconf, it never grew up to be of any use. 1996-09-06 23:09:20 +00:00
gibbs
6cf6649159 Cleanse the SCSI subsystem of its internally defined types
u_int32, u_int16, u_int8, int32, int16, int8.
	Use the system defined *_t types instead.
1996-03-10 07:04:48 +00:00
gibbs
379226f072 Use the new adapter_softc field in the scsi_link structure so that
in the future, these drivers won't need to maintain an array of
configured units. They still need to because ISA interrupt handlers
take a unit number. :(

Pass "softc" pointers instead of unit numbers to many functions that
did a conversion of unit->softc anyway.
1996-01-07 19:22:39 +00:00
phk
e7008a284e Staticize and cleanup. 1995-12-10 13:40:44 +00:00
dg
c30f46c534 Untangled the vm.h include file spaghetti. 1995-12-07 12:48:31 +00:00
bde
c0273b2f64 Replaced #includes of <sys/user.h> by less gross headers, usually
<sys/vm.h>.  Many device drivers need only the definition of vtophys()
from vm.

Added nearby #includes of <sys/conf.h> where appropriate.
1995-12-06 23:52:35 +00:00
bde
6073486300 Added `#include "ioconf.h"' to <machine/conf.h> and cleaned up the
misplaced extern declarations (mostly prototypes of interrupt handlers)
that this exposed.  The prototypes should be moved back to the driver
sources when the functions are staticalized.

Added idempotency guards to <machine/conf.h>.  "ioconf.h" can't be
included when building LKMs so define a wart in bsd.kmod.mk to help
guard against including it.
1995-11-04 17:08:13 +00:00
bde
190b17ed87 Fix benign type mismatches in isa interrupt handlers. Many returned int
instead of void.
1995-09-19 18:55:37 +00:00
gibbs
ae1e6673d9 Remove hard coded assumption that SCSI busses have 7 targets.
This change forces the controller drivers to allocate a scsibus_data struct
via a call to scsi_alloc_bus(), fill in the adapter_link field, and optionally
modify any other fields of the struct.  Scsi_alloc_bus() initializes all fields
to the default, so the changes in most drivers are very minimal.  For drivers
that support Wide controllers, the maxtarg field will have to be updated to
allow probing of all targets (for an example, look at the aic7xxx driver).

Scsi_attachdevs() now takes a scsibus_data* as its argument instead of an
sc_link*.  This allows us to expand the role of the scsibus_data struct for
other bus level configuration setings (max number of transactions, current
transaction opennings, etc for better tagged queuing support).

Reviewed by: Rodney Grimes <rgrimes>, Peter Dufault <dufault>, Julian Elischer <julian>
1995-08-23 23:03:34 +00:00
jkh
8f35e7ba30 The following patch for v1.8 (2.0.5R) of seagate.c allows it to work with
Future Domain TMC-885 controllers. These beasts were just different enough in
a number of perverse ways to be recognised but not work with the seagate
stuff. I also whacked in blind transfers for DATAIN and DATAOUT phases - this
more than doubles my throughput. If you're dubious about that, comment out the
definition of SEA_BLINDTRANSFER. Anyway if you're running an ST01 or TMC-950
controller, please give this a go, I'd like to see if anything's broken for
those beasts.

Submitted by:	Stephen Hocking <sysseh@devetir.qld.gov.au>
1995-07-13 15:01:38 +00:00
rgrimes
c86f0c7a71 Remove trailing whitespace. 1995-05-30 08:16:23 +00:00
wollman
6a8d3a357d Add a class field to devconf and mst drivers.
For those where it was easy, drivers were also fixed to call
dev_attach() during probe rather than attach (in keeping with the
new design articulated in a mail message five months ago).  For
a few that were really easy, correct state tracking was added as well.
The `fd' driver was fixed to correctly fill in the description.
The CPU identify code was fixed to attach a `cpu' device.  The code
was also massively reordered to fill in cpu_model with somethingremotely
resembling what identifycpu() prints out.  A few bytes saved by using
%b to format the features list rather than lots of ifs.
1995-04-12 20:48:13 +00:00
bde
4f64fe43e7 Add and move declarations to fix all of the warnings from `gcc -Wimplicit'
(except in netccitt, netiso and netns) that I didn't notice when I fixed
"all" such warnings before.
1995-03-28 07:58:53 +00:00
jkh
7030617825 Latest update from Serge Vakulenko <vak@cronyx.ru>
Submitted by:	vak
1995-01-10 11:41:28 +00:00
jkh
6a25ed9d0b From: "Serge V.Vakulenko" <vak@gw.cronyx.msk.su>
This is new version of Seagate ST01/02, Future Domain TMC-885, TMC-950
SCSI driver for FreeBSD.  I started from the 2.0R version and mostly
rewrote it.  New features are:

1) New probe algorithm.  Old driver read the BIOS region of the adapter
   memory and find the copyright string.  The problem was in the BIOS itself:
   it conflicted with IDE disks.  The solution was to unplug it and
   make the probe algorithm to work without it.
2) Proper timeout handling in numerous places where the driver
   polls waiting for some event.
3) Assembler flagments added in critical places, mostly for data transfer
   to of from the target.  It was possible to make it faster,
   but at the price of decreasing reliability.
4) Target-dependent delays when waiting for REQ deassert event.
   Some devices seem to be slower (CD-ROMS, some tape drives),
   and some seem to be too fast (disks).  The driver tests the REQ
   deassert timeout for each target and then uses it for polling.
5) Device flags added for SCSI parity control and sense request
   priority control.
6) Generic cleanup, after which the driver became much more readable
   (at least by me:).
7) Target data parity error logging is limited to avoid log file overflow.
8) Manual page added.

Submitted by:	serge
1994-12-31 05:31:48 +00:00
sos
82358e0f07 Added device registration stuff. 1994-10-27 08:03:15 +00:00
phk
eb0c230b88 Made an annoying printf #ifdef SEADEBUG 1994-10-27 05:23:09 +00:00
sos
09f917dfac Seagate st01/02 driver.
Obtained from:	FreeBSD-1.1.5.1
1994-10-24 22:14:34 +00:00