Commit Graph

40 Commits

Author SHA1 Message Date
Julian Elischer
6ba9ebce28 devsw tables are now arrays of POINTERS to struct [cb]devsw
seems to work hre just fine though  I can't check every file
that changed due to limmited h/w, however I've checked enught to be petty
happy withe hte code..

WARNING... struct lkm[mumble] has changed
so it might be an idea to recompile any lkm related programs
1995-12-13 15:13:57 +00:00
Julian Elischer
76092b8329 Make NEW_SCSICONF the default way of doing things
It will need to be changed
but it's the better starting point..

also add '?' to wildcarding in SCSI identification of devices..
so we can catch all PIONEER	CD 6??* devices instead of having
separate entries for the 600, 602, 604X, 624X etc..

it's getting so we should have a small regexp routine in the kernel
maybe just a little one..  matching CDX-6[0-9][0-9][ A-Z] would be better

there will be drastic changes in this
but this is the best starting point..
1995-12-10 10:58:30 +00:00
Bruce Evans
f30e535f00 Completed function declarations, added prototypes and removed redundant
declarations.
1995-11-21 15:14:28 +00:00
Poul-Henning Kamp
4b2af45f4b Mega commit for sysctl.
Convert the remaining sysctl stuff to the new way of doing things.
the devconf stuff is the reason for the large number of files.
Cleaned up some compiler warnings while I were there.
1995-11-20 12:42:39 +00:00
Joerg Wunsch
f60e6466c4 Include the "od" driver. (Oops, forgot to cvs add the driver file
itself.  Will do this after this commit.)

Make scsiconf more flexible about recognizing ``foreign'' devices.
This part needs to be rewritten some day to allow for matches whithou
strict version number checks, but either Julian as Peter seem to be
too busy right now, so i'm finally commiting the version that's
working for me stable now for several months, as an interim
workaround.

Submitted by: akiyama@kme.mei.co.jp (Shunsuke Akiyama)
1995-10-31 17:21:00 +00:00
Joerg Wunsch
b629f8ebbe Some bug fixes for the worm driver:
o  don't use polled mode after the device probe phase
o  don't biodone() a NULL buffer pointer
o  increase the timeout for scsi_read_capacity(); WORMs are slooow
o  make WORMMs known to scsiconf at all

This brings the driver in a state where it at least doesn't
immediately panic, nor hangs the controller any more.  Unfortunately,
at least the YAMAHA CDR100 i've been testing with answered my write
attempts with an "Incorrect command sequence" response.  Perhaps other
CD burners might work however.

Reviewed by:	dufault
1995-10-09 15:15:01 +00:00
Justin T. Gibbs
07b1c6b3c9 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
Bruce Evans
bf25be48a5 Make everything except the unsupported network sources compile cleanly
with -Wnested-externs.
1995-08-16 16:14:28 +00:00
Justin T. Gibbs
31acd246c0 Allow the specification of the controller bus when wiring down scsi buses.
This is performed by using a line similar to:

controller scbus0 at ahc0 bus 1

to wire scbus0 to the second bus on an adaptec 2742T controller.

Reviewed by: Peter Dufault(dufault@hda.com), Rod Grimes(rgrimes@FreeBSD.org)
1995-07-17 23:38:16 +00:00
Atsushi Murai
634ccfcbf6 Bestmatch check for cd-drive always faild due to additional space
on manufacture and  other items. So it's never probe as MORE_LUNS
after frist SONY entry....
1995-06-14 12:28:32 +00:00
Rodney W. Grimes
9b2e535452 Remove trailing whitespace. 1995-05-30 08:16:23 +00:00
Peter Dufault
7d613f6a39 Moved unit definitions out of scsiconf.h;
Added CONTROL device that only does user-ioctl and nothing else;
Added protection so user-ioctl requires write access;
Clean up scsiconf.h a little. It needs more work.
1995-05-03 18:09:20 +00:00
Bruce Evans
625fa10a30 Don't export a bogus include to half the universe. 1995-04-23 07:47:12 +00:00
Peter Dufault
81e01d44ce Added "scsi target" device that can act as a target for scsi transfers
from an initiator
Added Julian's support for residuals.
Added Julian's fixes to the tape driver
Made compile cleanly with -Wall
Reduce boot up output
1995-04-14 15:10:44 +00:00
Peter Dufault
3358f19c6e cd.c: Julian's CD audio cleanup
sd.c: Julian's removal of subdriver requests
st.c, scsi_tape.h: Julian's suport of compressed tape drives

