Commit Graph

752 Commits

Author SHA1 Message Date
ad 13499203a2 Two changes submitted by Sergey Svishchev <svs@ropnet.ru>:
- Don't send START UNIT upon open if the drive is playing audio (PR 11768).
- If we receive sense indicating that the media changed, retry (PR 8326).
2001-08-20 11:31:10 +00:00
ad ab54b70cae Cosmetic change. 2001-08-20 11:20:51 +00:00
ad 52449ef3bf Medium Not Present has number of defined ASCQs. Pointed out by Sergey
Svishchev <svs@ropnet.ru> in PR 8326.
2001-08-20 07:47:01 +00:00
ad d861b4992a Add descriptions for Medium Not Present ASCQs. 2001-08-20 07:41:14 +00:00
yamt 75ed9ccf7f fix scsipi_target_detach with wildcard target. 2001-08-19 14:05:13 +00:00
eeh 0cbe02398a Add support for smaller sector sizes so we can mount ffs filesystems. 2001-08-15 22:21:01 +00:00
bouyer f2cacede49 Adn scsipi_target_detach() and scsipi_thread_call_callback() as discussed
on tech-kern. scsipi_target_detach() accept wildcard target/lun as requested.
2001-07-18 20:19:24 +00:00
thorpej aafd882086 bcmp -> memcmp 2001-07-18 18:27:08 +00:00
thorpej 38bdc75312 bcopy -> memcpy 2001-07-18 18:25:41 +00:00
thorpej 03746a443a bzero -> memset 2001-07-18 18:21:04 +00:00
bouyer c399f05222 scsipi_set_xfer_mode(): issue a ADAPTER_REQ_SET_XFER_MODE request to adapter
only if we succesfully attached at last one device for this I_T.
2001-07-13 20:00:23 +00:00
wiz cc0b68092e Correct various misspellings of 'transfer' and inflected forms. 2001-07-08 18:06:42 +00:00
ross f54fe9f3b1 compile tweak for non-SCSIVERBOSE 2001-06-27 23:14:26 +00:00
bouyer 6a91469e6d Some ATAPI CD occasionally reports "ATA illegal indication length" for
a request sense command, but the sense is properly transfered anyway.
Ignore the error for this case.
2001-06-27 13:22:36 +00:00
bouyer 4fadc33006 Better diagnostic when a REQUEST SENSE is terminated with CHECK CONDITION. 2001-06-27 13:21:30 +00:00
bouyer 90d0e67408 Add a XS_CTL_SILENT_NODEV flag: if the sense info is "not ready, medium
not present" don't print any message but still return ENODEV.
Use this in cd driver to allow open of character raw partition even if
the drive is empty (older drives fails at LOAD_UNLOAD time, newer
ones fail at TEST_UNIT_READY time).
2001-06-26 15:32:02 +00:00
bouyer f47d097cf5 Make it compile with SCSIPI_DEBUG 2001-06-26 12:46:56 +00:00
wiz 15223234d7 Fix some typos in comments. 2001-06-24 10:18:13 +00:00
lukem b7f8c7eb86 delint 2001-06-19 10:43:26 +00:00
bouyer 49ed2592ce Add my copyrigth and remove the older ones. None of the original authors of
the st driver wrote something in this file.
2001-06-18 09:41:06 +00:00
bouyer 0a63f01fef Snapshot of ATAPI tapes support. Known to be able to read/write to tape with:
st0 at atapibus0 drive 1: <Seagate STT8000A, , 5.51> type 1 sequential
removable
Major changes may still happen in order to properly support other ATAPI
tape drives.
2001-06-18 09:05:05 +00:00
bjh21 4bc5a3b295 Add explicit support for IDE and SCSI adaptors which don't support interrupts.
On such adaptors, all transfers are done in polling mode.

