# include/scsi/spc_protocol.h File Reference

SCSI Primary Commands. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
struct | scsi_inquiry_data
| SCSI Standard Inquiry data structure. More...
struct | scsi_mode_param_header6
| SCSI Mode Parameter Header used by MODE SELECT(6) and MODE SENSE(6). More...
struct | scsi_mode_param_header10
| SCSI Mode Parameter Header used by MODE SELECT(10) and MODE SENSE(10). More...
struct | scsi_mode_page_0_header
| SCSI Page_0 Mode Page header (SPF not set). More...
## Defines
#define | SCSI_INQ_REQ_EVPD 0x01
| Enable Vital Product Data.
#define | SCSI_INQ_PQ_CONNECTED 0x00
| Peripheral connected.
#define | SCSI_INQ_PQ_NOT_CONN 0x20
| Peripheral not connected.
#define | SCSI_INQ_PQ_NOT_SUPP 0x60
| Peripheral not supported.
#define | SCSI_INQ_DT_DIR_ACCESS 0x00
| Direct Access.
#define | SCSI_INQ_DT_SEQ_ACCESS 0x01
| Sequential Access.
#define | SCSI_INQ_DT_PRINTER 0x02
| Printer.
#define | SCSI_INQ_DT_PROCESSOR 0x03
| Processor device.
#define | SCSI_INQ_DT_WRITE_ONCE 0x04
| Write-once device.
#define | SCSI_INQ_DT_CD_DVD 0x05
| CD/DVD device.
#define | SCSI_INQ_DT_OPTICAL 0x07
| Optical Memory.
#define | SCSI_INQ_DT_MC 0x08
| Medium Changer.
#define | SCSI_INQ_DT_ARRAY 0x0c
| Storage Array Controller.
#define | SCSI_INQ_DT_ENCLOSURE 0x0d
| Enclosure Services.
#define | SCSI_INQ_DT_RBC 0x0e
| Simplified Direct Access.
#define | SCSI_INQ_DT_OCRW 0x0f
| Optical card reader/writer.
#define | SCSI_INQ_DT_BCC 0x10
| Bridge Controller Commands.
#define | SCSI_INQ_DT_OSD 0x11
| Object-based Storage.
#define | SCSI_INQ_DT_NONE 0x1f
| No Peripheral.
#define | SCSI_INQ_RMB 0x80
| Removable Medium.
#define | SCSI_INQ_VER_NONE 0x00
| No standards conformance.
#define | SCSI_INQ_VER_SPC 0x03
| SCSI Primary Commands.
#define | SCSI_INQ_VER_SPC2 0x04
| SCSI Primary Commands - 2.
#define | SCSI_INQ_VER_SPC3 0x05
| SCSI Primary Commands - 3.
#define | SCSI_INQ_NORMACA 0x20
| Normal ACA Supported.
#define | SCSI_INQ_HISUP 0x10
| Hierarchial LUN addressing.
#define | SCSI_INQ_RSP_SPC2 0x02
| SPC-2 / SPC-3 response format.
#define | SCSI_INQ_ADDL_LEN(tot) ((tot) - 5)
| Total length is tot.
#define | SCSI_PAGE_CODE_PS (1 << 7)
| Parameters Saveable.
#define | SCSI_PAGE_CODE_SPF (1 << 6)
| SubPage Format.
## Variables
struct scsi_inquiry_data | __packed
| SCSI Standard Inquiry data structure.

## Detailed Description

SCSI Primary Commands.

This file contains definitions of some of the commands found in the SPC-2 standard.

- Compiler: IAR EWAVR32 and GNU GCC for AVR32
- Supported devices: All devices
- AppNote:

Author:
  Atmel Corporation: http://www.atmel.com
  Support and FAQ: http://support.atmel.no/

Definition in file spc_protocol.h.

## Define Documentation

#define SCSI_INQ_ADDL_LEN | ( | tot |  | ) | ((tot) - 5)

Total length is tot.

Definition at line 95 of file spc_protocol.h.

#define SCSI_INQ_DT_ARRAY 0x0c

