\hypertarget{scsi__ch_8h_source}{}\doxysection{scsi\+\_\+ch.\+h}
\label{scsi__ch_8h_source}\index{cam/scsi/scsi\_ch.h@{cam/scsi/scsi\_ch.h}}
\mbox{\hyperlink{scsi__ch_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00001}00001 \textcolor{comment}{/* \$FreeBSD\$ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00002}00002 \textcolor{comment}{/*      \$NetBSD: scsi\_changer.h,v 1.11 1998/02/13 08:28:32 enami Exp \$  */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00003}00003 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00004}00004 \textcolor{comment}{/*-\/}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00005}00005 \textcolor{comment}{ * SPDX-\/License-\/Identifier: BSD-\/4-\/Clause}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00006}00006 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00007}00007 \textcolor{comment}{ * Copyright (c) 1996 Jason R. Thorpe <thorpej@and.com>}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00008}00008 \textcolor{comment}{ * All rights reserved.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00009}00009 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00010}00010 \textcolor{comment}{ * Partially based on an autochanger driver written by Stefan Grefen}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00011}00011 \textcolor{comment}{ * and on an autochanger driver written by the Systems Programming Group}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00012}00012 \textcolor{comment}{ * at the University of Utah Computer Science Department.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00013}00013 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00014}00014 \textcolor{comment}{ * Redistribution and use in source and binary forms, with or without}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00015}00015 \textcolor{comment}{ * modification, are permitted provided that the following conditions}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00016}00016 \textcolor{comment}{ * are met:}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00017}00017 \textcolor{comment}{ * 1. Redistributions of source code must retain the above copyright}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00018}00018 \textcolor{comment}{ *    notice, this list of conditions and the following disclaimer.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00019}00019 \textcolor{comment}{ * 2. Redistributions in binary form must reproduce the above copyright}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00020}00020 \textcolor{comment}{ *    notice, this list of conditions and the following disclaimer in the}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00021}00021 \textcolor{comment}{ *    documentation and/or other materials provided with the distribution.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00022}00022 \textcolor{comment}{ * 3. All advertising materials mentioning features or use of this software}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00023}00023 \textcolor{comment}{ *    must display the following acknowledgements:}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00024}00024 \textcolor{comment}{ *      This product includes software developed by Jason R. Thorpe}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00025}00025 \textcolor{comment}{ *      for And Communications, http://www.and.com/}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00026}00026 \textcolor{comment}{ * 4. The name of the author may not be used to endorse or promote products}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00027}00027 \textcolor{comment}{ *    derived from this software without specific prior written permission.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00028}00028 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00029}00029 \textcolor{comment}{ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00030}00030 \textcolor{comment}{ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00031}00031 \textcolor{comment}{ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00032}00032 \textcolor{comment}{ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00033}00033 \textcolor{comment}{ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00034}00034 \textcolor{comment}{ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00035}00035 \textcolor{comment}{ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00036}00036 \textcolor{comment}{ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00037}00037 \textcolor{comment}{ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00038}00038 \textcolor{comment}{ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00039}00039 \textcolor{comment}{ * SUCH DAMAGE.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00040}00040 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00041}00041 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00042}00042 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00043}00043 \textcolor{comment}{ * SCSI changer interface description}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00044}00044 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00045}00045 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00046}00046 \textcolor{comment}{/*-\/}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00047}00047 \textcolor{comment}{ * Partially derived from software written by Stefan Grefen}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00048}00048 \textcolor{comment}{ * (grefen@goofy.zdv.uni-\/mainz.de soon grefen@convex.com)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00049}00049 \textcolor{comment}{ * based on the SCSI System by written Julian Elischer (julian@tfs.com)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00050}00050 \textcolor{comment}{ * for TRW Financial Systems.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00051}00051 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00052}00052 \textcolor{comment}{ * TRW Financial Systems, in accordance with their agreement with Carnegie}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00053}00053 \textcolor{comment}{ * Mellon University, makes this software available to CMU to distribute}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00054}00054 \textcolor{comment}{ * or use in any manner that they see fit as long as this message is kept with }}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00055}00055 \textcolor{comment}{ * the software. For this reason TFS also grants any other persons or}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00056}00056 \textcolor{comment}{ * organisations permission to use or modify this software.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00057}00057 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00058}00058 \textcolor{comment}{ * TFS supplies this software to be publicly redistributed}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00059}00059 \textcolor{comment}{ * on the understanding that TFS is not responsible for the correct}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00060}00060 \textcolor{comment}{ * functioning of this software in any circumstances.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00061}00061 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00062}00062 \textcolor{comment}{ * Ported to run under 386BSD by Julian Elischer (julian@tfs.com) Sept 1992}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00063}00063 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00064}00064 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00065}00065 \textcolor{preprocessor}{\#ifndef \_SCSI\_SCSI\_CH\_H}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00066}00066 \textcolor{preprocessor}{\#define \_SCSI\_SCSI\_CH\_H 1}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00067}00067 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00068}00068 \textcolor{preprocessor}{\#include <sys/cdefs.h>}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00069}00069 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00070}00070 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00071}00071 \textcolor{comment}{ * SCSI command format}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00072}00072 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00073}00073 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00074}00074 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00075}00075 \textcolor{comment}{ * Exchange the medium in the source element with the medium}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00076}00076 \textcolor{comment}{ * located at the destination element.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00077}00077 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00078}\mbox{\hyperlink{structscsi__exchange__medium}{00078}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__exchange__medium}{scsi\_exchange\_medium}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00079}\mbox{\hyperlink{structscsi__exchange__medium_afc405433bd96ae50ac0a4893406d8fc2}{00079}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_afc405433bd96ae50ac0a4893406d8fc2}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00080}\mbox{\hyperlink{scsi__ch_8h_af50aa69a708175721b2da9ceb1221810}{00080}} \textcolor{preprocessor}{\#define EXCHANGE\_MEDIUM         0xa6}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00081}\mbox{\hyperlink{structscsi__exchange__medium_abb835ed9e7650a441312316a96c39826}{00081}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_abb835ed9e7650a441312316a96c39826}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00082}\mbox{\hyperlink{structscsi__exchange__medium_ad4753feb25428beb06f8a5a490d4b6ce}{00082}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_ad4753feb25428beb06f8a5a490d4b6ce}{tea}}[2];      \textcolor{comment}{/* transport element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00083}\mbox{\hyperlink{structscsi__exchange__medium_ad23d4d0d79d14dccb4ba9bb06cc4fb91}{00083}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_ad23d4d0d79d14dccb4ba9bb06cc4fb91}{src}}[2];      \textcolor{comment}{/* source address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00084}\mbox{\hyperlink{structscsi__exchange__medium_ae9f98be90b8fdc7042317b112e174726}{00084}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_ae9f98be90b8fdc7042317b112e174726}{fdst}}[2]; \textcolor{comment}{/* first destination address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00085}\mbox{\hyperlink{structscsi__exchange__medium_afce755de9505045eb527c2ea28ad8e51}{00085}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_afce755de9505045eb527c2ea28ad8e51}{sdst}}[2]; \textcolor{comment}{/* second destination address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00086}\mbox{\hyperlink{structscsi__exchange__medium_a13ea2fad65dfbfcc773881d247a8520c}{00086}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_a13ea2fad65dfbfcc773881d247a8520c}{invert}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00087}\mbox{\hyperlink{scsi__ch_8h_abd5c46807805c87d7e1b8ecddd0b3595}{00087}} \textcolor{preprocessor}{\#define EXCHANGE\_MEDIUM\_INV1    0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00088}\mbox{\hyperlink{scsi__ch_8h_aadfb0ab637ed39ea6dbfadc8076d819d}{00088}} \textcolor{preprocessor}{\#define EXCHANGE\_MEDIUM\_INV2    0x02}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00089}\mbox{\hyperlink{structscsi__exchange__medium_a5d3d8c83c3a0caece9303289ae2713d8}{00089}}         u\_int8\_t        \mbox{\hyperlink{structscsi__exchange__medium_a5d3d8c83c3a0caece9303289ae2713d8}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00090}00090 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00091}00091 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00092}00092 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00093}00093 \textcolor{comment}{ * Cause the medium changer to check all elements for medium and any}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00094}00094 \textcolor{comment}{ * other status relevant to the element.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00095}00095 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00096}\mbox{\hyperlink{structscsi__initialize__element__status}{00096}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__initialize__element__status}{scsi\_initialize\_element\_status}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00097}\mbox{\hyperlink{structscsi__initialize__element__status_ac1052204cd5b71f100634d73c0ce6aee}{00097}}         u\_int8\_t        \mbox{\hyperlink{structscsi__initialize__element__status_ac1052204cd5b71f100634d73c0ce6aee}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00098}\mbox{\hyperlink{scsi__ch_8h_aacc6439503688c381caa4d09de9adaf6}{00098}} \textcolor{preprocessor}{\#define INITIALIZE\_ELEMENT\_STATUS       0x07}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00099}\mbox{\hyperlink{structscsi__initialize__element__status_ad269c1aa337ad90ade5dda91e25c00ef}{00099}}         u\_int8\_t        \mbox{\hyperlink{structscsi__initialize__element__status_ad269c1aa337ad90ade5dda91e25c00ef}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00100}\mbox{\hyperlink{structscsi__initialize__element__status_a9192b14d779bb190b441d160d6c089ee}{00100}}         u\_int8\_t        \mbox{\hyperlink{structscsi__initialize__element__status_a9192b14d779bb190b441d160d6c089ee}{reserved}}[3];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00101}\mbox{\hyperlink{structscsi__initialize__element__status_acd776f40f2d9973d9c07680737c32ae5}{00101}}         u\_int8\_t        \mbox{\hyperlink{structscsi__initialize__element__status_acd776f40f2d9973d9c07680737c32ae5}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00102}00102 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00103}00103 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00104}00104 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00105}00105 \textcolor{comment}{ * Request the changer to move a unit of media from the source element}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00106}00106 \textcolor{comment}{ * to the destination element.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00107}00107 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00108}\mbox{\hyperlink{structscsi__move__medium}{00108}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__move__medium}{scsi\_move\_medium}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00109}\mbox{\hyperlink{structscsi__move__medium_a2e679300dac63ad09dd9c71f047730ae}{00109}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_a2e679300dac63ad09dd9c71f047730ae}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00110}\mbox{\hyperlink{structscsi__move__medium_a2a3debd278edfdf9cdd406232b978f42}{00110}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_a2a3debd278edfdf9cdd406232b978f42}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00111}\mbox{\hyperlink{structscsi__move__medium_ade30eff15d0f713ac0dbdfb591ee4193}{00111}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_ade30eff15d0f713ac0dbdfb591ee4193}{tea}}[2];      \textcolor{comment}{/* transport element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00112}\mbox{\hyperlink{structscsi__move__medium_a12ce08110ea50f02b6c20c961e6ac89d}{00112}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_a12ce08110ea50f02b6c20c961e6ac89d}{src}}[2];      \textcolor{comment}{/* source element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00113}\mbox{\hyperlink{structscsi__move__medium_a3b3d4f66a4e368d25a992945fe55b2ac}{00113}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_a3b3d4f66a4e368d25a992945fe55b2ac}{dst}}[2];      \textcolor{comment}{/* destination element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00114}\mbox{\hyperlink{structscsi__move__medium_af84263721b6b892f3e9e5ce04a997d77}{00114}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_af84263721b6b892f3e9e5ce04a997d77}{reserved}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00115}\mbox{\hyperlink{structscsi__move__medium_abb5866dd605b930761f534633c01de6b}{00115}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_abb5866dd605b930761f534633c01de6b}{invert}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00116}\mbox{\hyperlink{scsi__ch_8h_ab729bd8ca1bdb6b0d6450d5ac8794834}{00116}} \textcolor{preprocessor}{\#define MOVE\_MEDIUM\_INVERT      0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00117}\mbox{\hyperlink{structscsi__move__medium_a0ea14b8ec74329001a0ac06b0686e649}{00117}}         u\_int8\_t        \mbox{\hyperlink{structscsi__move__medium_a0ea14b8ec74329001a0ac06b0686e649}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00118}00118 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00119}00119 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00120}00120 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00121}00121 \textcolor{comment}{ * Position the specified transport element (picker) in front of}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00122}00122 \textcolor{comment}{ * the destination element specified.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00123}00123 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00124}\mbox{\hyperlink{structscsi__position__to__element}{00124}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__position__to__element}{scsi\_position\_to\_element}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00125}\mbox{\hyperlink{structscsi__position__to__element_a2fb7bf3d3be3cfb0f3832a6d85a54634}{00125}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_a2fb7bf3d3be3cfb0f3832a6d85a54634}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00126}\mbox{\hyperlink{structscsi__position__to__element_afd84f553f6d785927107f4b6c771d25d}{00126}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_afd84f553f6d785927107f4b6c771d25d}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00127}\mbox{\hyperlink{structscsi__position__to__element_a424cd8820b586a058f86064cc1ce501e}{00127}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_a424cd8820b586a058f86064cc1ce501e}{tea}}[2];      \textcolor{comment}{/* transport element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00128}\mbox{\hyperlink{structscsi__position__to__element_a8d928ed1ea494f899eddf60f394f3cd8}{00128}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_a8d928ed1ea494f899eddf60f394f3cd8}{dst}}[2];      \textcolor{comment}{/* destination element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00129}\mbox{\hyperlink{structscsi__position__to__element_abbe32dc4b85406b30e49490a6910817d}{00129}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_abbe32dc4b85406b30e49490a6910817d}{reserved}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00130}\mbox{\hyperlink{structscsi__position__to__element_a9ce7e6105cb16df9e37bb815e8fe6675}{00130}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_a9ce7e6105cb16df9e37bb815e8fe6675}{invert}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00131}\mbox{\hyperlink{scsi__ch_8h_ae50c52b0742d66374515551586a1a28c}{00131}} \textcolor{preprocessor}{\#define POSITION\_TO\_ELEMENT\_INVERT      0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00132}\mbox{\hyperlink{structscsi__position__to__element_aadf74d4a2d6292269ecfcc57e2062bf7}{00132}}         u\_int8\_t        \mbox{\hyperlink{structscsi__position__to__element_aadf74d4a2d6292269ecfcc57e2062bf7}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00133}00133 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00134}00134 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00135}00135 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00136}00136 \textcolor{comment}{ * Request that the changer report the status of its internal elements.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00137}00137 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00138}\mbox{\hyperlink{structscsi__read__element__status}{00138}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__read__element__status}{scsi\_read\_element\_status}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00139}\mbox{\hyperlink{structscsi__read__element__status_a200bda205b0dab2fc16f0ccf5863befc}{00139}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_a200bda205b0dab2fc16f0ccf5863befc}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00140}\mbox{\hyperlink{structscsi__read__element__status_aa756e083a3b858e26a8198ac0d20815d}{00140}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_aa756e083a3b858e26a8198ac0d20815d}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00141}\mbox{\hyperlink{scsi__ch_8h_ac839b7e7b73d906151852e72f2ba237f}{00141}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_VOLTAG      0x10    }\textcolor{comment}{/* report volume tag info */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00142}00142         \textcolor{comment}{/* ...next 4 bits are an element type code... */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00143}\mbox{\hyperlink{structscsi__read__element__status_a3fdfddb415999f57764a762bf8b10c71}{00143}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_a3fdfddb415999f57764a762bf8b10c71}{sea}}[2];      \textcolor{comment}{/* starting element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00144}\mbox{\hyperlink{structscsi__read__element__status_aaffd7a26e869f9be91ac46fb519047c1}{00144}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_aaffd7a26e869f9be91ac46fb519047c1}{count}}[2]; \textcolor{comment}{/* number of elements */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00145}\mbox{\hyperlink{structscsi__read__element__status_ab7d8d20e270bb7bd8b04b7791bb6bcd6}{00145}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_ab7d8d20e270bb7bd8b04b7791bb6bcd6}{flags}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00146}\mbox{\hyperlink{scsi__ch_8h_a8532b11f3a27ae30d7ce51ee79a9d2e1}{00146}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DVCID       0x01 }\textcolor{comment}{/* report device serial number */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00147}\mbox{\hyperlink{scsi__ch_8h_a7bd4915b1eaa42fa3b430beaec1133e3}{00147}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_CURDATA     0x02 }\textcolor{comment}{/* allow motion during command */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00148}00148 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00149}\mbox{\hyperlink{structscsi__read__element__status_a8c0e06449442daa8187506b03cdca02b}{00149}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_a8c0e06449442daa8187506b03cdca02b}{len}}[3];      \textcolor{comment}{/* length of data buffer */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00150}\mbox{\hyperlink{structscsi__read__element__status_ae809b13eebb61bb0d20eb1ba704c6592}{00150}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_ae809b13eebb61bb0d20eb1ba704c6592}{reserved1}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00151}\mbox{\hyperlink{structscsi__read__element__status_ac2477d0d08a17277e49ab0faf26f5c31}{00151}}         u\_int8\_t        \mbox{\hyperlink{structscsi__read__element__status_ac2477d0d08a17277e49ab0faf26f5c31}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00152}00152 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00153}00153 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00154}\mbox{\hyperlink{structscsi__request__volume__element__address}{00154}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__request__volume__element__address}{scsi\_request\_volume\_element\_address}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00155}\mbox{\hyperlink{structscsi__request__volume__element__address_a1a8fca747c0b07c24bfe3a60a9d1fa9e}{00155}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_a1a8fca747c0b07c24bfe3a60a9d1fa9e}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00156}\mbox{\hyperlink{structscsi__request__volume__element__address_a53c6e5a09d74f54bcf075ab4f60c10af}{00156}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_a53c6e5a09d74f54bcf075ab4f60c10af}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00157}\mbox{\hyperlink{scsi__ch_8h_af81491760ccec8bb3dc7aa0102ed30b2}{00157}} \textcolor{preprocessor}{\#define REQUEST\_VOLUME\_ELEMENT\_ADDRESS\_VOLTAG   0x10}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00158}00158         \textcolor{comment}{/* ...next 4 bits are an element type code... */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00159}\mbox{\hyperlink{structscsi__request__volume__element__address_a9d5cfdce53c1687bdbb95ef52ead2ab2}{00159}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_a9d5cfdce53c1687bdbb95ef52ead2ab2}{eaddr}}[2];  \textcolor{comment}{/* element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00160}\mbox{\hyperlink{structscsi__request__volume__element__address_aaa894d104a9505d719ca5bd43147bd3f}{00160}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_aaa894d104a9505d719ca5bd43147bd3f}{count}}[2];  \textcolor{comment}{/* number of elements */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00161}\mbox{\hyperlink{structscsi__request__volume__element__address_aad972886f3015eb796192ed07f90e0ff}{00161}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_aad972886f3015eb796192ed07f90e0ff}{reserved0}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00162}\mbox{\hyperlink{structscsi__request__volume__element__address_ab87be461cbb290349aa4eb88d1770892}{00162}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_ab87be461cbb290349aa4eb88d1770892}{len}}[3];              \textcolor{comment}{/* length of data buffer */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00163}\mbox{\hyperlink{structscsi__request__volume__element__address_abf87c33e30ec4e6182f27d19cf6027c9}{00163}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_abf87c33e30ec4e6182f27d19cf6027c9}{reserved1}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00164}\mbox{\hyperlink{structscsi__request__volume__element__address_a80fedc1ca3c90b1ebe26cdac6ecd3653}{00164}}         u\_int8\_t        \mbox{\hyperlink{structscsi__request__volume__element__address_a80fedc1ca3c90b1ebe26cdac6ecd3653}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00165}00165 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00166}00166 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00167}00167 \textcolor{comment}{/* XXX scsi\_release */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00168}00168 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00169}00169 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00170}00170 \textcolor{comment}{ * Changer-\/specific mode page numbers.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00171}00171 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00172}\mbox{\hyperlink{scsi__ch_8h_a5c515fd8e3be34f49d6a7d84bbcb14ee}{00172}} \textcolor{preprocessor}{\#define CH\_ELEMENT\_ADDR\_ASSIGN\_PAGE     0x1D}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00173}\mbox{\hyperlink{scsi__ch_8h_a161778718717d4d4b2731a60b326a3e0}{00173}} \textcolor{preprocessor}{\#define CH\_TRANS\_GEOM\_PARAMS\_PAGE       0x1E}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00174}\mbox{\hyperlink{scsi__ch_8h_a13a8c19f21623b5a0136c3a19d68dc53}{00174}} \textcolor{preprocessor}{\#define CH\_DEVICE\_CAP\_PAGE              0x1F}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00175}00175 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00176}00176 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00177}00177 \textcolor{comment}{ * Data returned by READ ELEMENT STATUS consists of an 8-\/byte header}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00178}00178 \textcolor{comment}{ * followed by one or more read\_element\_status\_pages.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00179}00179 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00180}\mbox{\hyperlink{structread__element__status__header}{00180}} \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__header}{read\_element\_status\_header}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00181}\mbox{\hyperlink{structread__element__status__header_a9d3006d0fc1320eef0537209fcfbb284}{00181}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__header_a9d3006d0fc1320eef0537209fcfbb284}{fear}}[2];  \textcolor{comment}{/* first element address reported */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00182}\mbox{\hyperlink{structread__element__status__header_a17f83a6ebcd77ad6e29889cf47e8c83d}{00182}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__header_a17f83a6ebcd77ad6e29889cf47e8c83d}{count}}[2]; \textcolor{comment}{/* number of elements available */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00183}\mbox{\hyperlink{structread__element__status__header_a59eaf08d96943127ea253e836ca44ab6}{00183}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__header_a59eaf08d96943127ea253e836ca44ab6}{reserved}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00184}\mbox{\hyperlink{structread__element__status__header_a27001f0bf9c7fdfbdcb2a9fb8b11ff38}{00184}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__header_a27001f0bf9c7fdfbdcb2a9fb8b11ff38}{nbytes}}[3]; \textcolor{comment}{/* byte count of all pages */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00185}00185 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00186}00186 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00187}\mbox{\hyperlink{structread__element__status__page__header}{00187}} \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__page__header}{read\_element\_status\_page\_header}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00188}\mbox{\hyperlink{structread__element__status__page__header_a2af87571ed857084ac84974102e81753}{00188}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__page__header_a2af87571ed857084ac84974102e81753}{type}};       \textcolor{comment}{/* element type code; see type codes below */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00189}\mbox{\hyperlink{structread__element__status__page__header_a9c57d1899f8404b6aa0a3c6bc26cdbc6}{00189}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__page__header_a9c57d1899f8404b6aa0a3c6bc26cdbc6}{flags}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00190}\mbox{\hyperlink{scsi__ch_8h_a513f3343087c73796dcbcd3f3b3cccbc}{00190}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_AVOLTAG     0x40}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00191}\mbox{\hyperlink{scsi__ch_8h_acfa45213a821cd06fa698b7d34169091}{00191}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_PVOLTAG     0x80}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00192}\mbox{\hyperlink{structread__element__status__page__header_ac321f5b236955fc334ac6bd0d48470f2}{00192}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__page__header_ac321f5b236955fc334ac6bd0d48470f2}{edl}}[2];      \textcolor{comment}{/* element descriptor length */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00193}\mbox{\hyperlink{structread__element__status__page__header_a96953065ab6d88dcf663782d23156074}{00193}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__page__header_a96953065ab6d88dcf663782d23156074}{reserved}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00194}\mbox{\hyperlink{structread__element__status__page__header_a4506698a9cbc0f770455ee428530b5f6}{00194}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__page__header_a4506698a9cbc0f770455ee428530b5f6}{nbytes}}[3]; \textcolor{comment}{/* byte count of all descriptors */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00195}00195 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00196}00196 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00197}00197 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00198}00198 \textcolor{comment}{ * Format of a volume tag}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00199}00199 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00200}00200 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00201}\mbox{\hyperlink{structvolume__tag}{00201}} \textcolor{keyword}{struct }\mbox{\hyperlink{structvolume__tag}{volume\_tag}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00202}\mbox{\hyperlink{structvolume__tag_ad48afea9ecefccd27a74403d0deb2dac}{00202}}         u\_int8\_t        \mbox{\hyperlink{structvolume__tag_ad48afea9ecefccd27a74403d0deb2dac}{vif}}[32];     \textcolor{comment}{/* volume identification field */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00203}\mbox{\hyperlink{structvolume__tag_ace1f6ac10a1866439eb3f83a21f711b8}{00203}}         u\_int8\_t        \mbox{\hyperlink{structvolume__tag_ace1f6ac10a1866439eb3f83a21f711b8}{reserved}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00204}\mbox{\hyperlink{structvolume__tag_a76a1e0d17511458da0e5815cf85eb8f9}{00204}}         u\_int8\_t        \mbox{\hyperlink{structvolume__tag_a76a1e0d17511458da0e5815cf85eb8f9}{vsn}}[2];              \textcolor{comment}{/* volume sequence number */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00205}00205 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00206}00206 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00207}\mbox{\hyperlink{structread__element__status__device__id}{00207}} \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__device__id}{read\_element\_status\_device\_id}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00208}\mbox{\hyperlink{structread__element__status__device__id_a4d7673194ebe5f3b418fcefbc0f60290}{00208}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__device__id_a4d7673194ebe5f3b418fcefbc0f60290}{prot\_code\_set}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00209}\mbox{\hyperlink{scsi__ch_8h_a75f55364b7d6829d4add589e41fcbd1d}{00209}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_CODE\_SET(p) ((p) \& 0x0F)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00210}\mbox{\hyperlink{scsi__ch_8h_a1ced824b7451c0e246240a6f813b7fec}{00210}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_PROTOCOL\_ID(p) ((p) >> 4)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00211}00211 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00212}\mbox{\hyperlink{structread__element__status__device__id_a0265585181dbe3edb5f062d446017c38}{00212}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__device__id_a0265585181dbe3edb5f062d446017c38}{piv\_assoc\_designator\_type}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00213}\mbox{\hyperlink{scsi__ch_8h_a2724548a308f6e5c2cfdcf53e34cd666}{00213}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_PIV\_SET 0x80}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00214}\mbox{\hyperlink{scsi__ch_8h_ae1f4697d84e02401b650c4b633613403}{00214}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_ASSOCIATION(p) ((p) >> 4)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00215}\mbox{\hyperlink{scsi__ch_8h_a1b72da807f1ee2b78e22c00393353345}{00215}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DESIGNATOR\_TYPE(p) ((p) \& 0x0F)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00216}00216 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00217}\mbox{\hyperlink{structread__element__status__device__id_aef475014768c7a16af74abdac61147f0}{00217}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__device__id_aef475014768c7a16af74abdac61147f0}{reserved2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00218}\mbox{\hyperlink{structread__element__status__device__id_adc2f88719415857a6a580183942c4a4a}{00218}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__device__id_adc2f88719415857a6a580183942c4a4a}{designator\_length}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00219}\mbox{\hyperlink{structread__element__status__device__id_aa4b433d1eefc7a418c7fc76cb048f103}{00219}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__device__id_aa4b433d1eefc7a418c7fc76cb048f103}{designator}}[256]; \textcolor{comment}{/* Allocate max length */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00220}00220 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00221}00221 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00222}\mbox{\hyperlink{structread__element__status__descriptor}{00222}} \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__descriptor}{read\_element\_status\_descriptor}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00223}\mbox{\hyperlink{structread__element__status__descriptor_ad8ec52aeebf2644654c92a00ff532c68}{00223}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_ad8ec52aeebf2644654c92a00ff532c68}{eaddr}}[2];  \textcolor{comment}{/* element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00224}\mbox{\hyperlink{structread__element__status__descriptor_a4a65e7b40f254e50670d43e2269bff04}{00224}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_a4a65e7b40f254e50670d43e2269bff04}{flags1}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00225}00225 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00226}\mbox{\hyperlink{scsi__ch_8h_a56dd802b76a2fa01c65dcc3772cf86d1}{00226}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_FULL        0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00227}\mbox{\hyperlink{scsi__ch_8h_a0f664488be23073da77bcfadc40b5fa6}{00227}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_IMPEXP      0x02}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00228}\mbox{\hyperlink{scsi__ch_8h_ac467b8a2270a15ed1e90a14a4fbd39e4}{00228}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_EXCEPT      0x04}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00229}\mbox{\hyperlink{scsi__ch_8h_a436f7af232df6e28508926abfe6a34b4}{00229}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_ACCESS      0x08}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00230}\mbox{\hyperlink{scsi__ch_8h_a94076293afc283ccef7bfeb8d042fcf8}{00230}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_EXENAB      0x10}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00231}\mbox{\hyperlink{scsi__ch_8h_aad26a412ca8d257066d1e73df190091f}{00231}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_INENAB      0x20}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00232}00232 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00233}\mbox{\hyperlink{scsi__ch_8h_a11919e9d6d8e2a33d37d829ba86400f6}{00233}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_MT\_MASK1    0x05}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00234}\mbox{\hyperlink{scsi__ch_8h_a72bd6617218533cd07bfed788e2e532c}{00234}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_ST\_MASK1    0x0c}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00235}\mbox{\hyperlink{scsi__ch_8h_af21505394486f38207eac015fec72e24}{00235}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_IE\_MASK1    0x3f}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00236}\mbox{\hyperlink{scsi__ch_8h_a408bd335a593f6d68bb0a78c694f0325}{00236}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DT\_MASK1    0x0c}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00237}00237 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00238}\mbox{\hyperlink{structread__element__status__descriptor_a463dcf23374d5d1db225bbe84df08b76}{00238}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_a463dcf23374d5d1db225bbe84df08b76}{reserved0}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00239}\mbox{\hyperlink{structread__element__status__descriptor_a85748622595164ba8a7c33cd6933c439}{00239}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_a85748622595164ba8a7c33cd6933c439}{sense\_code}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00240}\mbox{\hyperlink{structread__element__status__descriptor_a7fbabd2b5f774da667f8a6c1fbe25688}{00240}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_a7fbabd2b5f774da667f8a6c1fbe25688}{sense\_qual}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00241}00241 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00242}00242         \textcolor{keyword}{union }\{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00243}00243                 \textcolor{keyword}{struct }\{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00244}\mbox{\hyperlink{structread__element__status__descriptor_a88e60639bb50349a333936adea5225cc}{00244}}                         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_a88e60639bb50349a333936adea5225cc}{dt\_scsi\_flags}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00245}00245 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00246}\mbox{\hyperlink{scsi__ch_8h_a6ea1f4abdbe773be7652d4d6262e396d}{00246}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DT\_LUNMASK  0x07}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00247}\mbox{\hyperlink{scsi__ch_8h_a119fc25f6efff9f934d4f2d29396090c}{00247}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DT\_LUVALID  0x10}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00248}\mbox{\hyperlink{scsi__ch_8h_a93f1c006e83e0a2d10fbb8552260c255}{00248}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DT\_IDVALID  0x20}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00249}\mbox{\hyperlink{scsi__ch_8h_a5fb78522cffb2d640a396fe0f3364ca1}{00249}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_DT\_NOTBUS   0x80}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00250}00250 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00251}\mbox{\hyperlink{structread__element__status__descriptor_ab04a6a18c8780aca85022bffd4f831b4}{00251}}                         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_ab04a6a18c8780aca85022bffd4f831b4}{dt\_scsi\_addr}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00252}\mbox{\hyperlink{structread__element__status__descriptor_a062cf5cf804415994b278f6f5dc7ecc0}{00252}}                         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_a062cf5cf804415994b278f6f5dc7ecc0}{reserved1}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00253}\mbox{\hyperlink{structread__element__status__descriptor_a7da4140163211230d5f0223fb1df1b52}{00253}}                 \} \mbox{\hyperlink{structread__element__status__descriptor_a7da4140163211230d5f0223fb1df1b52}{scsi\_2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00254}00254 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00255}00255                 \textcolor{comment}{/* reserved and obsolete (as of SCSI-\/3) fields */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00256}\mbox{\hyperlink{structread__element__status__descriptor_aafc6693de18544b938b752a681b0da7b}{00256}}                 u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_aafc6693de18544b938b752a681b0da7b}{reserved\_or\_obsolete}}[3];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00257}\mbox{\hyperlink{structread__element__status__descriptor_a316e14eedd2d20e239ff0a9014d7a646}{00257}}         \} \mbox{\hyperlink{structread__element__status__descriptor_a316e14eedd2d20e239ff0a9014d7a646}{dt\_or\_obsolete}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00258}00258 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00259}\mbox{\hyperlink{structread__element__status__descriptor_af3359a42fe774b8db10f1aa456cf99ad}{00259}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_af3359a42fe774b8db10f1aa456cf99ad}{flags2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00260}\mbox{\hyperlink{scsi__ch_8h_a669f5a2ab3f535ad5461126e62d105c3}{00260}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_INVERT              0x40}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00261}\mbox{\hyperlink{scsi__ch_8h_a301a49f2b9c032933b1eb7ead6c3f686}{00261}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_SVALID              0x80}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00262}\mbox{\hyperlink{scsi__ch_8h_a3b5493e85dafd8c8ac3a8d9f242a03c8}{00262}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_ED                  0x80}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00263}\mbox{\hyperlink{scsi__ch_8h_ae46c71b330e02266422080752757b6e7}{00263}} \textcolor{preprocessor}{\#define READ\_ELEMENT\_STATUS\_MEDIA\_TYPE\_MASK     0x07}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00264}00264 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00265}\mbox{\hyperlink{structread__element__status__descriptor_afde8b66000cb1f481a54b1f04d8a0531}{00265}}         u\_int8\_t        \mbox{\hyperlink{structread__element__status__descriptor_afde8b66000cb1f481a54b1f04d8a0531}{ssea}}[2];    \textcolor{comment}{/* source storage element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00266}00266 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00267}00267         \textcolor{keyword}{union }\{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00268}\mbox{\hyperlink{structread__element__status__descriptor_a3bae8d14310b30c2966dd2cba155c3af}{00268}}                 \textcolor{keyword}{struct }\mbox{\hyperlink{structvolume__tag}{volume\_tag}}                     \mbox{\hyperlink{structread__element__status__descriptor_a3bae8d14310b30c2966dd2cba155c3af}{pvoltag}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00269}\mbox{\hyperlink{structread__element__status__descriptor_a4f353e20820e7c872ccfa688a89c5b22}{00269}}                 \textcolor{keyword}{struct }\mbox{\hyperlink{structvolume__tag}{volume\_tag}}                     \mbox{\hyperlink{structread__element__status__descriptor_a4f353e20820e7c872ccfa688a89c5b22}{voltag}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00270}\mbox{\hyperlink{structread__element__status__descriptor_a9e30db61756ecdefb46194210a0c0a9c}{00270}}                 \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__device__id}{read\_element\_status\_device\_id}}       \mbox{\hyperlink{structread__element__status__descriptor_a9e30db61756ecdefb46194210a0c0a9c}{devid}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00271}00271                 \textcolor{keyword}{struct }\{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00272}00272                         \textcolor{keyword}{struct }\mbox{\hyperlink{structvolume__tag}{volume\_tag}}                     \mbox{\hyperlink{structread__element__status__descriptor_a3bae8d14310b30c2966dd2cba155c3af}{pvoltag}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00273}00273                         \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__device__id}{read\_element\_status\_device\_id}}       \mbox{\hyperlink{structread__element__status__descriptor_a9e30db61756ecdefb46194210a0c0a9c}{devid}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00274}\mbox{\hyperlink{structread__element__status__descriptor_ab50d43c877d4ec2ef5e60369b2c03969}{00274}}                 \} \mbox{\hyperlink{structread__element__status__descriptor_ab50d43c877d4ec2ef5e60369b2c03969}{pvol\_and\_devid}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00275}00275                 \textcolor{keyword}{struct }\{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00276}00276                         \textcolor{keyword}{struct }\mbox{\hyperlink{structvolume__tag}{volume\_tag}}                     \mbox{\hyperlink{structread__element__status__descriptor_a4f353e20820e7c872ccfa688a89c5b22}{voltag}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00277}00277                         \textcolor{keyword}{struct }\mbox{\hyperlink{structread__element__status__device__id}{read\_element\_status\_device\_id}}       \mbox{\hyperlink{structread__element__status__descriptor_a9e30db61756ecdefb46194210a0c0a9c}{devid}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00278}\mbox{\hyperlink{structread__element__status__descriptor_ae1453ca5a07d3cc0895376e0da83fe51}{00278}}                 \} \mbox{\hyperlink{structread__element__status__descriptor_ae1453ca5a07d3cc0895376e0da83fe51}{vol\_tags\_and\_devid}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00279}\mbox{\hyperlink{structread__element__status__descriptor_aa1c37c8735f2e06244442eb2ffe24b46}{00279}}         \} \mbox{\hyperlink{structread__element__status__descriptor_aa1c37c8735f2e06244442eb2ffe24b46}{voltag\_devid}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00280}00280 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00281}00281 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00282}00282 \textcolor{comment}{/* XXX add data returned by REQUEST VOLUME ELEMENT ADDRESS */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00283}00283 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00284}00284 \textcolor{comment}{/* Element type codes */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00285}\mbox{\hyperlink{scsi__ch_8h_a5ecc777100cfb9c7cf21e8f4b1cfe58d}{00285}} \textcolor{preprocessor}{\#define ELEMENT\_TYPE\_MASK       0x0f    }\textcolor{comment}{/* Note: these aren't bits */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00286}\mbox{\hyperlink{scsi__ch_8h_a4f452dd8718965b5df41ede470c281a3}{00286}} \textcolor{preprocessor}{\#define ELEMENT\_TYPE\_ALL        0x00}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00287}\mbox{\hyperlink{scsi__ch_8h_a94178c3bbc7853516d5140e1380626b4}{00287}} \textcolor{preprocessor}{\#define ELEMENT\_TYPE\_MT         0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00288}\mbox{\hyperlink{scsi__ch_8h_a221a04ae68c37dd6487d6641c9f8be99}{00288}} \textcolor{preprocessor}{\#define ELEMENT\_TYPE\_ST         0x02}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00289}\mbox{\hyperlink{scsi__ch_8h_a841481080898c1354713877310f12611}{00289}} \textcolor{preprocessor}{\#define ELEMENT\_TYPE\_IE         0x03}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00290}\mbox{\hyperlink{scsi__ch_8h_a0535d1f6e459b115f7d785528ee15f77}{00290}} \textcolor{preprocessor}{\#define ELEMENT\_TYPE\_DT         0x04}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00291}00291 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00292}00292 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00293}00293 \textcolor{comment}{ * XXX The following definitions should be common to all SCSI device types.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00294}00294 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00295}\mbox{\hyperlink{scsi__ch_8h_adf652233c02098e533112c5b708d99f7}{00295}} \textcolor{preprocessor}{\#define PGCODE\_MASK     0x3f    }\textcolor{comment}{/* valid page number bits in pg\_code */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00296}\mbox{\hyperlink{scsi__ch_8h_a1b35d5cb86c24309411a44e822e9a8da}{00296}} \textcolor{preprocessor}{\#define PGCODE\_PS       0x80    }\textcolor{comment}{/* indicates page is savable */}\textcolor{preprocessor}{}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00297}00297 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00298}00298 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00299}00299 \textcolor{comment}{ * Send volume tag information to the changer}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00300}00300 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00301}00301 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00302}\mbox{\hyperlink{structscsi__send__volume__tag}{00302}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__send__volume__tag}{scsi\_send\_volume\_tag}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00303}\mbox{\hyperlink{structscsi__send__volume__tag_a84c11bf3e2a77ad23c67ae8cf1e7dea7}{00303}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a84c11bf3e2a77ad23c67ae8cf1e7dea7}{opcode}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00304}\mbox{\hyperlink{scsi__ch_8h_ad0decc062fb46b38d0063cf739dd64cb}{00304}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG 0xb6}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00305}\mbox{\hyperlink{structscsi__send__volume__tag_af578a91edcc093650be5b958f46d351d}{00305}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_af578a91edcc093650be5b958f46d351d}{byte2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00306}\mbox{\hyperlink{structscsi__send__volume__tag_afb32173e248855a7831af15db05791a7}{00306}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_afb32173e248855a7831af15db05791a7}{ea}}[2];                \textcolor{comment}{/* element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00307}\mbox{\hyperlink{structscsi__send__volume__tag_a036cfa394503cc67c4422ddf895289ae}{00307}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a036cfa394503cc67c4422ddf895289ae}{reserved2}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00308}\mbox{\hyperlink{structscsi__send__volume__tag_a910b1987914c34815f7cf62bb6c042fd}{00308}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a910b1987914c34815f7cf62bb6c042fd}{sac}};         \textcolor{comment}{/* send action code */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00309}00309 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00310}\mbox{\hyperlink{scsi__ch_8h_af8ebaed0008eb345656e5ed8754ee3db}{00310}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG\_ASSERT\_PRIMARY          0x08}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00311}\mbox{\hyperlink{scsi__ch_8h_ac671d8b08f74e5f63b068e4767a6ec07}{00311}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG\_ASSERT\_ALTERNATE        0x09}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00312}\mbox{\hyperlink{scsi__ch_8h_ae605454b88a63a74ff12c47e86a275ea}{00312}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG\_REPLACE\_PRIMARY         0x0a}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00313}\mbox{\hyperlink{scsi__ch_8h_ac597088fcb543256a92840e278acbd3a}{00313}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG\_REPLACE\_ALTERNATE       0x0b}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00314}\mbox{\hyperlink{scsi__ch_8h_ab4bb2aed32e5142dcf43f50d89723981}{00314}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG\_UNDEFINED\_PRIMARY       0x0c}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00315}\mbox{\hyperlink{scsi__ch_8h_a85ba62c6e5caff22c14749d2d662b637}{00315}} \textcolor{preprocessor}{\#define SEND\_VOLUME\_TAG\_UNDEFINED\_ALTERNATE     0x0d}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00316}00316 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00317}\mbox{\hyperlink{structscsi__send__volume__tag_a9ee263afdc2df7bf767bdb84025ac7ba}{00317}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a9ee263afdc2df7bf767bdb84025ac7ba}{reserved4}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00318}\mbox{\hyperlink{structscsi__send__volume__tag_a332e9420819c28f1b715cc91214366c1}{00318}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a332e9420819c28f1b715cc91214366c1}{pll}}[2];              \textcolor{comment}{/* parameter list length */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00319}\mbox{\hyperlink{structscsi__send__volume__tag_a49fa84db8a95d4be2c3b022bf6324a45}{00319}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a49fa84db8a95d4be2c3b022bf6324a45}{reserved5}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00320}\mbox{\hyperlink{structscsi__send__volume__tag_a1de5c61b18cb50e1456419974333d784}{00320}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag_a1de5c61b18cb50e1456419974333d784}{control}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00321}00321 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00322}00322 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00323}00323 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00324}00324 \textcolor{comment}{ * Parameter format for SEND VOLUME TAG}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00325}00325 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00326}00326 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00327}\mbox{\hyperlink{structscsi__send__volume__tag__parameters}{00327}} \textcolor{keyword}{struct }\mbox{\hyperlink{structscsi__send__volume__tag__parameters}{scsi\_send\_volume\_tag\_parameters}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00328}\mbox{\hyperlink{structscsi__send__volume__tag__parameters_af5a434b3464f506313336fd0a6f7ccf4}{00328}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag__parameters_af5a434b3464f506313336fd0a6f7ccf4}{vitf}}[32];   \textcolor{comment}{/* volume tag identification template */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00329}\mbox{\hyperlink{structscsi__send__volume__tag__parameters_a5554b10eb12464797530ceb39eb343b6}{00329}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag__parameters_a5554b10eb12464797530ceb39eb343b6}{reserved1}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00330}\mbox{\hyperlink{structscsi__send__volume__tag__parameters_a1a61a610e38f66d13f256dfff10affc9}{00330}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag__parameters_a1a61a610e38f66d13f256dfff10affc9}{minvsn}}[2];        \textcolor{comment}{/* minimum volume sequence number */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00331}\mbox{\hyperlink{structscsi__send__volume__tag__parameters_aa4359c467e1cf7beb9b6541ce3b61424}{00331}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag__parameters_aa4359c467e1cf7beb9b6541ce3b61424}{reserved2}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00332}\mbox{\hyperlink{structscsi__send__volume__tag__parameters_a414d679e752a7222e632d5bfae49c173}{00332}}         u\_int8\_t        \mbox{\hyperlink{structscsi__send__volume__tag__parameters_a414d679e752a7222e632d5bfae49c173}{maxvsn}}[2];        \textcolor{comment}{/* maximum volume sequence number */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00333}00333 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00334}00334 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00335}00335 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00336}00336 \textcolor{comment}{ * Device capabilities page.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00337}00337 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00338}00338 \textcolor{comment}{ * This page defines characteristics of the element types in the}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00339}00339 \textcolor{comment}{ * medium changer device.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00340}00340 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00341}00341 \textcolor{comment}{ * Note in the definitions below, the following abbreviations are}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00342}00342 \textcolor{comment}{ * used:}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00343}00343 \textcolor{comment}{ *              MT      Medium transport element (picker)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00344}00344 \textcolor{comment}{ *              ST      Storage transport element (slot)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00345}00345 \textcolor{comment}{ *              IE      Import/export element (portal)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00346}00346 \textcolor{comment}{ *              DT      Data transfer element (tape/disk drive)}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00347}00347 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00348}\mbox{\hyperlink{structpage__device__capabilities}{00348}} \textcolor{keyword}{struct }\mbox{\hyperlink{structpage__device__capabilities}{page\_device\_capabilities}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00349}\mbox{\hyperlink{structpage__device__capabilities_abdb4fb226a5a806f3b93dd1e5d46497b}{00349}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_abdb4fb226a5a806f3b93dd1e5d46497b}{pg\_code}}; \textcolor{comment}{/* page code (0x1f) */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00350}\mbox{\hyperlink{structpage__device__capabilities_a78a36b3186cfd15402eb6f7d6a376d67}{00350}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_a78a36b3186cfd15402eb6f7d6a376d67}{pg\_length}};     \textcolor{comment}{/* page length (0x12) */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00351}00351 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00352}00352         \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00353}00353 \textcolor{comment}{         * The STOR\_xx bits indicate that an element of a given}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00354}00354 \textcolor{comment}{         * type may provide independent storage for a unit of}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00355}00355 \textcolor{comment}{         * media.  The top four bits of this value are reserved.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00356}00356 \textcolor{comment}{         */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00357}\mbox{\hyperlink{structpage__device__capabilities_a260788ea6e742203b4febadeb6333ca0}{00357}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_a260788ea6e742203b4febadeb6333ca0}{stor}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00358}\mbox{\hyperlink{scsi__ch_8h_a6c8b9a42b16827b4bbe463057c49a71e}{00358}} \textcolor{preprocessor}{\#define STOR\_MT         0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00359}\mbox{\hyperlink{scsi__ch_8h_af2afbfc56e2769dc2463778adaadfacc}{00359}} \textcolor{preprocessor}{\#define STOR\_ST         0x02}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00360}\mbox{\hyperlink{scsi__ch_8h_a37a60fc0beed360262401b8d09c4f89f}{00360}} \textcolor{preprocessor}{\#define STOR\_IE         0x04}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00361}\mbox{\hyperlink{scsi__ch_8h_abc14081ba12148bfb858674544d99922}{00361}} \textcolor{preprocessor}{\#define STOR\_DT         0x08}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00362}00362 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00363}\mbox{\hyperlink{structpage__device__capabilities_aa008025adbca57f2499860eb818b22d9}{00363}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_aa008025adbca57f2499860eb818b22d9}{reserved0}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00364}00364 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00365}00365         \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00366}00366 \textcolor{comment}{         * The MOVE\_TO\_yy bits indicate the changer supports}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00367}00367 \textcolor{comment}{         * moving a unit of medium from an element of a given type to an}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00368}00368 \textcolor{comment}{         * element of type yy.  This is used to determine if a given}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00369}00369 \textcolor{comment}{         * MOVE MEDIUM command is legal.  The top four bits of each}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00370}00370 \textcolor{comment}{         * of these values are reserved.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00371}00371 \textcolor{comment}{         */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00372}\mbox{\hyperlink{structpage__device__capabilities_a29b4a672eaffb3512a6aac8211f8c186}{00372}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_a29b4a672eaffb3512a6aac8211f8c186}{move\_from}}[CHET\_MAX + 1];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00373}\mbox{\hyperlink{scsi__ch_8h_af6f407570467ec6dc426f11e1ee57193}{00373}} \textcolor{preprocessor}{\#define MOVE\_TO\_MT      0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00374}\mbox{\hyperlink{scsi__ch_8h_adaae5dabae92362c61fdcf41d1983d52}{00374}} \textcolor{preprocessor}{\#define MOVE\_TO\_ST      0x02}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00375}\mbox{\hyperlink{scsi__ch_8h_a7b73ab85a27e9ed3f18e06b2ce0ab5ac}{00375}} \textcolor{preprocessor}{\#define MOVE\_TO\_IE      0x04}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00376}\mbox{\hyperlink{scsi__ch_8h_a206ee91f16c1ff0db22cc2073ce112ae}{00376}} \textcolor{preprocessor}{\#define MOVE\_TO\_DT      0x08}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00377}00377 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00378}\mbox{\hyperlink{structpage__device__capabilities_afbc88a29368a486ad9e3099501289d10}{00378}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_afbc88a29368a486ad9e3099501289d10}{reserved1}}[4];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00379}00379 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00380}00380         \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00381}00381 \textcolor{comment}{         * Similar to above, but for EXCHANGE MEDIUM.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00382}00382 \textcolor{comment}{         */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00383}\mbox{\hyperlink{structpage__device__capabilities_afa21f1991e0df1748f0b77990f081da7}{00383}}         u\_int8\_t        \mbox{\hyperlink{structpage__device__capabilities_afa21f1991e0df1748f0b77990f081da7}{exchange\_with}}[CHET\_MAX + 1];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00384}\mbox{\hyperlink{scsi__ch_8h_a95ae59ac7f7aed36f6c9a087b17f4fec}{00384}} \textcolor{preprocessor}{\#define EXCHANGE\_WITH\_MT        0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00385}\mbox{\hyperlink{scsi__ch_8h_aea695b766500947a3838fb3ce110a8ea}{00385}} \textcolor{preprocessor}{\#define EXCHANGE\_WITH\_ST        0x02}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00386}\mbox{\hyperlink{scsi__ch_8h_ae6269faa06ecbb36f44c9c383c663c6a}{00386}} \textcolor{preprocessor}{\#define EXCHANGE\_WITH\_IE        0x04}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00387}\mbox{\hyperlink{scsi__ch_8h_aef4b44a87d57411f49060917d6fa3cf7}{00387}} \textcolor{preprocessor}{\#define EXCHANGE\_WITH\_DT        0x08}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00388}00388 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00389}00389 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00390}00390 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00391}00391 \textcolor{comment}{ * Medium changer elemement address assignment page.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00392}00392 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00393}00393 \textcolor{comment}{ * Some of these fields can be a little confusing, so an explanation}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00394}00394 \textcolor{comment}{ * is in order.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00395}00395 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00396}00396 \textcolor{comment}{ * Each component within a medium changer apparatus is called an}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00397}00397 \textcolor{comment}{ * "{}element"{}.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00398}00398 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00399}00399 \textcolor{comment}{ * The "{}medium transport element address"{} is the address of the first}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00400}00400 \textcolor{comment}{ * picker (robotic arm).  "{}Number of medium transport elements"{} tells}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00401}00401 \textcolor{comment}{ * us how many pickers exist in the changer.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00402}00402 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00403}00403 \textcolor{comment}{ * The "{}first storage element address"{} is the address of the first}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00404}00404 \textcolor{comment}{ * slot in the tape or disk magazine.  "{}Number of storage elements"{} tells}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00405}00405 \textcolor{comment}{ * us how many slots exist in the changer.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00406}00406 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00407}00407 \textcolor{comment}{ * The "{}first import/export element address"{} is the address of the first}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00408}00408 \textcolor{comment}{ * medium portal accessible both by the medium changer and an outside}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00409}00409 \textcolor{comment}{ * human operator.  This is where the changer might deposit tapes destined}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00410}00410 \textcolor{comment}{ * for some vault.  The "{}number of import/export elements"{} tells us}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00411}00411 \textcolor{comment}{ * not many of these portals exist in the changer.  NOTE: this number may}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00412}00412 \textcolor{comment}{ * be 0.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00413}00413 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00414}00414 \textcolor{comment}{ * The "{}first data transfer element address"{} is the address of the first}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00415}00415 \textcolor{comment}{ * tape or disk drive in the changer.  "{}Number of data transfer elements"{}}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00416}00416 \textcolor{comment}{ * tells us how many drives exist in the changer.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00417}00417 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00418}\mbox{\hyperlink{structpage__element__address__assignment}{00418}} \textcolor{keyword}{struct }\mbox{\hyperlink{structpage__element__address__assignment}{page\_element\_address\_assignment}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00419}\mbox{\hyperlink{structpage__element__address__assignment_a0bb4c1f4f1932f83302f6d1fb7aa5fa2}{00419}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a0bb4c1f4f1932f83302f6d1fb7aa5fa2}{pg\_code}}; \textcolor{comment}{/* page code (0x1d) */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00420}\mbox{\hyperlink{structpage__element__address__assignment_a5e95c4ad491eb1d3b7c1daa144e5cee0}{00420}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a5e95c4ad491eb1d3b7c1daa144e5cee0}{pg\_length}};     \textcolor{comment}{/* page length (0x12) */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00421}00421 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00422}00422         \textcolor{comment}{/* Medium transport element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00423}\mbox{\hyperlink{structpage__element__address__assignment_a6e8c890d6474fb6a8a25bae90725013a}{00423}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a6e8c890d6474fb6a8a25bae90725013a}{mtea}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00424}00424 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00425}00425         \textcolor{comment}{/* Number of medium transport elements */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00426}\mbox{\hyperlink{structpage__element__address__assignment_aabc7dd7d270ecab9d603288be7c46f7d}{00426}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_aabc7dd7d270ecab9d603288be7c46f7d}{nmte}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00427}00427 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00428}00428         \textcolor{comment}{/* First storage element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00429}\mbox{\hyperlink{structpage__element__address__assignment_acfde82cac132d74c30b984812bc13990}{00429}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_acfde82cac132d74c30b984812bc13990}{fsea}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00430}00430 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00431}00431         \textcolor{comment}{/* Number of storage elements */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00432}\mbox{\hyperlink{structpage__element__address__assignment_a8c0fca8a8f22d43947f53028f4ded7fc}{00432}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a8c0fca8a8f22d43947f53028f4ded7fc}{nse}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00433}00433 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00434}00434         \textcolor{comment}{/* First import/export element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00435}\mbox{\hyperlink{structpage__element__address__assignment_a7035136a789edd3aca945ad40cbaeb33}{00435}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a7035136a789edd3aca945ad40cbaeb33}{fieea}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00436}00436 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00437}00437         \textcolor{comment}{/* Number of import/export elements */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00438}\mbox{\hyperlink{structpage__element__address__assignment_afa8303e64fe251dc98a9eab4259dadf1}{00438}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_afa8303e64fe251dc98a9eab4259dadf1}{niee}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00439}00439 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00440}00440         \textcolor{comment}{/* First data transfer element address */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00441}\mbox{\hyperlink{structpage__element__address__assignment_a453e65af316e8c7feab8f3516236bbc9}{00441}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a453e65af316e8c7feab8f3516236bbc9}{fdtea}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00442}00442 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00443}00443         \textcolor{comment}{/* Number of data transfer elements */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00444}\mbox{\hyperlink{structpage__element__address__assignment_a17dc0d45f29edf4c95d6000b9543dc6d}{00444}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_a17dc0d45f29edf4c95d6000b9543dc6d}{ndte}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00445}00445 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00446}\mbox{\hyperlink{structpage__element__address__assignment_ab97cf8297a3fb85597608cd9bef57328}{00446}}         u\_int8\_t        \mbox{\hyperlink{structpage__element__address__assignment_ab97cf8297a3fb85597608cd9bef57328}{reserved}}[2];}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00447}00447 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00448}00448 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00449}00449 \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00450}00450 \textcolor{comment}{ * Transport geometry parameters page.}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00451}00451 \textcolor{comment}{ *}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00452}00452 \textcolor{comment}{ * Defines whether each medium transport element is a member of a set of}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00453}00453 \textcolor{comment}{ * elements that share a common robotics subsystem and whether the element}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00454}00454 \textcolor{comment}{ * is capable of media rotation.  One transport geometry descriptor is}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00455}00455 \textcolor{comment}{ * transferred for each medium transport element, beginning with the first}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00456}00456 \textcolor{comment}{ * medium transport element (other than the default transport element address}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00457}00457 \textcolor{comment}{ * of 0).}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00458}00458 \textcolor{comment}{ */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00459}\mbox{\hyperlink{structpage__transport__geometry__parameters}{00459}} \textcolor{keyword}{struct }\mbox{\hyperlink{structpage__transport__geometry__parameters}{page\_transport\_geometry\_parameters}} \{}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00460}\mbox{\hyperlink{structpage__transport__geometry__parameters_abf2ac5097a1efc0a509025d3319c3b7e}{00460}}         u\_int8\_t        \mbox{\hyperlink{structpage__transport__geometry__parameters_abf2ac5097a1efc0a509025d3319c3b7e}{pg\_code}}; \textcolor{comment}{/* page code (0x1e) */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00461}\mbox{\hyperlink{structpage__transport__geometry__parameters_a08cd3916df2f42a8e8ab1cc92cff7abc}{00461}}         u\_int8\_t        \mbox{\hyperlink{structpage__transport__geometry__parameters_a08cd3916df2f42a8e8ab1cc92cff7abc}{pg\_length}};     \textcolor{comment}{/* page length; variable */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00462}00462 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00463}00463         \textcolor{comment}{/* Transport geometry descriptor(s) are here. */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00464}00464 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00465}\mbox{\hyperlink{structpage__transport__geometry__parameters_ace8c8470d713825c234e51069f1e74ba}{00465}}         u\_int8\_t        \mbox{\hyperlink{structpage__transport__geometry__parameters_ace8c8470d713825c234e51069f1e74ba}{misc}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00466}\mbox{\hyperlink{scsi__ch_8h_ac8cdb6d85b5907fdf39e001b713b31bb}{00466}} \textcolor{preprocessor}{\#define CAN\_ROTATE      0x01}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00467}00467 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00468}00468         \textcolor{comment}{/* Member number in transport element set. */}}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00469}\mbox{\hyperlink{structpage__transport__geometry__parameters_a2dca3c924eeca395e511f726309120d7}{00469}}         u\_int8\_t        \mbox{\hyperlink{structpage__transport__geometry__parameters_a2dca3c924eeca395e511f726309120d7}{member}};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00470}00470 \};}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00471}00471 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00472}00472 \_\_BEGIN\_DECLS}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00473}00473 \textcolor{keywordtype}{void} \mbox{\hyperlink{scsi__ch_8h_ada94daf375132bf7e31de15ad8950fab}{scsi\_move\_medium}}(\textcolor{keyword}{struct} \mbox{\hyperlink{structccb__scsiio}{ccb\_scsiio}} *csio, u\_int32\_t retries,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00474}00474                       \textcolor{keywordtype}{void} (*cbfcnp)(\textcolor{keyword}{struct} \mbox{\hyperlink{structcam__periph}{cam\_periph}} *, \textcolor{keyword}{union} \mbox{\hyperlink{unionccb}{ccb}} *),}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00475}00475                       u\_int8\_t tag\_action, u\_int32\_t tea, u\_int32\_t src,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00476}00476                       u\_int32\_t dst, \textcolor{keywordtype}{int} invert, u\_int8\_t sense\_len,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00477}00477                       u\_int32\_t timeout);}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00478}00478 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00479}00479 \textcolor{keywordtype}{void} \mbox{\hyperlink{scsi__ch_8h_aa3c02ab23ecefb92cb3b4dc5542a0168}{scsi\_exchange\_medium}}(\textcolor{keyword}{struct} \mbox{\hyperlink{structccb__scsiio}{ccb\_scsiio}} *csio, u\_int32\_t retries,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00480}00480                           \textcolor{keywordtype}{void} (*cbfcnp)(\textcolor{keyword}{struct} \mbox{\hyperlink{structcam__periph}{cam\_periph}} *, \textcolor{keyword}{union} \mbox{\hyperlink{unionccb}{ccb}} *),}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00481}00481                           u\_int8\_t tag\_action, u\_int32\_t tea, u\_int32\_t src,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00482}00482                           u\_int32\_t dst1, u\_int32\_t dst2, \textcolor{keywordtype}{int} invert1,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00483}00483                           \textcolor{keywordtype}{int} invert2, u\_int8\_t sense\_len, u\_int32\_t timeout);}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00484}00484 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00485}00485 \textcolor{keywordtype}{void} \mbox{\hyperlink{scsi__ch_8h_a7d0be791f5ed9f625e5ca2d4eed4331f}{scsi\_position\_to\_element}}(\textcolor{keyword}{struct} \mbox{\hyperlink{structccb__scsiio}{ccb\_scsiio}} *csio, u\_int32\_t retries,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00486}00486                               \textcolor{keywordtype}{void} (*cbfcnp)(\textcolor{keyword}{struct} \mbox{\hyperlink{structcam__periph}{cam\_periph}} *, \textcolor{keyword}{union} \mbox{\hyperlink{unionccb}{ccb}} *),}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00487}00487                               u\_int8\_t tag\_action, u\_int32\_t tea, u\_int32\_t dst,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00488}00488                               \textcolor{keywordtype}{int} invert, u\_int8\_t sense\_len,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00489}00489                               u\_int32\_t timeout);}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00490}00490 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00491}00491 \textcolor{keywordtype}{void} \mbox{\hyperlink{scsi__ch_8h_a69134e2cb4d592a5fdb2fa1cde424874}{scsi\_read\_element\_status}}(\textcolor{keyword}{struct} \mbox{\hyperlink{structccb__scsiio}{ccb\_scsiio}} *csio, u\_int32\_t retries,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00492}00492                               \textcolor{keywordtype}{void} (*cbfcnp)(\textcolor{keyword}{struct} \mbox{\hyperlink{structcam__periph}{cam\_periph}} *, \textcolor{keyword}{union} \mbox{\hyperlink{unionccb}{ccb}} *),}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00493}00493                               u\_int8\_t tag\_action, \textcolor{keywordtype}{int} voltag, u\_int32\_t sea,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00494}00494                               \textcolor{keywordtype}{int} curdata, \textcolor{keywordtype}{int} dvcid,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00495}00495                               u\_int32\_t count, u\_int8\_t *data\_ptr,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00496}00496                               u\_int32\_t dxfer\_len, u\_int8\_t sense\_len,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00497}00497                               u\_int32\_t timeout);}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00498}00498 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00499}00499 \textcolor{keywordtype}{void} \mbox{\hyperlink{scsi__ch_8h_a88dc5b00f0ea298a820324abb6ae7dd2}{scsi\_initialize\_element\_status}}(\textcolor{keyword}{struct} \mbox{\hyperlink{structccb__scsiio}{ccb\_scsiio}} *csio, u\_int32\_t retries,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00500}00500                                \textcolor{keywordtype}{void} (*cbfcnp)(\textcolor{keyword}{struct} \mbox{\hyperlink{structcam__periph}{cam\_periph}} *, \textcolor{keyword}{union} \mbox{\hyperlink{unionccb}{ccb}} *),}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00501}00501                                u\_int8\_t tag\_action, u\_int8\_t sense\_len,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00502}00502                                u\_int32\_t timeout);}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00503}00503 \textcolor{keywordtype}{void} \mbox{\hyperlink{scsi__ch_8h_a7ab4d4841676722765640050f2bd14e5}{scsi\_send\_volume\_tag}}(\textcolor{keyword}{struct} \mbox{\hyperlink{structccb__scsiio}{ccb\_scsiio}} *csio, u\_int32\_t retries,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00504}00504                           \textcolor{keywordtype}{void} (*cbfcnp)(\textcolor{keyword}{struct} \mbox{\hyperlink{structcam__periph}{cam\_periph}} *, \textcolor{keyword}{union} \mbox{\hyperlink{unionccb}{ccb}} *),}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00505}00505                           u\_int8\_t tag\_action, }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00506}00506                           u\_int16\_t element\_address,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00507}00507                           u\_int8\_t send\_action\_code,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00508}00508                           \textcolor{keyword}{struct} \mbox{\hyperlink{structscsi__send__volume__tag__parameters}{scsi\_send\_volume\_tag\_parameters}} *parameters,}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00509}00509                           u\_int8\_t sense\_len, u\_int32\_t timeout);}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00510}00510 \_\_END\_DECLS}
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00511}00511 }
\DoxyCodeLine{\Hypertarget{scsi__ch_8h_source_l00512}00512 \textcolor{preprocessor}{\#endif }\textcolor{comment}{/* \_SCSI\_SCSI\_CH\_H */}\textcolor{preprocessor}{}}

\end{DoxyCode}
