scsi_types.h revision 176:15d52fcf7703
1/* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22/* 23 * Copyright 2005 Sun Microsystems, Inc. All rights reserved. 24 * Use is subject to license terms. 25 */ 26 27#ifndef _SYS_SCSI_SCSI_TYPES_H 28#define _SYS_SCSI_SCSI_TYPES_H 29 30#pragma ident "%Z%%M% %I% %E% SMI" 31 32/* 33 * Types for SCSI subsystems. 34 * 35 * This file picks up specific as well as generic type 36 * defines, and also serves as a wrapper for many common 37 * includes. 38 */ 39 40#include <sys/types.h> 41#include <sys/param.h> 42 43 44#ifdef __cplusplus 45extern "C" { 46#endif 47 48#ifndef _OPAQUE_T 49#define _OPAQUE_T 50typedef void *opaque_t; 51#endif /* _OPAQUE_T */ 52 53#ifdef __cplusplus 54} 55#endif 56 57#ifdef _KERNEL 58#include <sys/systm.h> 59#include <sys/cmn_err.h> 60#include <sys/debug.h> 61#include <sys/devops.h> 62#endif /* _KERNEL */ 63 64/* 65 * Each implementation will have it's own specific set 66 * of types it wishes to define. 67 */ 68 69/* 70 * Generally useful files to include 71 */ 72#include <sys/scsi/scsi_params.h> 73#include <sys/scsi/scsi_address.h> 74#include <sys/scsi/scsi_pkt.h> 75#ifdef _KERNEL 76#include <sys/scsi/conf/device.h> 77#endif /* _KERNEL */ 78#include <sys/scsi/scsi_ctl.h> 79#include <sys/scsi/scsi_resource.h> 80 81#ifdef _KERNEL 82#include <sys/scsi/conf/autoconf.h> 83#include <sys/scsi/scsi_watch.h> 84#endif /* _KERNEL */ 85 86#include <sys/scsi/generic/commands.h> 87#include <sys/scsi/generic/status.h> 88#include <sys/scsi/generic/message.h> 89#include <sys/scsi/generic/mode.h> 90 91 92/* 93 * Sun SCSI type definitions 94 */ 95#include <sys/scsi/impl/types.h> 96 97/* 98 * For drivers which do not include these - must be last 99 */ 100#ifdef _KERNEL 101#include <sys/ddi.h> 102#include <sys/sunddi.h> 103#include <sys/stat.h> 104#include <sys/sunndi.h> 105#include <sys/devctl.h> 106#endif /* _KERNEL */ 107 108#endif /* _SYS_SCSI_SCSI_TYPES_H */ 109