Storage Array Controller.

Definition at line 76 of file spc_protocol.h.

#define SCSI_INQ_DT_BCC 0x10

Bridge Controller Commands.

Definition at line 80 of file spc_protocol.h.

#define SCSI_INQ_DT_CD_DVD 0x05

CD/DVD device.

Definition at line 73 of file spc_protocol.h.

#define SCSI_INQ_DT_DIR_ACCESS 0x00

Direct Access.

Definition at line 68 of file spc_protocol.h.

#define SCSI_INQ_DT_ENCLOSURE 0x0d

Enclosure Services.

Definition at line 77 of file spc_protocol.h.

#define SCSI_INQ_DT_MC 0x08

Medium Changer.

Definition at line 75 of file spc_protocol.h.

#define SCSI_INQ_DT_NONE 0x1f

No Peripheral.

Definition at line 82 of file spc_protocol.h.

#define SCSI_INQ_DT_OCRW 0x0f

Optical card reader/writer.

Definition at line 79 of file spc_protocol.h.

#define SCSI_INQ_DT_OPTICAL 0x07

Optical Memory.

Definition at line 74 of file spc_protocol.h.

#define SCSI_INQ_DT_OSD 0x11

Object-based Storage.

Definition at line 81 of file spc_protocol.h.

#define SCSI_INQ_DT_PRINTER 0x02

Printer.

Definition at line 70 of file spc_protocol.h.

#define SCSI_INQ_DT_PROCESSOR 0x03

Processor device.

Definition at line 71 of file spc_protocol.h.

#define SCSI_INQ_DT_RBC 0x0e

Simplified Direct Access.

Definition at line 78 of file spc_protocol.h.

#define SCSI_INQ_DT_SEQ_ACCESS 0x01

Sequential Access.

Definition at line 69 of file spc_protocol.h.

#define SCSI_INQ_DT_WRITE_ONCE 0x04

Write-once device.

Definition at line 72 of file spc_protocol.h.

#define SCSI_INQ_HISUP 0x10

Hierarchial LUN addressing.

Definition at line 92 of file spc_protocol.h.

#define SCSI_INQ_NORMACA 0x20

Normal ACA Supported.

Definition at line 91 of file spc_protocol.h.

#define SCSI_INQ_PQ_CONNECTED 0x00

Peripheral connected.

Definition at line 65 of file spc_protocol.h.

#define SCSI_INQ_PQ_NOT_CONN 0x20

Peripheral not connected.

Definition at line 66 of file spc_protocol.h.

#define SCSI_INQ_PQ_NOT_SUPP 0x60

Peripheral not supported.

Definition at line 67 of file spc_protocol.h.

#define SCSI_INQ_REQ_EVPD 0x01

Enable Vital Product Data.

Definition at line 58 of file spc_protocol.h.

#define SCSI_INQ_RMB 0x80

Removable Medium.

Definition at line 84 of file spc_protocol.h.

#define SCSI_INQ_RSP_SPC2 0x02

SPC-2 / SPC-3 response format.

Definition at line 93 of file spc_protocol.h.

#define SCSI_INQ_VER_NONE 0x00

No standards conformance.

Definition at line 86 of file spc_protocol.h.

#define SCSI_INQ_VER_SPC 0x03

SCSI Primary Commands.

Definition at line 87 of file spc_protocol.h.

#define SCSI_INQ_VER_SPC2 0x04

SCSI Primary Commands - 2.

Definition at line 88 of file spc_protocol.h.

#define SCSI_INQ_VER_SPC3 0x05

SCSI Primary Commands - 3.

Definition at line 89 of file spc_protocol.h.

#define SCSI_PAGE_CODE_PS (1 << 7)

Parameters Saveable.

Definition at line 236 of file spc_protocol.h.

#define SCSI_PAGE_CODE_SPF (1 << 6)

SubPage Format.

Definition at line 237 of file spc_protocol.h.

## Variable Documentation

struct scsi_inquiry_data __packed

SCSI Standard Inquiry data structure.