/** @file
Support for SCSI-2 standard
Copyright (c) 2006 - 2011, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef __SCSI_H__
#define __SCSI_H__
//
// SCSI command OP Code
//
//
// Commands for all device types
//
//
// Additional commands for Direct Access Devices
//
//
// Additional commands for Sequential Access Devices
//
//
// Additional commands for Printer Devices
//
//
// Additional commands for Processor Devices
//
//
// Additional commands for Write-Once Devices
//
//
// Additional commands for CD-ROM Devices
//
//
// Additional commands for Scanner Devices
//
//
// Additional commands for Optical Memory Devices
//
//
// Additional commands for Medium Changer Devices
//
//
// Additional commands for Communition Devices
//
//
// SCSI Data Transfer Direction
//
#define EFI_SCSI_DATA_IN 0
//
// Peripheral Device Type Definitions
//
//
// 0Ch - 1Eh are reserved
//
//
// Page Codes for INQUIRY command
//
#pragma pack(1)
///
/// Standard INQUIRY data format
///
typedef struct {
///
/// Supported VPD Pages VPD page
///
typedef struct {
///
/// Block Limits VPD page
///
typedef struct {
///
/// Error codes 70h and 71h sense data format
///
typedef struct {
///
/// SCSI Disk READ CAPACITY Data
///
typedef struct {
typedef struct {
#pragma pack()
//
// Sense Key
//
//
// Additional Sense Codes and Sense Code Qualifiers.
// Only some frequently used additional sense codes and qualifiers are
// defined here. Please refer to SCSI standard for full value definition.
//
#endif