Contiki-NG
Loading...
Searching...
No Matches
rbc_const.h
1#ifndef RBC_CONST_H_7YXZF39S33__
2#define RBC_CONST_H_7YXZF39S33__
3
4#include <spc2_const.h>
5
6/* SCSI operation codes */
7/* Additional commands for RBC */
8
9#define SCSI_CMD_FORMAT_UNIT 0x04
10#define SCSI_CMD_READ_10 0x28
11#define SCSI_CMD_READ_CAPACITY 0x25
12#define SCSI_CMD_START_STOP_UNIT 0x1B
13#define SCSI_CMD_SYNCHRONIZE_CACHE 0x35
14#define SCSI_CMD_TEST_UNIT_READY 0x00
15#define SCSI_CMD_VERIFY_10 0x2F
16#define SCSI_CMD_WRITE_10 0x2A
17
18/* Status codes */
19/* From SAM-2 */
20#define SCSI_STATUS_GOOD 0x00
21#define SCSI_STATUS_CHECK_CONDITION 0x02
22#define SCSI_STATUS_CONDITION _MET 0x04
23#define SCSI_STATUS_BUSY 0x08
24#define SCSI_STATUS_INTERMEDIATE 0x10
25#define SCSI_STATUS_INTERMEDIATE_CONDITION_MET 0x14
26#define SCSI_STATUS_RESERVATION_CONFLICT 0x18
27#define SCSI_STATUS_TASK_SET_FULL 0x28
28#define SCSI_STATUS_ACA_ACTIVE 0x30
29#define SCSI_STATUS_TASK_ABORTED 0x40
30
31/* Sense keys */
32#define SCSI_SENSE_KEY_NO_SENSE 0x0
33#define SCSI_SENSE_KEY_RECOVERED_ERROR 0x1
34#define SCSI_SENSE_KEY_NOT_READY 0x2
35#define SCSI_SENSE_KEY_MEDIUM_ERROR 0x3
36#define SCSI_SENSE_KEY_HARDWARE_ERROR 0x4
37#define SCSI_SENSE_KEY_ILLEGAL_REQUEST 0x5
38#define SCSI_SENSE_KEY_UNIT_ATTENTION 0x6
39#define SCSI_SENSE_KEY_DATA_PROTECT 0x7
40#define SCSI_SENSE_KEY_BLANK_CHECK 0x8
41#define SCSI_SENSE_KEY_VENDOR_SPECIFIC 0x9
42#define SCSI_SENSE_KEY_COPY_ABORTED 0xA
43#define SCSI_SENSE_KEY_ABORTED_COMMAND 0xB
44#define SCSI_SENSE_KEY_VOLUME_OVERFLOW 0xD
45#define SCSI_SENSE_KEY_MISCOMPARE 0xE
46
47/* Additional sense codes */
48#define SCSI_ASC_NO_SENSE 0x0000
49#define SCSI_ASC_INVALID_COMMAND_OPERATION 0x2000
50#define SCSI_ASC_INVALID_FIELD_IN_PARAMETER_LIST 0x2600
51
52#define SCSI_ASC_INVALID_FIELD_IN_CDB 0x2400
53
54/* RBC mode page */
55#define SCSI_MODE_RBC_DEVICE_PAGE 0x06
56#define SCSI_MODE_WCD 0x01
57#define SCSI_MODE_READD 0x08
58#define SCSI_MODE_WRITED 0x04
59#define SCSI_MODE_FORMATD 0x02
60#define SCSI_MODE_LOCKD 0x01
61
62/* WRITE(10) command flags */
63
64#define SCSI_WRITE_FUA 0x08
65
66#endif /* RBC_CONST_H_7YXZF39S33__ */