History log of /src/sys/dev/scsipi/scsipi_all.h |
Revision | | Date | Author | Comments |
1.35 |
| 10-Feb-2025 |
jakllsch | Fix misspelling of unused #define
|
1.34 |
| 09-Nov-2024 |
mlelstv | Add VPD descriptor definitions.
|
1.33 |
| 25-Dec-2007 |
perry | Convert many of the uses of __attribute__ to equivalent __packed, __unused and __dead macros from cdefs.h
|
1.32 |
| 01-Dec-2006 |
martin | branches: 1.32.24; 1.32.30; 1.32.34; 1.32.38; On Christos' request, reinstantiate the packed->__packed__ part of the backed out change.
|
1.31 |
| 01-Dec-2006 |
martin | Back out align(4) for all struct decls - it breaks various things all over the tree (for example esiop on sparc64 won't boot any more).
|
1.30 |
| 30-Nov-2006 |
christos | PR/34202: Dave Huang: Accessing cd device on alpha causes kernel trap
From the PR: Since struct scsipi_read_discinfo_data is an odd number of bytes long (35 bytes), ti ends up being unaligned. wdc_datain_pio() uses bus_space_read_multi_4() to read the response from the drive, and since ti is unaligned, it causes an unaligned access fault.
Add __aligned__(4) to all the structures.
|
1.29 |
| 11-Dec-2005 |
christos | branches: 1.29.20; 1.29.22; merge ktrace-lwp.
|
1.28 |
| 21-Feb-2005 |
thorpej | branches: 1.28.4; Part 1 of a cleanup pass over the SCSI subsystem. The aim is to name everything "scsi_*", since we really are talking about the SCSI command set, ATAPI transport not withstanding. Improve the names of many structures, and prepend "SCSI_" onto all SCSI command opcodes. Place items described by the SCSI Primary Commands document into scsi_spc.h.
|
1.27 |
| 01-Feb-2005 |
reinoud | Backing out changes to clean up scsipi. I was pointed out there were problems i hadn't seen. To prevent lossage i'd decided to back off all changes and let them be reviewed on tech-kern.
|
1.26 |
| 31-Jan-2005 |
reinoud | Part of the cleanup of sys/scsipi's use of types; rename all u_int* to uint* and change the u_long's to uint32_t's where possible. Note that the iocl definitions/hooks have to be ulong (or u_long) or they'll bomb out.
|
1.25 |
| 16-Oct-2003 |
mycroft | branches: 1.25.8; 1.25.10; Do a 36-byte SCSI 2 inquiry first, and iff that returns an additional length >32 do a 74-byte inquiry. Fixes problems with devices that barf on longer inquiries. (Linux uses 36 bytes almost everywhere, as a data point.)
|
1.24 |
| 08-Sep-2003 |
mycroft | Perform the exorcism on scsipi_mode_select() too.
|
1.23 |
| 08-Sep-2003 |
mycroft | Exorcise something evil and wrong in scsipi_mode_sense().
|
1.22 |
| 19-Nov-2001 |
soren | branches: 1.22.16; Remove duplicate struct scsipi_start_stop.
|
1.21 |
| 02-Sep-2001 |
thorpej | Comment what the PF bit means in the MODE SELECT command, and define a scsipi_mode_page_header, which has the common fields (page code and page length) of all mode pages.
|
1.20 |
| 02-Sep-2001 |
thorpej | Centralize the definition of the page code mask and page-savable bit in the pages returned by MODE SENSE.
|
1.19 |
| 22-May-2001 |
bouyer | branches: 1.19.2; Remove one extra byte from scsipi_mode_select; pointed out by Juergen Hannken-Illjes.
|
1.18 |
| 18-May-2001 |
is | When abusing structs to describe on-wire (or in-hardware) data structures, they need to be packed. (Without this, breaks on at least m68k.)
|
1.17 |
| 14-May-2001 |
bouyer | 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.
|
1.16 |
| 25-Apr-2001 |
bouyer | Pull up the thorpej_scsipi branch to main branch. This is a completely rewritten scsipi_xfer execution engine, and the associated changes to HBA drivers. Overview of changes & features: - All xfers are queued in the mid-layer, rather than doing so in an ad-hoc fashion in individual adapter drivers. - Adapter/channel resource management in the mid-layer, avoids even trying to start running an xfer if the adapter/channel doesn't have the resources. - Better communication between the mid-layer and the adapters. - Asynchronous event notification mechanism from adapter to mid-layer and peripherals. - Better peripheral queue management: freeze/thaw, sorted requeueing during recovery, etc. - Clean separation of peripherals, adapters, and adapter channels (no more scsipi_link). - Kernel thread for each scsipi_channel makes error recovery much easier (no more dealing with interrupt context when recovering from an error). - Mid-layer support for tagged queueing: commands can have the tag type set explicitly, tag IDs are allocated in the mid-layer (thus eliminating the need to use buggy tag ID allocation schemes in many adapter drivers). - support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command will be requeued, or a REQUEST SENSE will be sent as appropriate.
Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
|
1.15 |
| 15-May-2000 |
dante | branches: 1.15.6; Add few peripheral device type Remove "???" from T_IT8_1/2. They actually are pre-press devices for graphic arts as described by ASC IT8 Zeros and blanks scsipi_inquiry_data from byte 58 to byte 74 if additional_length is less than 58
|
1.14 |
| 14-May-2000 |
dante | Fix a typo
|
1.13 |
| 14-May-2000 |
dante | Change scsipi_inquiry_data strucure to be ANSI SPC-2 rev16 compliant
|
1.12 |
| 30-Dec-1998 |
dbj | branches: 1.12.8; Added parens around ADD_BYTES_LIM() macro definition to protects its use of the low precedence ?: conditional operator. This fixes a bug in scsipi_interpret_sense when printing out debugging info.
|
1.11 |
| 19-Nov-1998 |
thorpej | Protect against multiple inclusion.
|
1.10 |
| 11-Jul-1998 |
mjacob | Clarify that Sense Key 1 is a "RECOVERED ERROR"- not just an error.
|
1.9 |
| 01-Jul-1998 |
mjacob | oh, for goodness sake, define the bloody Sense Keys...
|
1.8 |
| 24-Jun-1998 |
mjacob | add the SCSI-2/SCSI-3 Group ID definitions
|
1.7 |
| 13-Feb-1998 |
enami | Backout previous change, and rather, remove all protection but the one actually currently required. Suggested by Charles M. Hannum.
|
1.6 |
| 13-Feb-1998 |
enami | Fix or add protection for mutiple inclusion.
|
1.5 |
| 03-Oct-1997 |
thorpej | Clean up and comment the device types, and add the "enclosure services", "storage array", and "IT8" types.
|
1.4 |
| 02-Oct-1997 |
mjacob | kern/3022: make sure that printing sense info in SCSIDEBUG case starts at the right place and contains the right number of bytes.
|
1.3 |
| 01-Oct-1997 |
enami | Cosmetic changes to keep coding style consistency in this directory;
- Indent with tab of width 8. - Use four column to indent continuation line. - Fold long line if possible. - Use return (xx) instead of return xx. - Compare pointer against NULL instead of testing like boolean. - Delete whitespace at the end of line. - Delete whitespace in front of function call operator. - Delete whitespace after cast. - Dereference a pointer to function explicitly. - Add an empty line after local variable declaration. - Use NULL instead of (char *)0. - Dont use block for single statement.
|
1.2 |
| 27-Aug-1997 |
bouyer | branches: 1.2.2; Merge scsipi branch in the mainline. This add support for ATAPI devices (currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2 busses to which devices can attach (scsibus and atapibus). This needed to change some include files and structure names in the low level scsi drivers.
|
1.1 |
| 01-Jul-1997 |
bouyer | branches: 1.1.2; file scsipi_all.h was initially added on branch bouyer-scsipi.
|
1.1.2.2 |
| 01-Jul-1997 |
thorpej | Purely cosmetic formatting changes: some spaces -> tabs, indenting consistency in prototypes.
|
1.1.2.1 |
| 01-Jul-1997 |
bouyer | New merged scsi/atapi code. Tested on i386 and sparc. Commiting to a branch for now, so that it can be tested on other ports too. The config sheme is as follow: New merged scsi/atapi code. Tested on i386 and sparc. Commiting to a branch for now, so that it can be tested on other ports too. The config sheme is as follow: scsibus at aha sd at scsibus cd at scsibus atapibus at wdc cd at atapibus cd has bus-specific config and function front-end in scsicd.c and atapicd.c The call to theses functions from cd.c is conditionned to NSCSICD and NATAPICD (all defined in cd.h by config).
|
1.2.2.3 |
| 14-Oct-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.2.2.2 |
| 27-Aug-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.2.2.1 |
| 27-Aug-1997 |
thorpej | file scsipi_all.h was added on branch marc-pcmcia on 1997-08-27 23:33:22 +0000
|
1.12.8.2 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago A i386 GENERIC kernel compiles without the siop, ahc and bha drivers (will be updated later). i386 IDE/ATAPI and ncr work, as well as sparc/esp_sbus. alpha should work as well (untested yet). siop, ahc and bha will be updated once I've updated the branch to current -current, as well as machine-dependant code.
Main changes to the scsipi code itself: - add a scsipi_channel->type to allow umass to attach to both atapibus and scsibus. Will die when IDE is converted from ata_atapi_attach to scsipi_channel/scsipi_adapter - Add a chan_defquirks to scsipi_channel so that adapters can pass a default set of quirks to be set for each device attached - add adapt_getgeom and adapt_accesschk callbacks
|
1.12.8.1 |
| 19-Oct-1999 |
thorpej | Completely rewritten scsipi_xfer execution engine: - All xfers are queued in the mid-layer, rather than doing so in an ad-hoc fashion in individual adapter drivers. - Adapter/channel resource management in the mid-layer, avoids even trying to start running an xfer if the adapter/channel doesn't have the resources. - Better communication between the mid-layer and the adapters. - Asynchronous event notification mechanism from adapter to mid-layer and peripherals. - Better peripheral queue management: freeze/thaw, sorted requeueing during recovery, etc. - Clean separation of peripherals, adapters, and adapter channels (no more scsipi_link). - Kernel thread for each scsipi_channel makes error recovery much easier (no more dealing with interrupt context when recovering from an error). - Mid-layer support for tagged queueing: commands can have the tag type set explicitly, tag IDs are allocated in the mid-layer (thus eliminating the need to use buggy tag ID allocation schemes in many adapter drivers).
There is a lot more work to do, but this correctly functions for the most part on several file servers I run.
|
1.15.6.3 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.15.6.2 |
| 21-Sep-2001 |
nathanw | Catch up to -current.
|
1.15.6.1 |
| 21-Jun-2001 |
nathanw | Catch up to -current.
|
1.19.2.2 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.19.2.1 |
| 13-Sep-2001 |
thorpej | Update the kqueue branch to HEAD.
|
1.22.16.4 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.22.16.3 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.22.16.2 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.22.16.1 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.25.10.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.25.8.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.28.4.2 |
| 21-Jan-2008 |
yamt | sync with head
|
1.28.4.1 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.29.22.1 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.29.20.1 |
| 12-Jan-2007 |
ad | Sync with head.
|
1.32.38.1 |
| 02-Jan-2008 |
bouyer | Sync with HEAD
|
1.32.34.1 |
| 26-Dec-2007 |
ad | Sync with head.
|
1.32.30.1 |
| 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.32.24.1 |
| 09-Jan-2008 |
matt | sync with HEAD
|