2
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
5
* Copyright (C) 1998-2004 Luca Deri <deri@ntop.org>
7
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
9
* This program is free software; you can redistribute it and/or modify
10
* it under the terms of the GNU General Public License as published by
11
* the Free Software Foundation; either version 2 of the License, or
12
* (at your option) any later version.
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
* GNU General Public License for more details.
19
* You should have received a copy of the GNU General Public License
20
* along with this program; if not, write to the Free Software Foundation,
21
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
#ifndef __SCSI_UTILS_H__
25
#define __SCSI_UTILS_H__
27
#define SCSI_DEV_BLOCK 0x0
28
#define SCSI_DEV_SSC 0x1
29
#define SCSI_DEV_PRINTER 0x2
30
#define SCSI_DEV_WORM 0x4
31
#define SCSI_DEV_CDROM 0x5
32
#define SCSI_DEV_SMC 0x8
33
#define SCSI_DEV_INITIATOR 0x12 /* Our own convention */
34
#define SCSI_DEV_UNKNOWN 0x13 /* Our own convention */
35
#define SCSI_DEV_NODEV 0x1F
36
#define SCSI_DEV_UNINIT 0xFF
38
#define SCSI_READ_CMD 0x1
39
#define SCSI_WR_CMD 0x2
40
#define SCSI_NONRDWR_CMD 0x3
42
#define SCSI_SPC2_INQUIRY 0x12
43
#define SCSI_SPC2_INQUIRY_EVPD 0xFF
44
#define SCSI_SPC2_REPORTLUNS 0xA0
45
#define SCSI_SBC2_READCAPACITY 0x25
46
#define SCSI_SBC2_READ6 0x08
47
#define SCSI_SBC2_READ10 0x28
48
#define SCSI_SBC2_READ12 0xA8
49
#define SCSI_SBC2_READ16 0x88
50
#define SCSI_SBC2_WRITE6 0x0A
51
#define SCSI_SBC2_WRITE10 0x2A
52
#define SCSI_SBC2_WRITE12 0xAA
53
#define SCSI_SBC2_WRITE16 0x8A
54
#define SCSI_SSC2_READ6 0x08
55
#define SCSI_SSC2_READ_16 0x88
56
#define SCSI_SSC2_READ_REVERSE_6 0x0F
57
#define SCSI_SSC2_READ_REVERSE_16 0x81
58
#define SCSI_SSC2_WRITE6 0x0A
59
#define SCSI_SSC2_WRITE_16 0x8A
61
#define MAX_LUNS_SUPPORTED 256
62
#define MAX_LUNS_GRAPHED 10
63
#define SCSI_VENDOR_ID_LEN 16
65
#define SCSI_STATUS_GOOD 0
66
#define SCSI_STATUS_CHK_CONDITION 0x02
67
#define SCSI_STATUS_BUSY 0x08
68
#define SCSI_STATUS_RESV_CONFLICT 0x18
69
#define SCSI_STATUS_TASK_SET_FULL 0x28
70
#define SCSI_STATUS_TASK_ABORTED 0x40
72
#define SCSI_TM_ABORT_TASK_SET 0x2
73
#define SCSI_TM_CLEAR_TASK_SET 0x4
74
#define SCSI_TM_LUN_RESET 0x10
75
#define SCSI_TM_TARGET_RESET 0x20
76
#define SCSI_TM_CLEAR_ACA 0x40