summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys/scsi
diff options
context:
space:
mode:
authortaylor <none@none>2006-05-19 07:19:16 -0700
committertaylor <none@none>2006-05-19 07:19:16 -0700
commit7c70629e029d553bf3c4b18894d5fe1b224f420d (patch)
tree75fc5c113cd654c266697b768766b049c0c71070 /usr/src/uts/common/sys/scsi
parentfd5e9823d4460a5415f67ed45c1ba18531689ecc (diff)
downloadillumos-gate-7c70629e029d553bf3c4b18894d5fe1b224f420d.tar.gz
6422444 update inquiry.h to reflect latest spc-3 device types
6422447 remove some unused scsi headers --HG-- rename : usr/src/uts/common/sys/dktp/hba.h => deleted_files/usr/src/uts/common/sys/dktp/hba.h rename : usr/src/uts/common/sys/scsi/impl/pkt_wrapper.h => deleted_files/usr/src/uts/common/sys/scsi/impl/pkt_wrapper.h rename : usr/src/uts/intel/sys/dktp/cdtypes.h => deleted_files/usr/src/uts/intel/sys/dktp/cdtypes.h rename : usr/src/uts/intel/sys/dktp/scdk.h => deleted_files/usr/src/uts/intel/sys/dktp/scdk.h rename : usr/src/uts/intel/sys/dktp/scdkwatch.h => deleted_files/usr/src/uts/intel/sys/dktp/scdkwatch.h rename : usr/src/uts/intel/sys/dktp/sctarget.h => deleted_files/usr/src/uts/intel/sys/dktp/sctarget.h rename : usr/src/uts/intel/sys/dktp/tgcd.h => deleted_files/usr/src/uts/intel/sys/dktp/tgcd.h rename : usr/src/uts/intel/sys/dktp/tgpassthru.h => deleted_files/usr/src/uts/intel/sys/dktp/tgpassthru.h
Diffstat (limited to 'usr/src/uts/common/sys/scsi')
-rw-r--r--usr/src/uts/common/sys/scsi/generic/inquiry.h22
-rw-r--r--usr/src/uts/common/sys/scsi/impl/pkt_wrapper.h240
2 files changed, 13 insertions, 249 deletions
diff --git a/usr/src/uts/common/sys/scsi/generic/inquiry.h b/usr/src/uts/common/sys/scsi/generic/inquiry.h
index 65393e5eb5..fa2676747d 100644
--- a/usr/src/uts/common/sys/scsi/generic/inquiry.h
+++ b/usr/src/uts/common/sys/scsi/generic/inquiry.h
@@ -2,9 +2,8 @@
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
@@ -20,8 +19,8 @@
* CDDL HEADER END
*/
/*
- * Copyright (c) 1996-2000 by Sun Microsystems, Inc.
- * All rights reserved.
+ * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms.
*/
#ifndef _SYS_SCSI_GENERIC_INQUIRY_H
@@ -204,17 +203,22 @@ struct scsi_inquiry {
#define DTYPE_PROCESSOR 0x03
#define DTYPE_WORM 0x04
#define DTYPE_RODIRECT 0x05
-#define DTYPE_SCANNER 0x06
+#define DTYPE_SCANNER 0x06 /* obsolete */
#define DTYPE_OPTICAL 0x07
#define DTYPE_CHANGER 0x08
-#define DTYPE_COMM 0x09
+#define DTYPE_COMM 0x09 /* obsolete */
#define DTYPE_ARRAY_CTRL 0x0C
#define DTYPE_ESI 0x0D
-
+#define DTYPE_RBC 0x0E
+#define DTYPE_OCRW 0x0F
+#define DTYPE_BCC 0x10
+#define DTYPE_OSD 0x11
+#define DTYPE_ADC 0x12
/*
- * Device types 0x0E-0x1E are reserved
+ * Device types 0x13-0x1D are reserved in spc-3 (r23)
*/
+#define DTYPE_WELLKNOWN 0x1E
#define DTYPE_UNKNOWN 0x1F
#define DTYPE_MASK 0x1F
diff --git a/usr/src/uts/common/sys/scsi/impl/pkt_wrapper.h b/usr/src/uts/common/sys/scsi/impl/pkt_wrapper.h
deleted file mode 100644
index 5f5588b60e..0000000000
--- a/usr/src/uts/common/sys/scsi/impl/pkt_wrapper.h
+++ /dev/null
@@ -1,240 +0,0 @@
-/*
- * CDDL HEADER START
- *
- * The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
- *
- * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
- * or http://www.opensolaris.org/os/licensing.
- * See the License for the specific language governing permissions
- * and limitations under the License.
- *
- * When distributing Covered Code, include this CDDL HEADER in each
- * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
- * If applicable, add the following below this CDDL HEADER, with the
- * fields enclosed by brackets "[]" replaced with your own identifying
- * information: Portions Copyright [yyyy] [name of copyright owner]
- *
- * CDDL HEADER END
- */
-/*
- * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
- * Use is subject to license terms.
- */
-
-#ifndef _SYS_SCSI_IMPL_PKT_WRAPPER_H
-#define _SYS_SCSI_IMPL_PKT_WRAPPER_H
-
-#pragma ident "%Z%%M% %I% %E% SMI"
-
-/*
- * The information in this file should be private to each
- * particular Host Bus Adapter implementation, and should
- * not be relied upon in any way. This file will be removed
- * in a future release.
- */
-
-/*
- * Implementation specific SCSI definitions for wrapping around
- * the generic scsi command packet. The transport layer (host adapter)
- * intimately understands and uses the definitions here.
- */
-
-#include <sys/scsi/scsi_types.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define SC_XPKTP(X) ((struct target_private *)((X)->pkt_private))
-struct target_private {
- struct scsi_pkt *x_fltpktp; /* link to autosense packet */
- struct buf *x_bp; /* request buffer */
- union {
- struct buf *xx_rqsbp; /* request sense buffer */
- struct uscsi_cmd *xx_scmdp; /* user scsi command */
- } targ;
-
- daddr_t x_srtsec; /* starting sector */
- int x_seccnt; /* sector count */
- int x_byteleft; /* bytes left to do */
- int x_bytexfer; /* bytes xfered for this ops */
- int x_tot_bytexfer; /* total bytes xfered per cmd */
-
- ushort_t x_cdblen; /* cdb length */
- short x_retry; /* retry count */
- int x_flags; /* flags */
-
- opaque_t x_sdevp; /* backward ptr target unit */
- void (*x_callback)(); /* target drv internal cb func */
-};
-#define x_rqsbp targ.xx_rqsbp
-#define x_scmdp targ.xx_scmdp
-
-#if defined(__sparc)
-/*
- * Managing possibly discontiguous data segments
- *
- * It is theoretically possible for a SCSI target to
- * transfer data in a discontiguous fashion. In order
- * to manage this possibility in an efficient manner,
- * we'll define a bunch of structures for recording,
- * in various ways, the history of data transfers.
- *
- * The only time that this can get complicated is
- * when the target sends a MODIFY DATA POINTER message
- * that moves the active data pointer completely out
- * of bounds from a segment of data already transferred.
- *
- * The SAVE DATA POINTER and RESTORE POINTERS messages
- * typically only cause moving around within an already
- * defined segment.
- */
-
-/*
- * An arbitrary structure that describes a data segment.
- * This simply has a zero based offset and a count. In
- * the case of a set of truly discontiguous transfers,
- * a list of these things will be constructed as the
- * transfer progresses. At the end of such a transfer
- * some sorting and merging will then be done to then
- * figure out how much data was actually moved.
- *
- * Please note that this is purely to do with counting
- * how much data was moved and must bear absolutely no
- * relationship whatsoever to pointer or DMA addresses.
- */
-
-struct sd_seg {
- struct sd_seg *sd_next; /* next in a null terminated list */
- ulong_t sd_off; /* offset from 0 for this segment */
- ulong_t sd_cnt; /* size of this segment */
-};
-#endif /* defined(__sparc) */
-
-
-/*
- * The transport layer deals with things in terms of the following structure.
- * Note that the target driver's view of things is the scsi_pkt that is
- * enfolded as the first element of the following structure.
- */
-
-#if defined(__i386) || defined(__amd64)
-#define PKT_PRIV_LEN (sizeof (struct target_private))
-#define SCMD_PKTP(X) ((struct scsi_cmd *)(X))
-struct scsi_cmd {
- struct scsi_pkt cmd_pkt;
- ulong_t cmd_flags; /* flags from scsi_init_pkt */
- uint_t cmd_cflags; /* private hba CFLAG flags */
- struct scsi_cmd *cmd_cblinkp; /* link ptr for callback thread */
- ddi_dma_handle_t cmd_dmahandle; /* dma handle */
- union {
- ddi_dma_win_t d_dmawin; /* dma window */
- caddr_t d_addr; /* transfer address */
- } cm;
- ddi_dma_seg_t cmd_dmaseg;
- opaque_t cmd_private;
- uchar_t cmd_cdblen; /* length of cdb */
- uchar_t cmd_scblen; /* length of scb */
- uchar_t cmd_privlen; /* length of target private */
- uchar_t cmd_rqslen; /* len of requested rqsense */
- long cmd_totxfer; /* total transfer for cmd */
-/* keep target private at the end for allocation */
- uchar_t cmd_pkt_private[PKT_PRIV_LEN];
-
-};
-#define cmd_dmawin cm.d_dmawin
-#define cmd_addr cm.d_addr
-
-#else
-
-#define PKT_PRIV_LEN 8 /* preferred pkt_private length */
-#define SCMD_PKTP(X) ((struct scsi_cmd *)(X))
-
-struct scsi_cmd {
- struct scsi_pkt cmd_pkt; /* the generic packet itself */
- uchar_t *cmd_cdbp; /* active command pointer */
- uchar_t *cmd_scbp; /* active status pointer */
- ulong_t cmd_data; /* active data 'pointer' */
- ulong_t cmd_saved_data; /* saved data 'pointer' */
- ulong_t cmd_dmacount;
- struct sd_seg *cmd_dsegp; /* current data count seg */
- struct sd_seg cmd_dsegs; /* first data count segment */
- ddi_dma_handle_t cmd_dmahandle; /* dma handle */
- ddi_dma_cookie_t cmd_dmacookie; /* current dma cookie */
- long cmd_timeout; /* command timeout */
- union scsi_cdb cmd_cdb_un; /* 'generic' Sun cdb */
-#define cmd_cdb cmd_cdb_un.cdb_opaque
- ulong_t cmd_flags; /* private flags */
- uchar_t cmd_pkt_private[PKT_PRIV_LEN];
- uchar_t cmd_cdblen; /* length of cdb */
- uchar_t cmd_scblen; /* length of scb */
- uchar_t cmd_privlen; /* length of tgt private */
- uchar_t cmd_scb[STATUS_SIZE]; /* 4 byte scb */
- uchar_t cmd_reserved[1];
- struct scsi_cmd *cmd_forw; /* ready fifo que link */
- ushort_t cmd_age; /* cmd age (tagged queing) */
- uchar_t cmd_tag[2]; /* command tag */
-};
-#endif /* __i386 || __amd64 */
-
-/*
- * A note about the data 'pointers':
- *
- * XXXXXX
- *
- * A note about the cmd_cdb && cmd_scb structures:
- *
- * If the command allocation requested exceeds the size of CDB_SIZE,
- * the cdb will be allocated outside this structure (via kmem_alloc)
- * The same applies to cmd_scb.
- *
- */
-
-#if defined(__sparc)
-
-/*
- * define size of extended scsi cmd pkt (ie. includes ARQ)
- */
-#define EXTCMDS_STATUS_SIZE (sizeof (struct scsi_arq_status))
-#define EXTCMDS_SIZE (EXTCMDS_STATUS_SIZE + sizeof (struct scsi_cmd))
-#endif /* defined(__sparc) */
-
-/*
- * These are the defined flags for this structure.
- *
- * The host adapter may not change the state of any
- * flags that fall within the CFLAG_RESERVED area.
- * The rest of the flag area can be used by the host
- * adapter to get its job done, and the defines made
- * here for that area are just suggested usages.
- */
-#define CFLAG_RESERVED 0xff00 /* reserved read only area */
-#define CFLAG_CMDDISC 0x0001 /* cmd currently disconnected */
-#define CFLAG_WATCH 0x0002 /* watchdog time for this command */
-#define CFLAG_FINISHED 0x0004 /* command completed */
-#define CFLAG_CHKSEG 0x0008 /* check cmd_data within seg */
-#define CFLAG_COMPLETED 0x0010 /* completion routine called */
-#define CFLAG_PREPARED 0x0020 /* pkt has been init'ed */
-#define CFLAG_IN_TRANSPORT 0x0040 /* in use by host adapter driver */
-#define CFLAG_TRANFLAG 0x00ff /* covers transport part of flags */
-#define CFLAG_CMDPROXY 0x000100 /* cmd is a 'proxy' command */
-#define CFLAG_CMDARQ 0x000200 /* cmd is a 'rqsense' command */
-#define CFLAG_DMAVALID 0x000400 /* dma mapping valid */
-#define CFLAG_DMASEND 0x000800 /* data is going 'out' */
-#define CFLAG_CMDIOPB 0x001000 /* this is an 'iopb' packet */
-#define CFLAG_CDBEXTERN 0x002000 /* cdb kmem_alloc'd */
-#define CFLAG_SCBEXTERN 0x004000 /* scb kmem_alloc'd */
-#define CFLAG_FREE 0x008000 /* packet is on free list */
-#define CFLAG_EXTCMDS_ALLOC 0x10000 /* pkt has EXTCMDS_SIZE and */
- /* been fast alloc'ed */
-#define CFLAG_PRIVEXTERN 0x020000 /* target private kmem_alloc'd */
-#define CFLAG_DMA_PARTIAL 0x040000 /* partial xfer OK */
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _SYS_SCSI_IMPL_PKT_WRAPPER_H */