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