OK'ed by Manuel on tech-kern.
2001-06-13 18:17:38 +00:00
pk b9e61207ff Add nolun/nosync quirk for "IBM CDRM00201 !F"
See PR#13031.
2001-06-11 13:58:18 +00:00
bouyer 88f3192778 Fix typo in sddump() which caused core dumps to fail with ENXIO. 2001-06-01 08:39:54 +00:00
tron 264d7e1264 Install "dev/scsipi/scsipi_cd.h" again because it is e.g. used by the
CD player include in version 2.x of the "kdemultimedia" package.
2001-05-31 21:54:07 +00:00
bouyer 708bb529d3 uninitialised variable (from Krister Walfridsson):
in st_cmprss(), init flags to 0 (never changed, but this should change soon
anyway, for ATAPI tapes support)
2001-05-30 20:28:17 +00:00
mrg c13e3a6693 use _KERNEL_OPT 2001-05-30 11:40:35 +00:00
chs ffcbc851a0 fix some problems in sddump() with uninitialized variables. 2001-05-29 01:02:39 +00:00
bouyer 72b4ba8aed In scsipi_channel_thaw(), if the count drops to 0, call scsipi_run_queue(). 2001-05-23 15:50:32 +00:00
chs fae4d6d720 fix typo in previous revision so that the scsi code compiles again. 2001-05-23 02:16:19 +00:00
mjacob b9eb902304 Make SDRETRIES an option you can dig out of opt_scsi.h.
Add SD_IO_TIMEOUT (an option in opt_scsi.h) also, which defaults to the
normal 60 * 1000 timeout for normal read/write commamds. This allows you
to shorten or lengthen the timeout as needed.
2001-05-22 18:59:57 +00:00
mjacob 38f6ada8b6 Add SDRETRIES and SD_IO_TIMEOUT option for sd. 2001-05-22 18:58:15 +00:00
bouyer 2a604875d6 Remove one extra byte from scsipi_mode_select; pointed out by Juergen
Hannken-Illjes.
2001-05-22 15:14:24 +00:00
mjacob 3462fe5d99 Remove reference to adapter_q in scsipi structure. Comment about the
usage of channel_q.
2001-05-21 15:50:46 +00:00
christos 2ed6d9dbf7 PR/12991: Dave Huang: DVD ioctls don't work because we send the wrong size
CDB (16 instead of 12).
2001-05-20 21:07:58 +00:00
is 5c9dc5b0d0 When abusing structs to describe on-wire (or in-hardware) data structures,
they need to be packed. (Without this, breaks on at least m68k.)
2001-05-18 21:11:43 +00:00
enami e4334b830d Don't capitalize the word sync or async. It's inconsistient with other
messages.
2001-05-18 16:25:07 +00:00
bouyer 8b5bf22895 Workaround for broken drives (explained to me by Chris G. Demetriou):
some devices can't handle tag number larger than some values and always
reject commands with QUEUE FULL if the tag number is larger than this.
Under some circonstances the scsipi system may not decrease periph_openings
(as a workaround of other odd behavior) and we may end up requeuing the command
with a hight tag value again, and the driver could loop on this.
Workaround: in case of queue full, decrease periph_openings to
min(periph_active - 1, periph_openings - 1) so that, after some iteration,
periph_openings is less than the max tag value acceptable by the device.

Solves the problem with tagged queuing on ncr53c9x for me.
2001-05-18 12:56:28 +00:00
bouyer 7ddcb8122d SDEV_DB -> SCSIPI_DB 2001-05-17 20:02:56 +00:00
lukem b6b83e2ec3 delint; use MAX(sizeof(..),sizeof(..)) instead of max(...) for array size 2001-05-15 14:03:27 +00:00
lukem 13a9902fc6 delint: can't have an empty case item at the end of a switch; need a ; at least 2001-05-15 13:53:20 +00:00
bouyer bc980d7eba Use SCSI/ATAPI common definition for MODE_{SELECT,SENSE}{,_BIG}. Define
functions to send theses commands in scsipi_base.c and use them instead
of ad-hoc commands setups.
2001-05-14 20:35:27 +00:00
drochner 06fc2f85cc Since __HAVE_OLD_DISKLABEL, DISKMINOR(u, p) isn't continuous over "p"
anymore. So we can't pass a range to vdevgone() but have to loop over the
partitions explicitely.
(otherwise the next device unit will be killed)
2001-05-06 18:30:56 +00:00
hannken 3446a61cb3 Fix a typo from thorpej_scsipi merge. No-sense information with retval == 0
should only print if SCSIPI_DEBUG is defined.
2001-05-06 11:31:08 +00:00
bouyer 27155d9a6d Add an ATAPI front-end to the st driver. Completely untested for now,
but st at scsi should still work :)
2001-05-04 07:48:56 +00:00
bouyer 28d47d8db3 Use same type for first field of struct ata_atapi_attach and struct
scsipi_channel, so umass has better chances of working on big-endian systems.
2001-05-02 09:47:45 +00:00
lukem 85772a1cef remove some lint 2001-04-30 02:34:58 +00:00
tsutsui 862125c057 Don't forget to set XS_CTL_DATA_OUT (that was removed in previous). 2001-04-28 09:33:25 +00:00
thorpej 335ac52a5b Use simple tags for read and write, unless B_ORDERED is set, in
which case we use an ordered tag.
2001-04-28 04:11:31 +00:00
bouyer 74b15b27a2 Don't forget to call psw_done() ! 2001-04-27 21:36:58 +00:00