X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/fa8beef82d1340a69390d4b11ca785ee016789c5..c58c53dba90fdc19d38f5e5d6957f2ede2a740f3:/Demos/Device/LowLevel/MassStorage/Lib/SCSI.h diff --git a/Demos/Device/LowLevel/MassStorage/Lib/SCSI.h b/Demos/Device/LowLevel/MassStorage/Lib/SCSI.h index 076328631..a9b5248e4 100644 --- a/Demos/Device/LowLevel/MassStorage/Lib/SCSI.h +++ b/Demos/Device/LowLevel/MassStorage/Lib/SCSI.h @@ -1,21 +1,21 @@ /* LUFA Library - Copyright (C) Dean Camera, 2009. + Copyright (C) Dean Camera, 2010. dean [at] fourwalledcubicle [dot] com www.fourwalledcubicle.com */ /* - Copyright 2009 Dean Camera (dean [at] fourwalledcubicle [dot] com) + Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) - Permission to use, copy, modify, and distribute this software - and its documentation for any purpose and without fee is hereby - granted, provided that the above copyright notice appear in all - copies and that both that the copyright notice and this - permission notice and warranty disclaimer appear in supporting - documentation, and that the name of the author not be used in - advertising or publicity pertaining to distribution of the + Permission to use, copy, modify, distribute, and sell this + software and its documentation for any purpose is hereby granted + without fee, provided that the above copyright notice appear in + all copies and that both that the copyright notice and this + permission notice and warranty disclaimer appear in supporting + documentation, and that the name of the author not be used in + advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author disclaim all warranties with regard to this @@ -40,9 +40,9 @@ #include #include - #include // Function Attribute, Atomic, Debug and ISR Macros - #include // USB Functionality - #include // LEDs driver + #include + #include + #include #include "MassStorage.h" #include "Descriptors.h" @@ -58,21 +58,21 @@ * \param[in] acode New SCSI additional sense key to set the additional sense code to * \param[in] aqual New SCSI additional sense key qualifier to set the additional sense qualifier code to */ - #define SCSI_SET_SENSE(key, acode, aqual) MACROS{ SenseData.SenseKey = key; \ - SenseData.AdditionalSenseCode = acode; \ - SenseData.AdditionalSenseQualifier = aqual; }MACROE + #define SCSI_SET_SENSE(key, acode, aqual) MACROS{ SenseData.SenseKey = (key); \ + SenseData.AdditionalSenseCode = (acode); \ + SenseData.AdditionalSenseQualifier = (aqual); }MACROE /** Macro for the SCSI_Command_ReadWrite_10() function, to indicate that data is to be read from the storage medium. */ - #define DATA_READ true + #define DATA_READ true /** Macro for the SCSI_Command_ReadWrite_10() function, to indicate that data is to be written to the storage medium. */ - #define DATA_WRITE false + #define DATA_WRITE false /** Value for the DeviceType entry in the SCSI_Inquiry_Response_t enum, indicating a Block Media device. */ - #define DEVICE_TYPE_BLOCK 0x00 + #define DEVICE_TYPE_BLOCK 0x00 /** Value for the DeviceType entry in the SCSI_Inquiry_Response_t enum, indicating a CD-ROM device. */ - #define DEVICE_TYPE_CDROM 0x05 + #define DEVICE_TYPE_CDROM 0x05 /* Type Defines: */ /** Type define for a SCSI response structure to a SCSI INQUIRY command. For details of the @@ -86,7 +86,7 @@ unsigned char _RESERVED1 : 7; unsigned char Removable : 1; - uint8_t Version; + uint8_t Version; unsigned char ResponseDataFormat : 4; unsigned char _RESERVED2 : 1; @@ -94,8 +94,8 @@ unsigned char TrmTsk : 1; unsigned char AERC : 1; - uint8_t AdditionalLength; - uint8_t _RESERVED3[2]; + uint8_t AdditionalLength; + uint8_t _RESERVED3[2]; unsigned char SoftReset : 1; unsigned char CmdQue : 1; @@ -106,9 +106,9 @@ unsigned char WideBus32Bit : 1; unsigned char RelAddr : 1; - uint8_t VendorID[8]; - uint8_t ProductID[16]; - uint8_t RevisionID[4]; + uint8_t VendorID[8]; + uint8_t ProductID[16]; + uint8_t RevisionID[4]; } SCSI_Inquiry_Response_t; /** Type define for a SCSI sense structure to a SCSI REQUEST SENSE command. For details of the @@ -126,24 +126,24 @@ unsigned char EOM : 1; unsigned char FileMark : 1; - uint8_t Information[4]; - uint8_t AdditionalLength; - uint8_t CmdSpecificInformation[4]; - uint8_t AdditionalSenseCode; - uint8_t AdditionalSenseQualifier; - uint8_t FieldReplaceableUnitCode; - uint8_t SenseKeySpecific[3]; + uint8_t Information[4]; + uint8_t AdditionalLength; + uint8_t CmdSpecificInformation[4]; + uint8_t AdditionalSenseCode; + uint8_t AdditionalSenseQualifier; + uint8_t FieldReplaceableUnitCode; + uint8_t SenseKeySpecific[3]; } SCSI_Request_Sense_Response_t; /* Function Prototypes: */ - void SCSI_DecodeSCSICommand(void); + bool SCSI_DecodeSCSICommand(void); #if defined(INCLUDE_FROM_SCSI_C) - static bool SCSI_Command_Inquiry(void); - static bool SCSI_Command_Request_Sense(void); - static bool SCSI_Command_Read_Capacity_10(void); - static bool SCSI_Command_Send_Diagnostic(void); - static bool SCSI_Command_ReadWrite_10(const bool IsDataRead); + static void SCSI_Command_Inquiry(void); + static void SCSI_Command_Request_Sense(void); + static void SCSI_Command_Read_Capacity_10(void); + static void SCSI_Command_Send_Diagnostic(void); + static void SCSI_Command_ReadWrite_10(const bool IsDataRead); #endif #endif