Note: compressed tape drives are still not working fully.

scsiconf.h, scsi_base.c, scsi_driver.c: address problems in probes
and error console logs
1995-03-21 11:21:08 +00:00
David Greenman
edf8a81561 Removed redundant newlines that were in some panic strings. 1995-03-19 14:29:26 +00:00
Bruce Evans
b5e8ce9f12 Add and move declarations to fix all of the warnings from `gcc -Wimplicit'
(except in netccitt, netiso and netns) and most of the warnings from
`gcc -Wnested-externs'.  Fix all the bugs found.  There were no serious
ones.
1995-03-16 18:17:34 +00:00
Peter Dufault
73d664ca78 1. Add text for ASC/ASCQ
2. Clean up probe messages.  This is how I propose it looks for 2.1 so
if you don't like it you have my e-mail address.
1995-03-15 14:22:12 +00:00
Peter Dufault
558b7c23d1 Submitted by: bde@zeta.org.au (Bruce Evans)
Fix it so that calls to extend_get won't dereference 0 when "swap
on sd.." calls sdsize() on systems with no SCSI devices.

This probably really fixes Poul's "boot with no SCSI" problem.
1995-03-06 15:02:13 +00:00
Peter Dufault
f29b7a5d14 1. Change driver signatures to full signature for slice support.
2. Add "pt" (processor type) driver.
3. Add "worm" (Write Once) driver for Jordan.
1995-03-04 20:51:10 +00:00
Peter Dufault
a0520fbaac Reviewed by: gibbs@freefall.cdrom.com julian@freefall.cdrom.com
1. Support for fixed device configuration
2. Hoisted common code to scsi_driver
3. SCSI busses dynamically allocated at boot
4. Reorg'd for LKMs
1995-03-01 22:24:47 +00:00
Poul-Henning Kamp
c70f45100d YFfix. 1995-02-14 06:28:25 +00:00
Peter Dufault
7562b0d606 Reviewed by: gibbs@estienne.CS.Berkeley.EDU
Reenabled "SCIOCOMAND" ioctl.
Restructured so low level drivers can easily request retries.
Added preliminary fixed SCSI devices (should be revisited before 2.1)
Added "ssc" device that can have its' (HBA, ID, LUN) set via ioctl.
1995-01-08 13:38:38 +00:00
Poul-Henning Kamp
d9a2713bb5 Make sure we allocate at least 8 scbus if we allocate any at all. 1994-12-18 18:48:39 +00:00
Andreas Schulz
d3378ee165 Include "scbus.h" in scsiconfig.c to get the number NSCBUS from the
config file.
1994-11-27 23:30:48 +00:00
Andreas Schulz
80aee6ac1f Submitted by: Lawrence J. King ljking@ljk.OCUnix.On.Ca
Check the firmware revision for non-printing characters and replace them
question-marks if necessary. Problem is known with old Seagate ST296N
drives.
1994-11-17 23:22:22 +00:00
Andreas Schulz
e9bc745de3 scsiconf.h:
Change the sc_link structure from 8 targets with 8 lun's to
16 targets with 8 lun's. Wide scsi and the ncr 825 does support 16 targets.
scsiconf.c:
move the addition of the trailing NUL's out of a then clause, they are also
needed in the else clause for an unknown device.
1994-11-14 23:39:33 +00:00
Andreas Schulz
9055754b40 Delete a bogus check that the SCSI_DELAY only works for the first
scsi adapter. Let it work on every adapter. Someone want to rewrite
this to be coupled with the adapter specification in the config file,
so that you can say which adapters need it ?
1994-11-12 17:13:23 +00:00
Garrett Wollman
2f86936a07 Finished device configuration database work for all ISA devices (except `ze')
and all SCSI devices (except that it's not done quite the way I want).  New
information added includes:

-	A text description of the device
-	A ``state''---unknown, unconfigured, idle, or busy
-	A generic parent device (with support in the m.i. code)
-	An interrupt mask type field (which will hopefully go away) so that
.	  ``doconfig'' can be written

This requires a new version of the `lsdev' program as well (next commit).
1994-10-23 21:28:03 +00:00
Garrett Wollman
33d2aba4dc Implement scsi_externalize(), again. (This was supposed to be committed in the
last batch of changes but somehow got lost in the shuffle.)
1994-10-19 20:34:15 +00:00
Poul-Henning Kamp
07716162c6 Removed unused vars. Silenced gcc -Wall. Some of this stuff is virtually
type-less.  Everything is "u_int32" :-(
1994-10-08 22:26:40 +00:00
Stefan Eßer
92a25df797 Reviewed by: Julian Elischer / Jordan K. Hubbard
Changes are only effective, if NEW_SCSICONF is defined:

1) Added u_int16 quirks to struct scsi_link for device quirks.
2) Added void *devmodes to struct scsi_link for tape density modes.
3) Modified selectdev() to return first full match (with wildcard).

