Improve coding style in MdeModulePkg.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9793 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
rsun3
2010-01-19 06:42:21 +00:00
parent cd730ec08d
commit 1ccdbf2a3e
45 changed files with 953 additions and 936 deletions

View File

@@ -2,7 +2,7 @@
Definition of USB Mass Storage Class and its value, USB Mass Transport Protocol,
and other common definitions.
Copyright (c) 2007 - 2008, Intel Corporation
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. 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
@@ -38,36 +38,34 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#define USB_IS_INTERRUPT_ENDPOINT(Attribute) (((Attribute) & (BIT0 | BIT1)) == USB_ENDPOINT_INTERRUPT)
#define USB_IS_ERROR(Result, Error) (((Result) & (Error)) != 0)
typedef enum {
//
// Usb mass storage class code
//
USB_MASS_STORE_CLASS = 0x08,
//
// Usb mass storage class code
//
#define USB_MASS_STORE_CLASS 0x08
//
// Usb mass storage subclass code, specify the command set used.
//
USB_MASS_STORE_RBC = 0x01, ///< Reduced Block Commands
USB_MASS_STORE_8020I = 0x02, ///< SFF-8020i, typically a CD/DVD device
USB_MASS_STORE_QIC = 0x03, ///< Typically a tape device
USB_MASS_STORE_UFI = 0x04, ///< Typically a floppy disk driver device
USB_MASS_STORE_8070I = 0x05, ///< SFF-8070i, typically a floppy disk driver device.
USB_MASS_STORE_SCSI = 0x06, ///< SCSI transparent command set
//
// Usb mass storage subclass code, specify the command set used.
//
#define USB_MASS_STORE_RBC 0x01 ///< Reduced Block Commands
#define USB_MASS_STORE_8020I 0x02 ///< SFF-8020i, typically a CD/DVD device
#define USB_MASS_STORE_QIC 0x03 ///< Typically a tape device
#define USB_MASS_STORE_UFI 0x04 ///< Typically a floppy disk driver device
#define USB_MASS_STORE_8070I 0x05 ///< SFF-8070i, typically a floppy disk driver device.
#define USB_MASS_STORE_SCSI 0x06 ///< SCSI transparent command set
//
// Usb mass storage protocol code, specify the transport protocol
//
USB_MASS_STORE_CBI0 = 0x00, ///< CBI protocol with command completion interrupt
USB_MASS_STORE_CBI1 = 0x01, ///< CBI protocol without command completion interrupt
USB_MASS_STORE_BOT = 0x50, ///< Bulk-Only Transport
//
// Usb mass storage protocol code, specify the transport protocol
//
#define USB_MASS_STORE_CBI0 0x00 ///< CBI protocol with command completion interrupt
#define USB_MASS_STORE_CBI1 0x01 ///< CBI protocol without command completion interrupt
#define USB_MASS_STORE_BOT 0x50 ///< Bulk-Only Transport
USB_MASS_1_MILLISECOND = 1000,
USB_MASS_1_SECOND = 1000 * USB_MASS_1_MILLISECOND,
#define USB_MASS_1_MILLISECOND 1000
#define USB_MASS_1_SECOND (1000 * USB_MASS_1_MILLISECOND)
USB_MASS_CMD_SUCCESS = 0,
USB_MASS_CMD_FAIL,
USB_MASS_CMD_PERSISTENT
} USB_MASS_DEV_CLASS_AND_VALUE;
#define USB_MASS_CMD_SUCCESS 0
#define USB_MASS_CMD_FAIL 1
#define USB_MASS_CMD_PERSISTENT 2
/**
Initializes USB transport protocol.

View File

@@ -2,7 +2,7 @@
Implementation of the command set of USB Mass Storage Specification
for Bootability, Revision 1.0.
Copyright (c) 2007 - 2008, Intel Corporation
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. 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
@@ -92,10 +92,10 @@ UsbBootRequestSense (
case USB_BOOT_SENSE_NOT_READY:
Status = EFI_DEVICE_ERROR;
if (SenseData.ASC == USB_BOOT_ASC_NO_MEDIA) {
if (SenseData.Asc == USB_BOOT_ASC_NO_MEDIA) {
Media->MediaPresent = FALSE;
Status = EFI_NO_MEDIA;
} else if (SenseData.ASC == USB_BOOT_ASC_NOT_READY) {
} else if (SenseData.Asc == USB_BOOT_ASC_NOT_READY) {
Status = EFI_NOT_READY;
}
break;
@@ -106,7 +106,7 @@ UsbBootRequestSense (
case USB_BOOT_SENSE_UNIT_ATTENTION:
Status = EFI_DEVICE_ERROR;
if (SenseData.ASC == USB_BOOT_ASC_MEDIA_CHANGE) {
if (SenseData.Asc == USB_BOOT_ASC_MEDIA_CHANGE) {
//
// If MediaChange, reset ReadOnly and new MediaId
//
@@ -129,8 +129,8 @@ UsbBootRequestSense (
DEBUG ((EFI_D_INFO, "UsbBootRequestSense: (%r) with sense key %x/%x/%x\n",
Status,
USB_BOOT_SENSE_KEY (SenseData.SenseKey),
SenseData.ASC,
SenseData.ASCQ
SenseData.Asc,
SenseData.Ascq
));
return Status;

View File

@@ -2,7 +2,7 @@
Definition of the command set of USB Mass Storage Specification
for Bootability, Revision 1.0.
Copyright (c) 2007 - 2008, Intel Corporation
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. 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
@@ -18,79 +18,77 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
#include "UsbMass.h"
typedef enum {
//
// The opcodes of various USB boot commands:
// INQUIRY/REQUEST_SENSE are "No Timeout Commands" as specified
// by Multi-Media Commands (MMC) set.
// Others are "Group 1 Timeout Commands". That is,
// they should be retried if driver is ready.
//
USB_BOOT_INQUIRY_OPCODE = 0x12,
USB_BOOT_REQUEST_SENSE_OPCODE = 0x03,
USB_BOOT_MODE_SENSE10_OPCODE = 0x5A,
USB_BOOT_READ_CAPACITY_OPCODE = 0x25,
USB_BOOT_TEST_UNIT_READY_OPCODE = 0x00,
USB_BOOT_READ10_OPCODE = 0x28,
USB_BOOT_WRITE10_OPCODE = 0x2A,
//
// The opcodes of various USB boot commands:
// INQUIRY/REQUEST_SENSE are "No Timeout Commands" as specified
// by Multi-Media Commands (MMC) set.
// Others are "Group 1 Timeout Commands". That is,
// they should be retried if driver is ready.
//
#define USB_BOOT_INQUIRY_OPCODE 0x12
#define USB_BOOT_REQUEST_SENSE_OPCODE 0x03
#define USB_BOOT_MODE_SENSE10_OPCODE 0x5A
#define USB_BOOT_READ_CAPACITY_OPCODE 0x25
#define USB_BOOT_TEST_UNIT_READY_OPCODE 0x00
#define USB_BOOT_READ10_OPCODE 0x28
#define USB_BOOT_WRITE10_OPCODE 0x2A
USB_SCSI_MODE_SENSE6_OPCODE = 0x1A,
//
// The Sense Key part of the sense data. Sense data has three levels:
// Sense key, Additional Sense Code and Additional Sense Code Qualifier
//
USB_BOOT_SENSE_NO_SENSE = 0x00, ///< No sense key
USB_BOOT_SENSE_RECOVERED = 0x01, ///< Last command succeed with recovery actions
USB_BOOT_SENSE_NOT_READY = 0x02, ///< Device not ready
USB_BOOT_SNESE_MEDIUM_ERROR = 0X03, ///< Failed probably because flaw in the media
USB_BOOT_SENSE_HARDWARE_ERROR = 0X04, ///< Non-recoverable hardware failure
USB_BOOT_SENSE_ILLEGAL_REQUEST = 0X05, ///< Illegal parameters in the request
USB_BOOT_SENSE_UNIT_ATTENTION = 0X06, ///< Removable medium may have been changed
USB_BOOT_SENSE_DATA_PROTECT = 0X07, ///< Write protected
USB_BOOT_SENSE_BLANK_CHECK = 0X08, ///< Blank/non-blank medium while reading/writing
USB_BOOT_SENSE_VENDOR = 0X09, ///< Vendor specific sense key
USB_BOOT_SENSE_ABORTED = 0X0B, ///< Command aborted by the device
USB_BOOT_SENSE_VOLUME_OVERFLOW = 0x0D, ///< Partition overflow
USB_BOOT_SENSE_MISCOMPARE = 0x0E, ///< Source data mis-match while verfying.
#define USB_SCSI_MODE_SENSE6_OPCODE 0x1A
USB_BOOT_ASC_NOT_READY = 0x04,
USB_BOOT_ASC_NO_MEDIA = 0x3A,
USB_BOOT_ASC_MEDIA_CHANGE = 0x28,
//
// The Sense Key part of the sense data. Sense data has three levels:
// Sense key, Additional Sense Code and Additional Sense Code Qualifier
//
#define USB_BOOT_SENSE_NO_SENSE 0x00 ///< No sense key
#define USB_BOOT_SENSE_RECOVERED 0x01 ///< Last command succeed with recovery actions
#define USB_BOOT_SENSE_NOT_READY 0x02 ///< Device not ready
#define USB_BOOT_SNESE_MEDIUM_ERROR 0X03 ///< Failed probably because flaw in the media
#define USB_BOOT_SENSE_HARDWARE_ERROR 0X04 ///< Non-recoverable hardware failure
#define USB_BOOT_SENSE_ILLEGAL_REQUEST 0X05 ///< Illegal parameters in the request
#define USB_BOOT_SENSE_UNIT_ATTENTION 0X06 ///< Removable medium may have been changed
#define USB_BOOT_SENSE_DATA_PROTECT 0X07 ///< Write protected
#define USB_BOOT_SENSE_BLANK_CHECK 0X08 ///< Blank/non-blank medium while reading/writing
#define USB_BOOT_SENSE_VENDOR 0X09 ///< Vendor specific sense key
#define USB_BOOT_SENSE_ABORTED 0X0B ///< Command aborted by the device
#define USB_BOOT_SENSE_VOLUME_OVERFLOW 0x0D ///< Partition overflow
#define USB_BOOT_SENSE_MISCOMPARE 0x0E ///< Source data mis-match while verfying.
//
// Supported PDT codes, or Peripheral Device Type
//
USB_PDT_DIRECT_ACCESS = 0x00, ///< Direct access device
USB_PDT_CDROM = 0x05, ///< CDROM
USB_PDT_OPTICAL = 0x07, ///< Non-CD optical disks
USB_PDT_SIMPLE_DIRECT = 0x0E, ///< Simplified direct access device
//
// Other parameters, Max carried size is 512B * 128 = 64KB
//
USB_BOOT_IO_BLOCKS = 128,
#define USB_BOOT_ASC_NOT_READY 0x04
#define USB_BOOT_ASC_NO_MEDIA 0x3A
#define USB_BOOT_ASC_MEDIA_CHANGE 0x28
//
// Retry mass command times, set by experience
//
USB_BOOT_COMMAND_RETRY = 5,
USB_BOOT_INIT_MEDIA_RETRY = 5,
//
// Supported PDT codes, or Peripheral Device Type
//
#define USB_PDT_DIRECT_ACCESS 0x00 ///< Direct access device
#define USB_PDT_CDROM 0x05 ///< CDROM
#define USB_PDT_OPTICAL 0x07 ///< Non-CD optical disks
#define USB_PDT_SIMPLE_DIRECT 0x0E ///< Simplified direct access device
//
// Wait for unit ready command, set by experience
//
USB_BOOT_RETRY_UNIT_READY_STALL = 500 * USB_MASS_1_MILLISECOND,
//
// Other parameters, Max carried size is 512B * 128 = 64KB
//
#define USB_BOOT_IO_BLOCKS 128
//
// Mass command timeout, refers to specification[USB20-9.2.6.1]
//
// USB2.0 Spec define the up-limit timeout 5s for all command. USB floppy,
// USB CD-Rom and iPod devices are much slower than USB key when reponse
// most of commands, So we set 5s as timeout here.
//
USB_BOOT_GENERAL_CMD_TIMEOUT = 5 * USB_MASS_1_SECOND
}USB_BOOT_OPTCODE;
//
// Retry mass command times, set by experience
//
#define USB_BOOT_COMMAND_RETRY 5
#define USB_BOOT_INIT_MEDIA_RETRY 5
//
// Wait for unit ready command, set by experience
//
#define USB_BOOT_RETRY_UNIT_READY_STALL (500 * USB_MASS_1_MILLISECOND)
//
// Mass command timeout, refers to specification[USB20-9.2.6.1]
//
// USB2.0 Spec define the up-limit timeout 5s for all command. USB floppy,
// USB CD-Rom and iPod devices are much slower than USB key when reponse
// most of commands, So we set 5s as timeout here.
//
#define USB_BOOT_GENERAL_CMD_TIMEOUT (5 * USB_MASS_1_SECOND)
//
// The required commands are INQUIRY, READ CAPACITY, TEST UNIT READY,
@@ -193,8 +191,8 @@ typedef struct {
UINT8 Infor[4];
UINT8 AddLen; ///< Additional Sense length, 10
UINT8 Reserved1[4];
UINT8 ASC; ///< Additional Sense Code
UINT8 ASCQ; ///< Additional Sense Code Qualifier
UINT8 Asc; ///< Additional Sense Code
UINT8 Ascq; ///< Additional Sense Code Qualifier
UINT8 Reserverd2[4];
} USB_BOOT_REQUEST_SENSE_DATA;

View File

@@ -3,7 +3,7 @@
based on the "Universal Serial Bus Mass Storage Class Bulk-Only
Transport" Revision 1.0, September 31, 1999.
Copyright (c) 2007 - 2008, Intel Corporation
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. 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
@@ -21,41 +21,39 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
extern USB_MASS_TRANSPORT mUsbBotTransport;
typedef enum {
//
// Usb Bulk-Only class specfic request
//
USB_BOT_RESET_REQUEST = 0xFF, ///< Bulk-Only Mass Storage Reset
USB_BOT_GETLUN_REQUEST = 0xFE, ///< Get Max Lun
USB_BOT_CBW_SIGNATURE = 0x43425355, ///< dCBWSignature, tag the packet as CBW
USB_BOT_CSW_SIGNATURE = 0x53425355, ///< dCSWSignature, tag the packet as CSW
USB_BOT_MAX_LUN = 0x0F, ///< Lun number is from 0 to 15
USB_BOT_MAX_CMDLEN = 16, ///< Maxium number of command from command set
//
// Usb Bulk-Only class specfic request
//
#define USB_BOT_RESET_REQUEST 0xFF ///< Bulk-Only Mass Storage Reset
#define USB_BOT_GETLUN_REQUEST 0xFE ///< Get Max Lun
#define USB_BOT_CBW_SIGNATURE 0x43425355 ///< dCBWSignature, tag the packet as CBW
#define USB_BOT_CSW_SIGNATURE 0x53425355 ///< dCSWSignature, tag the packet as CSW
#define USB_BOT_MAX_LUN 0x0F ///< Lun number is from 0 to 15
#define USB_BOT_MAX_CMDLEN 16 ///< Maxium number of command from command set
//
// Usb BOT command block status values
//
USB_BOT_COMMAND_OK = 0x00, ///< Command passed, good status
USB_BOT_COMMAND_FAILED = 0x01, ///< Command failed
USB_BOT_COMMAND_ERROR = 0x02, ///< Phase error, need to reset the device
//
// Usb BOT command block status values
//
#define USB_BOT_COMMAND_OK 0x00 ///< Command passed, good status
#define USB_BOT_COMMAND_FAILED 0x01 ///< Command failed
#define USB_BOT_COMMAND_ERROR 0x02 ///< Phase error, need to reset the device
//
// Usb Bot retry to get CSW, refers to specification[BOT10-5.3, it says 2 times]
//
USB_BOT_RECV_CSW_RETRY = 3,
//
// Usb Bot retry to get CSW, refers to specification[BOT10-5.3, it says 2 times]
//
#define USB_BOT_RECV_CSW_RETRY 3
//
// Usb Bot wait device reset complete, set by experience
//
USB_BOT_RESET_DEVICE_STALL = 100 * USB_MASS_1_MILLISECOND,
//
// Usb Bot transport timeout, set by experience
//
USB_BOT_SEND_CBW_TIMEOUT = 3 * USB_MASS_1_SECOND,
USB_BOT_RECV_CSW_TIMEOUT = 3 * USB_MASS_1_SECOND,
USB_BOT_RESET_DEVICE_TIMEOUT = 3 * USB_MASS_1_SECOND
} USB_BOT_SUBCLASS;
//
// Usb Bot wait device reset complete, set by experience
//
#define USB_BOT_RESET_DEVICE_STALL (100 * USB_MASS_1_MILLISECOND)
//
// Usb Bot transport timeout, set by experience
//
#define USB_BOT_SEND_CBW_TIMEOUT (3 * USB_MASS_1_SECOND)
#define USB_BOT_RECV_CSW_TIMEOUT (3 * USB_MASS_1_SECOND)
#define USB_BOT_RESET_DEVICE_TIMEOUT (3 * USB_MASS_1_SECOND)
#pragma pack(1)
///

View File

@@ -2,7 +2,7 @@
Defination for the USB mass storage Control/Bulk/Interrupt (CBI) transport,
according to USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport, Revision 1.1.
Copyright (c) 2007 - 2008, Intel Corporation
Copyright (c) 2007 - 2010, Intel Corporation
All rights reserved. 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
@@ -21,25 +21,20 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
extern USB_MASS_TRANSPORT mUsbCbi0Transport;
extern USB_MASS_TRANSPORT mUsbCbi1Transport;
typedef enum {
USB_CBI_MAX_PACKET_NUM = 16,
USB_CBI_RESET_CMD_LEN = 12,
//
// USB CBI retry C/B/I transport times, set by experience
//
USB_CBI_MAX_RETRY = 3,
//
// Time to wait for USB CBI reset to complete, set by experience
//
USB_CBI_RESET_DEVICE_STALL = 50 * USB_MASS_1_MILLISECOND,
//
// USB CBI transport timeout, set by experience
//
USB_CBI_RESET_DEVICE_TIMEOUT = 1 * USB_MASS_1_SECOND
} USB_CBI_DATA;
#define USB_CBI_MAX_PACKET_NUM 16
#define USB_CBI_RESET_CMD_LEN 12
//
// USB CBI retry C/B/I transport times, set by experience
//
#define USB_CBI_MAX_RETRY 3
//
// Time to wait for USB CBI reset to complete, set by experience
//
#define USB_CBI_RESET_DEVICE_STALL (50 * USB_MASS_1_MILLISECOND)
//
// USB CBI transport timeout, set by experience
//
#define USB_CBI_RESET_DEVICE_TIMEOUT (1 * USB_MASS_1_SECOND)
typedef struct {
//