History log of /src/sys/dev/scsipi/st_atapi.c |
Revision | | Date | Author | Comments |
1.31 |
| 14-Jul-2016 |
msaitoh | - Use aprint*() instead of printf() in xxx_attach(). - Add missing aprint_naive("\n"); - KNF
|
1.30 |
| 24-Aug-2015 |
pooka | would you like some freshly ground _KERNEL_OPT with that? yes? excellent choice, sir/madam.
|
1.29 |
| 19-Apr-2012 |
bouyer | branches: 1.29.2; 1.29.16; Expand struct scsipi_bustype {} in a ABI-backward-compatible way to pass more informations about the bus: - bustype_type has 2 different bytes, one holding the existing SCSIPI_BUSTYPE_* (scsi, atapi, ata), and one for a per-SCSIPI_BUSTYPE_* subtype. Introduce macros to build or extract bustype_type. - for SCSIPI_BUSTYPE_SCSI, define subtypes for parallel SCSI, Fibre Channel, SAS and USB, to specify the transport method. SCSIPI_BUSTYPE_SCSI_PSCSI is 0 so that bustype_type value doesn't change for existing code - for non-SCSIPI_BUSTYPE_SCSI busses there's no defined subtype yet, so the bustype_type value doesn't change. - provide scsi_fc_bustype, scsi_sas_bustype and scsi_usb_bustype along with scsi_bustype to be used by bus driver where appropriate - scsipi_print_xfer_mode(): more existing code under a (SCSIPI_BUSTYPE_SCSI, SCSIPI_BUSTYPE_SCSI_PSCSI) case, as sync/wide parameters only make sense for parallel SCSI. For (SCSIPI_BUSTYPE_SCSI, SCSIPI_BUSTYPE_SCSI_FC) and (SCSIPI_BUSTYPE_SCSI, SCSIPI_BUSTYPE_SCSI_SAS), only print tagged queing status if enabled. Just be silent for other bustypes.
This change is prompted by this problem: right now, FC (e.g. isp(4)) and SAS (e.g. mfi(4)) don't do anything for ADAPTER_REQ_SET_XFER_MODE, and especially never call scsipi_async_event(ASYNC_EVENT_XFER_MODE), so sd(4) always runs untagged. Doing a scsipi_async_event(ASYNC_EVENT_XFER_MODE) with appropriate parameters is enough to enable tagged queuing, but then scsipi will print: sd0: async, 8-bit transfers, tagged queueing which is harmless (async, 8-bit transfers doens't make sense on SAS anyway) but will confuse users. With this change scsipi will only print: sd0: tagged queueing which is correct.
In the long run, knowning the underlying transport in scsipi will allow better handling of device which are not parallel SCSI.
Another change adding an extra callback to struct scsipi_bustype {} will come (so that scsipi_print_xfer_mode(), which is SCSI-specific, can be moved out of scsipi_base, and split into per-subtype callback), but this will break kernel ABI and so is not suitable for netbsd-6, so will be commmited later. The above is enough to get tagged queuing on FC and SAS in netbsd-6.
|
1.28 |
| 28-Feb-2012 |
mbalmer | Convert st(4) to device_t, while here clean up the code and use uintXX_t instead of u_intXX_t.
|
1.27 |
| 02-Feb-2012 |
tls | branches: 1.27.2; Entropy-pool implementation move and cleanup.
1) Move core entropy-pool code and source/sink/sample management code to sys/kern from sys/dev.
2) Remove use of NRND as test for presence of entropy-pool code throughout source tree.
3) Remove use of RND_ENABLED in device drivers as microoptimization to avoid expensive operations on disabled entropy sources; make the rnd_add calls do this directly so all callers benefit.
4) Fix bug in recent rnd_add_data()/rnd_add_uint32() changes that might have lead to slight entropy overestimation for some sources.
5) Add new source types for environmental sensors, power sensors, VM system events, and skew between clocks, with a sample implementation for each.
ok releng to go in before the branch due to the difficulty of later pullup (widespread #ifdef removal and moved files). Tested with release builds on amd64 and evbarm and live testing on amd64.
|
1.26 |
| 06-Dec-2009 |
dyoung | branches: 1.26.12; 1.26.16; Delete do-nothing device-activation hooks.
|
1.25 |
| 21-Oct-2009 |
rmind | Remove uarea swap-out functionality:
- Addresses the issue described in PR/38828. - Some simplification in threading and sleepq subsystems. - Eliminates pmap_collect() and, as a side note, allows pmap optimisations. - Eliminates XS_CTL_DATA_ONSTACK in scsipi code. - Avoids few scans on LWP list and thus potentially long holds of proc_lock. - Cuts ~1.5k lines of code. Reduces amd64 kernel size by ~4k. - Removes __SWAP_BROKEN cases.
Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on acorn26 (thanks to <bjh21>).
Discussed on <tech-kern>, reviewed by <ad>.
|
1.24 |
| 19-Oct-2009 |
bouyer | Remove closes 3 & 4 from my licence. Lots of thanks to Soren Jacobsen for the booring work !
|
1.23 |
| 15-Aug-2009 |
pgoyette | 1. Move the mode_select functionality into common code (in st.c) and invoke the common routine for both scsi and atapi tapes.
2. Replace a numeric constant with some sizeof's when calculating the size of the mode_select command buffer, clear the entire buffer, and KASSERT to ensure the page_0_size loaded from quirk table is valid.
3. Add a quirk for my Seagate Travan-40 tape drive.
As discussed on tech-kern@
Addresses my PR kern/34832
|
1.22 |
| 12-May-2009 |
cegger | struct device * -> device_t, no functional changes intended.
|
1.21 |
| 12-May-2009 |
cegger | struct cfdata * -> cfdata_t, no functional changes intended.
|
1.20 |
| 16-Nov-2006 |
christos | branches: 1.20.52; 1.20.68; __unused removal on arguments; approved by core.
|
1.19 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.18 |
| 30-Mar-2006 |
thorpej | branches: 1.18.8; 1.18.10; Use device_private().
|
1.17 |
| 11-Dec-2005 |
christos | branches: 1.17.4; 1.17.6; 1.17.8; 1.17.10; 1.17.12; merge ktrace-lwp.
|
1.16 |
| 29-May-2005 |
christos | branches: 1.16.2; - Sprinkle const - Avoid variable shadowing. - Eliminate some caddr_t abuse.
|
1.15 |
| 27-Feb-2005 |
perry | nuke trailing whitespace
|
1.14 |
| 28-Oct-2004 |
yamt | branches: 1.14.4; 1.14.6; move buffer queue related stuffs from buf.h to their own header, bufq.h.
|
1.13 |
| 21-Aug-2004 |
thorpej | Use ANSI function decls and make use of static.
|
1.12 |
| 05-Oct-2003 |
bouyer | Remove references to University of California from my copyright notices.
|
1.11 |
| 02-Oct-2002 |
thorpej | branches: 1.11.6; Add trailing ; to CFATTACH_DECL.
|
1.10 |
| 30-Sep-2002 |
thorpej | Use CFATTACH_DECL().
|
1.9 |
| 27-Sep-2002 |
thorpej | Declare all cfattach structures const.
|
1.8 |
| 23-Apr-2002 |
bouyer | More copyright fixes, pointed out by Thomas. Thanks !
|
1.7 |
| 07-Dec-2001 |
yamt | add detach support for st.
|
1.6 |
| 01-Dec-2001 |
bouyer | Various quirks for the ATAPI OnStream DI-30, mostly from the FreeBSD driver. Many thanks to Chris Pinnock for giving me remote access to his hardware.
|
1.5 |
| 15-Nov-2001 |
lukem | don't need <sys/types.h> when including <sys/param.h>
|
1.4 |
| 13-Nov-2001 |
lukem | add RCSIDs
|
1.3 |
| 18-Jun-2001 |
bouyer | branches: 1.3.2; 1.3.4; Add my copyrigth and remove the older ones. None of the original authors of the st driver wrote something in this file.
|
1.2 |
| 18-Jun-2001 |
bouyer | 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.
|
1.1 |
| 04-May-2001 |
bouyer | Add an ATAPI front-end to the st driver. Completely untested for now, but st at scsi should still work :)
|
1.3.4.3 |
| 10-Oct-2002 |
jdolecek | sync kqueue with -current; this includes merge of gehenna-devsw branch, merge of i386 MP branch, and part of autoconf rototil work
|
1.3.4.2 |
| 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.3.4.1 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.3.2.6 |
| 18-Oct-2002 |
nathanw | Catch up to -current.
|
1.3.2.5 |
| 20-Jun-2002 |
nathanw | Catch up to -current.
|
1.3.2.4 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.3.2.3 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.3.2.2 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.3.2.1 |
| 18-Jun-2001 |
nathanw | file st_atapi.c was added on branch nathanw_sa on 2001-06-21 20:06:06 +0000
|
1.11.6.7 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.11.6.6 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.11.6.5 |
| 02-Nov-2004 |
skrll | Sync with HEAD.
|
1.11.6.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.11.6.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.11.6.2 |
| 25-Aug-2004 |
skrll | Sync with HEAD.
|
1.11.6.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.14.6.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.14.4.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.16.2.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.16.2.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.17.12.1 |
| 31-Mar-2006 |
tron | Merge 2006-03-31 NetBSD-current into the "peter-altq" branch.
|
1.17.10.1 |
| 19-Apr-2006 |
elad | sync with head.
|
1.17.8.1 |
| 01-Apr-2006 |
yamt | sync with head.
|
1.17.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.17.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.18.10.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.18.10.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.18.8.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.20.68.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.20.52.3 |
| 11-Mar-2010 |
yamt | sync with head
|
1.20.52.2 |
| 19-Aug-2009 |
yamt | sync with head.
|
1.20.52.1 |
| 16-May-2009 |
yamt | sync with head
|
1.26.16.5 |
| 29-Apr-2012 |
mrg | sync to latest -current.
|
1.26.16.4 |
| 06-Mar-2012 |
mrg | sync to -current
|
1.26.16.3 |
| 06-Mar-2012 |
mrg | sync to -current
|
1.26.16.2 |
| 04-Mar-2012 |
mrg | sync to latest -current.
|
1.26.16.1 |
| 18-Feb-2012 |
mrg | merge to -current.
|
1.26.12.2 |
| 23-May-2012 |
yamt | sync with head.
|
1.26.12.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.27.2.2 |
| 23-Apr-2012 |
riz | Pull up following revision(s) (requested by bouyer in ticket #192): sys/dev/scsipi/cd.c: revision 1.307 sys/dev/scsipi/scsiconf.c: revision 1.266 sys/dev/scsipi/sd.c: revision 1.298 sys/dev/scsipi/st_scsi.c: revision 1.35 sys/dev/scsipi/atapiconf.c: revision 1.85 sys/dev/scsipi/scsipiconf.h: revision 1.120 sys/dev/usb/umass_scsipi.c: revision 1.44 sys/dev/scsipi/scsiconf.h: revision 1.57 sys/dev/scsipi/st_atapi.c: revision 1.29 sys/dev/scsipi/scsipi_base.c: revision 1.158 sys/dev/scsipi/st.c: revision 1.221 sys/dev/scsipi/scsipi_ioctl.c: revision 1.67 Expand struct scsipi_bustype {} in a ABI-backward-compatible way to pass more informations about the bus: - bustype_type has 2 different bytes, one holding the existing SCSIPI_BUSTYPE_* (scsi, atapi, ata), and one for a per-SCSIPI_BUSTYPE_* subtype. Introduce macros to build or extract bustype_type. - for SCSIPI_BUSTYPE_SCSI, define subtypes for parallel SCSI, Fibre Channel, SAS and USB, to specify the transport method. SCSIPI_BUSTYPE_SCSI_PSCSI is 0 so that bustype_type value doesn't change for existing code - for non-SCSIPI_BUSTYPE_SCSI busses there's no defined subtype yet, so the bustype_type value doesn't change. - provide scsi_fc_bustype, scsi_sas_bustype and scsi_usb_bustype along with scsi_bustype to be used by bus driver where appropriate - scsipi_print_xfer_mode(): more existing code under a (SCSIPI_BUSTYPE_SCSI, SCSIPI_BUSTYPE_SCSI_PSCSI) case, as sync/wide parameters only make sense for parallel SCSI. For (SCSIPI_BUSTYPE_SCSI, SCSIPI_BUSTYPE_SCSI_FC) and (SCSIPI_BUSTYPE_SCSI, SCSIPI_BUSTYPE_SCSI_SAS), only print tagged queing status if enabled. Just be silent for other bustypes. This change is prompted by this problem: right now, FC (e.g. isp(4)) and SAS (e.g. mfi(4)) don't do anything for ADAPTER_REQ_SET_XFER_MODE, and especially never call scsipi_async_event(ASYNC_EVENT_XFER_MODE), so sd(4) always runs untagged. Doing a scsipi_async_event(ASYNC_EVENT_XFER_MODE) with appropriate parameters is enough to enable tagged queuing, but then scsipi will print: sd0: async, 8-bit transfers, tagged queueing which is harmless (async, 8-bit transfers doens't make sense on SAS anyway) but will confuse users. With this change scsipi will only print: sd0: tagged queueing which is correct. In the long run, knowning the underlying transport in scsipi will allow better handling of device which are not parallel SCSI. Another change adding an extra callback to struct scsipi_bustype {} will come (so that scsipi_print_xfer_mode(), which is SCSI-specific, can be moved out of scsipi_base, and split into per-subtype callback), but this will break kernel ABI and so is not suitable for netbsd-6, so will be commmited later. The above is enough to get tagged queuing on FC and SAS in netbsd-6.
|
1.27.2.1 |
| 02-Mar-2012 |
riz | Pull up following revision(s) (requested by mbalmer in ticket #64): sys/dev/scsipi/stvar.h: revision 1.24 sys/dev/scsipi/st_scsi.c: revision 1.34 sys/dev/scsipi/st_atapi.c: revision 1.28 sys/dev/scsipi/st.c: revision 1.220 Convert st(4) to device_t, while here clean up the code and use uintXX_t instead of u_intXX_t.
|
1.29.16.2 |
| 05-Oct-2016 |
skrll | Sync with HEAD
|
1.29.16.1 |
| 22-Sep-2015 |
skrll | Sync with HEAD
|
1.29.2.1 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|