With this patch all device dependent configuration is done in one place
(scsiconf.c), while there were some specifications in st.c and some
hardware dependent drivers (ie. ncr.c) before.
1994-09-28 20:16:45 +00:00
Garrett Wollman
aaf08d94ca Make everything compile with -Wtraditional. Make it easier to distribute
a binary link-kit.  Make all non-optional options (pagers, procfs) standard,
and update LINT to reflect new symtab requirements.

NB: -Wtraditional will henceforth be forgotten.  This editing pass was
primarily intended to detect any constructions where the old code might
have been relying on traditional C semantics or syntax.  These were all
fixed, and the result of fixing some of them means that -Wall is now a
realistic possibility within a few weeks.
1993-12-19 00:55:01 +00:00
Rodney W. Grimes
57bb0ee45f New version of scsi code from Julian 1993-11-18 05:03:27 +00:00
Rodney W. Grimes
2b40491738 Fixed printf if you are using SCSI_DELAY to allow the scsi bus to
settle down after the reset.
1993-09-05 17:41:07 +00:00
Rodney W. Grimes
a3e4335498 Revised drivers from Julian. Support for generic scsi. Fixed scsi tape (st.c)
problems with respect to multiple tar files on one tape.  Now uses malloc
of data structures to reduce static kernel size.
1993-08-28 03:08:59 +00:00
Rodney W. Grimes
296cbdb15b Fixed printf's so that they announce them selfs correctly (ie aha%d: before
every error message and every probe message).
1993-08-21 20:01:59 +00:00
Rodney W. Grimes
e5cf9f6134 Update scsi code to the latest from Julian. This code is now identical
to the last copy from Julian.  After this commit I will be commiting the
local fixes and makeing diffs to send back to Julian so he can update his
code.

----
From julian@jules.DIALix.oz.au  Thu Aug  5 09:25:23 1993
To: hd@world.std.com, julian@jules.DIALix.oz.au
Cc: nate@bsd.coe.montana.edu
Subject: Re: new scsi

----
From julian@jules.DIALix.oz.au  Sat Aug  7 04:13:17 1993
To: hd@world.std.com (HD Associates)
Cc: nate@bsd.coe.montana.edu
Subject: Re: timeout diffs

Here are the diffs to take the scsi stuff to my latest tree from what
Nate and you received..

the changes remove all the local timeout stuff and use (un)timeout(),

----
From julian@jules.DIALix.oz.au  Sat Aug  7 04:13:45 1993
To: hd@world.std.com (HD Associates)
Cc: nate@bsd.coe.montana.edu, briggs@csugrad.cs.vt.edu

here is a fix for a silly bug in the scsiconf I just sent out
and a similar fix for st.c
1993-08-20 09:23:30 +00:00
Nate Williams
d97875d4b0 Removed PATCHKIT headers and updated our sources to Julian's with
our patches back in.  Major changes to the Bustek driver and the
Tape driver, the rest are minor.
1993-07-29 11:49:13 +00:00
Rodney W. Grimes
5b81b6b301 Initial import, 0.1 + pk 0.2.4-B1 1993-06-12 14:58:17 +00:00