1139743Simp/*- 246581Sken * Copyright (c) 1997, 1999 Kenneth D. Merry. 339213Sgibbs * All rights reserved. 439213Sgibbs * 539213Sgibbs * Redistribution and use in source and binary forms, with or without 639213Sgibbs * modification, are permitted provided that the following conditions 739213Sgibbs * are met: 839213Sgibbs * 1. Redistributions of source code must retain the above copyright 939213Sgibbs * notice, this list of conditions and the following disclaimer. 1039213Sgibbs * 2. The name of the author may not be used to endorse or promote products 1139213Sgibbs * derived from this software without specific prior written permission. 1239213Sgibbs * 1339213Sgibbs * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 1439213Sgibbs * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 1539213Sgibbs * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 1639213Sgibbs * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 1739213Sgibbs * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 1839213Sgibbs * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 1939213Sgibbs * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2039213Sgibbs * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2139213Sgibbs * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 2239213Sgibbs * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 2339213Sgibbs * SUCH DAMAGE. 2439213Sgibbs * 2550477Speter * $FreeBSD$ 2639213Sgibbs */ 2739213Sgibbs 2839213Sgibbs#ifndef _SCSI_PASS_H 2939213Sgibbs#define _SCSI_PASS_H 1 3039213Sgibbs 3139213Sgibbs#include <sys/ioccom.h> 3239213Sgibbs 3339213Sgibbs#include <cam/cam_ccb.h> 3439213Sgibbs 3574840Sken/* 3674840Sken * Convert to using a pointer to a ccb in the next major version. 3774840Sken * This should allow us to avoid an extra copy of the CCB data. 3874840Sken */ 3946581Sken#define CAMIOCOMMAND _IOWR(CAM_VERSION, 2, union ccb) 4046581Sken#define CAMGETPASSTHRU _IOWR(CAM_VERSION, 3, union ccb) 4139213Sgibbs 42291716Sken/* 43291716Sken * These two ioctls take a union ccb *, but that is not explicitly declared 44291716Sken * to avoid having the ioctl handling code malloc and free their own copy 45291716Sken * of the CCB or the CCB pointer. 46291716Sken */ 47291716Sken#define CAMIOQUEUE _IO(CAM_VERSION, 4) 48291716Sken#define CAMIOGET _IO(CAM_VERSION, 5) 49291716Sken 5039213Sgibbs#endif 51