summaryrefslogtreecommitdiffstats
path: root/sys/scsi
Commit message (Collapse)AuthorAgeFilesLines
* Obsoleted by CAM.gibbs1998-09-1528-15790/+0
|
* Remove the SLICE code.sos1998-09-141-259/+1
| | | | | This clearly needs alot more thought, and we dont need this to hunt us down in 3.0-RELEASE.
* Reviewed by: J Wunsch <j@uriah.heep.sax.de>dillon1998-09-031-7/+17
| | | | | | -current commit for st.c, kernel support for /bin/mt's 'comp' option. (tested with exabyte and DAT tape units. Does not apparently work with all SCSI tape's, though).
* remove bdevsw arg from dsopen();phk1998-08-233-6/+6
| | | | | Forgotten by: julian Reviewed by: bde
* Moved `nx' functions to the one place where they are used (su.c).bde1998-08-201-3/+82
| | | | | | | They shouldn't be used there either. They should have gone away about 3 years ago when the statically initialized devswitches went away, but su.c unfortunately still frobs the cdevswitch in the old way.
* Fixed printf format errors.bde1998-08-187-26/+26
|
* Removed unused includes.bde1998-08-171-2/+1
|
* Don't use unaligned accesses when printing extended sense codes.dfr1998-08-171-2/+3
|
* Cast to `char *' instead of to u_long to help add byte offsets tobde1998-08-151-4/+5
| | | | | | | | | | | | | | | | | | | pointers. Neither is portable, but "correct" casts to integral types are much uglier - they lead to expressions like ptr = (struct struct_with_too_long_a_name *)(void *)(uintptr_t) ((uintptr_t)(void *)ptr + offset); Here the cast to the struct pointer is to match the surrounding style of this file (and not depend on C's feature of properly converting `void *' on assignment or cast), the `void *' casts are because uintptr_t is only specified to work on `void *' pointers (I missed this in about 100 lines of previous changes from [u]long to [u]intptr_t), the outer cast to a uintptr_t is in case the addition promoted the type, and the inner cast to a uintptr_t corresponds to the one cast to an integer in the original code. Don't depend on gcc's feature of casting lvalues.
* In sys/scsi/st.c, st_close() does not check for errors from callingphk1998-07-311-3/+4
| | | | | | | | | | st_write_filemarks(). This means that it is possible to write a file on the tape for which all the writes and the close return without errors, but the all bits did not make it onto the tape. PR: 741 Reviewed by: phk Submitted by: Andrew Heybey <ath@niksun.com>
* Use the slice interfaces for SCSI cdroms. This centralizes handlingbde1998-07-301-203/+115
| | | | | | | | | | | of some disk ioctls and uniformizes bounds checking in the strategy routine. EOF handling got fixed as a side effect. The changes are similar to old changes for SCSI disks, except slices and labels are not searched for on the disk and the in-core label has a few more details (mostly just for backwards compatibility). Bugs in the in-core label had to be fixed to get dsopen() to accept it. The slice interfaces had to support large sectors for all this to work.
* Added a flags arg to dsopen() and updated drivers. The DSO_ONESLICEbde1998-07-302-4/+4
| | | | | | | | | | | and DSO_NOLABELS flags prevent searching for slices and labels respectively. Current drivers don't set these flags. When DSO_NOLABELS is set, the in-core label for the whole disk is cloned to create an in-core label for each slice. This gives the correct result (a good in-core label for the compatibility slice) if DSO_ONESLICE is set or only one slice is found, but usually gives broken labels otherwise, so DSO_ONESLICE should be set if DSO_NOLABELS is set.
* Centralized and optimized handling of large sectors. Centralizedbde1998-07-292-110/+7
| | | | | | | checking of transfer sizes and alignments. Old version tested with 2K-sectors on od disks by: Shunsuke Akiyama <akiyama@kme.mei.co.jp>.
* Set the disk type to SCSI in the in-core label for the whole disk.bde1998-07-282-2/+4
|
* I have a PD drive (Matsushita PD/CD Drive LF-1600).phk1998-07-281-2/+2
| | | | | | | | | | The machine can not recognize this PD drive as neither PD drive nor CD-ROM Drive. So I can not use CD-ROMs and PDs from FreeBSD. PR: 7423 Reviewed by: phk Submitted by: Takura Koyama <takura@popweb.ne.jp>
* If object pointers need to be cast to [unsigned] integers, then castbde1998-07-141-3/+3
| | | | | | | to [u]intptr_t instead of to [u_]long. Don't cast pointers to integers just to do ordinary pointer arithmetic on them, especially when the casts use gcc's feature of casting lvalues.
* Fixed printf format errors (only 1 left in GENERIC now).bde1998-07-131-17/+20
|
* SLICE probing becomes asynchronous. It can now be triggered byjulian1998-07-131-5/+3
| | | | | | | | interupt level events. This needs a lot of cleanup, but has been working here for a month or two.. originally needed for CAM integration but that hasn't happenned yet. The probing state machines for each handler should be replaced by a more generic state-service. It's still quite messy in there..
* Fixed printf format errors.bde1998-07-115-97/+106
|
* There is no such thing any more as "struct bdevsw".julian1998-07-048-105/+182
| | | | | | | | | | | | | | | | | | There is only cdevsw (which should be renamed in a later edit to deventry or something). cdevsw contains the union of what were in both bdevsw an cdevsw entries. The bdevsw[] table stiff exists and is a second pointer to the cdevsw entry of the device. it's major is in d_bmaj rather than d_maj. some cleanup still to happen (e.g. dsopen now gets two pointers to the same cdevsw struct instead of one to a bdevsw and one to a cdevsw). rawread()/rawwrite() went away as part of this though it's not strictly the same patch, just that it involves all the same lines in the drivers. cdroms no longer have write() entries (they did have rawwrite (?)). tapes no longer have support for bdev operations. Reviewed by: Eivind Eklund and Mike Smith Changes suggested by eivind.
* make NO_SCSI_SENSE a proper option (already documented in LINT)jmg1998-06-301-0/+2
|
* Added used include of "ioconf.h" - don't depend on pollution inbde1998-06-178-8/+23
| | | | | <sys/conf.h>. I'm fixing isa interrupt handler configuration and this is just a quick fix to keep SCSI configuration unharmed.
* This commit fixes various 64bit portability problems required fordfr1998-06-0710-31/+31
| | | | | | | | | | FreeBSD/alpha. The most significant item is to change the command argument to ioctl functions from int to u_long. This change brings us inline with various other BSD versions. Driver writers may like to use (__FreeBSD_version == 300003) to detect this change. The prototype FreeBSD/alpha machdep will follow in a couple of days time.
* Allow devfs to support the 'uk' devicejulian1998-06-011-3/+27
| | | | Submitted by: Micha Class <michael_class@hp.com>
* Add sctargattach that initializes the bufq data structure.gibbs1998-06-011-9/+21
|
* Reformat some comments to not overflow 80 chars.julian1998-05-241-69/+63
|
* An effort to make SLICE/DEVFS play with SCSI.julian1998-05-071-79/+102
| | | | | | | | Apparently I didn't make my plans to make dev_t and devsw[] go away under DEVFS quite clear enough to Peter Dufault as he stitched the SCSI system together using them when he redid the configuration side of things. This made is rather an effort to remove all vestiges of dev_t and devsw[] entries from sd.c in DEVFS/SLICE mode.
* cleanup: remove duplicated dump code.julian1998-05-071-125/+39
| | | | fix oversight on SLICE ioctl code.
* Add dump support to the DEVFS/slice code.julian1998-05-061-2/+101
| | | | | | now we can actually catch our crashes :-) Submitted by: Luoqi Chen <luoqi@chen.ml.org> (the man who's everywhere)
* The CHIOGSTATUS ioctl of the SCSI media changer driver (sys/scsi/ch.c)phk1998-05-061-2/+2
| | | | | | | | | is broken. It omits the SCSI_DATA_IN flag in the SCSI READ ELEMENT STATUS command, which makes the 'chio status' command fail. PR: 6528 Reviewed by: phk Submitted by: Hans Huebner <hans@artcom.de>
* Fixed spelling of "fictitious" in diagnostics and commentsdes1998-04-273-13/+13
| | | | PR: kern/6429
* close() is no longer a SLICE method.julian1998-04-221-4/+11
| | | | | Close is simply an open with no-read and no-write once internal to SLICE (it still exports a close to the rest of the kernel)
* Add changes and code to implement a functional DEVFS.julian1998-04-191-6/+207
| | | | | | | | | | | | | | | | | | | | | This code will be turned on with the TWO options DEVFS and SLICE. (see LINT) Two labels PRE_DEVFS_SLICE and POST_DEVFS_SLICE will deliniate these changes. /dev will be automatically mounted by init (thanks phk) on bootup. See /sys/dev/slice/slice.4 for more info. All code should act the same without these options enabled. Mike Smith, Poul Henning Kamp, Soeren, and a few dozen others This code does not support the following: bad144 handling. Persistance. (My head is still hurting from the last time we discussed this) ATAPI flopies are not handled by the SLICE code yet. When this code is running, all major numbers are arbitrary and COULD be dynamically assigned. (this is not done, for POLA only) Minor numbers for disk slices ARE arbitray and dynamically assigned.
* Seventy-odd "its" / "it's" typos in comments fixed as per kern/6108.des1998-04-176-14/+14
|
* Attempt to fix BOUNCE_BUFFERS. I cannot test these drivers, but theypeter1998-04-162-2/+54
| | | | | seem to compile OK with the bounce buffer mods. I have only visually checked for missing bounce buffer support, I could have missed some.
* Attempt to get bounce_buffers working again for per-process kernel stackpeter1998-04-161-10/+40
| | | | | | data targets. At least st0 works for me again.... Also, scsi_scsi_cmd() looks like it's been exiting without a biodone() on an attached buffer in a number of error cases, leading to locked buffers.
* fix an obvious broken BOUNCE_BUFFER case.peter1998-04-161-1/+9
|
* Support compiling with `gcc -ansi'.bde1998-04-154-8/+8
|
* Add an ioctl to retrieve the next writable address.jmz1998-03-312-19/+109
| | | | | | Defer the WRITE SESSION command until the first write command, so that it works like the prepare track command, allowing the device to be closed after the command.
* Moved some #includes from <sys/param.h> nearer to where they are actuallybde1998-03-281-1/+2
| | | | used.
* Add a quirk entry for IO DATA CDC-TX86 6 CD changer.jkh1998-03-081-1/+6
| | | | | PR: 5942 Submitted by: Masanao Sasai <m_sasai@mxa.meshnet.ne.jp>
* Don't depend on "implicit int".bde1998-02-201-2/+2
|
* Put the SC_Q_NO_TAGS value in the correct field for the Iomega Jaz quirkmsmith1998-02-181-5/+5
| | | | | entry, and move it down with the other NO_TAGS device. Submitted by: bde
* Add HW_WDOG to LINT, and turn it into a new-style option.eivind1998-02-161-1/+2
|
* Based on the following message, disable tagged command queueing for allmsmith1998-02-161-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Iomaga Jaz drives. From: Steve Logue <stevel@mail.cdsnet.net> To: freebsd-current@freebsd.org, freebsd-scsi@freebsd.org Subject: Jaz Drives / Tagged Command Queuing FreeBSD Lists, Due to my own problems as the owner of a Jaz drive, I have gotten word from Iomega that confirms the state of Tagged Command Queuing as the underlying problem. There is an error in all Jaz, and Jaz2 drives prior to BIOS level J.86 that has not shipped yet. Read the following, and make the appropriate corrections to your system present, and future: > Steve, > > I got a very fast response from the hardware engineer (Jaz and Jaz 2 > designer). The problem is this - The Jaz drive does not support > command queing, and revisions older than J.86 do not report it correctly. > For example, when your SCSI adapter says "I'm going to use command > queing" to the Jaz drive, the drive answers "OK, lets go", even though its > not supported. The J.86 drives will now answer "Sorry, command > queing is not supported". Iomega does not have any current plans to > support command queing. > > Thank's for your report, I will continue to forward it to the hardware > engineers. -STEVEl -- --------------------------------------------------------------------- Steve Logue http://home.cdsnet.net/~stevel Systems Integration nettek LLC --------------------------------------------------------------------- Submitted by: Steve Logue <stevel@mail.cdsnet.net>
* Staticize.eivind1998-02-091-2/+2
|
* Serves me right for committing code late at night...wollman1998-02-011-3/+9
| | | | | | Fix the SCIOCGETDEVINFO code so that it compiles, and while I'm at it, add support for human-readable device names so that I don't have to call devname(3) on the scd->dev to get it.
* Add a new ioctl, SCSIOCGETDEVINFO, which takes a device ID and uses itwollman1998-02-011-2/+16
| | | | | | | to look up information about that device. Right now, all it does is give back the dev_t for the device, if known, since that's all I needed, but hopefully the SCSI mavens will come up with a more generally useful structure.
* Make all file-system (MFS, FFS, NFS, LFS, DEVFS) related option new-style.eivind1998-01-249-9/+20
| | | | | | | | This introduce an xxxFS_BOOT for each of the rootable filesystems. (Presently not required, but encouraged to allow a smooth move of option *FS to opt_dontuse.h later.) LFS is temporarily disabled, and will be re-enabled tomorrow.
* Add SCSI-SCSI RAID from Infotrand as known deviceache1998-01-211-1/+5
|
OpenPOWER on IntegriCloud