Add new Master SPI Mode USART serial peripheral driver for the XMEGA and AVR8 archite...
[pub/USBasp.git] / LUFA / Drivers / USB / Core / USBTask.h
index f2ed7b7..bd367b2 100644 (file)
@@ -1,13 +1,13 @@
 /*
              LUFA Library
 /*
              LUFA Library
-     Copyright (C) Dean Camera, 2011.
+     Copyright (C) Dean Camera, 2012.
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
 
   dean [at] fourwalledcubicle [dot] com
            www.lufa-lib.org
 */
 
 /*
-  Copyright 2011  Dean Camera (dean [at] fourwalledcubicle [dot] com)
+  Copyright 2012  Dean Camera (dean [at] fourwalledcubicle [dot] com)
 
   Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
 
   Permission to use, copy, modify, distribute, and sell this
   software and its documentation for any purpose is hereby granted
 
        /* Includes: */
                #include "../../../Common/Common.h"
 
        /* Includes: */
                #include "../../../Common/Common.h"
+               #include "USBMode.h"
                #include "USBController.h"
                #include "Events.h"
                #include "StdRequestType.h"
                #include "StdDescriptors.h"
                #include "USBController.h"
                #include "Events.h"
                #include "StdRequestType.h"
                #include "StdDescriptors.h"
-               #include "USBMode.h"
 
                #if defined(USB_CAN_BE_DEVICE)
                        #include "DeviceStandardReq.h"
 
                #if defined(USB_CAN_BE_DEVICE)
                        #include "DeviceStandardReq.h"
                        extern volatile bool USB_IsInitialized;
 
                        /** Structure containing the last received Control request when in Device mode (for use in user-applications
                        extern volatile bool USB_IsInitialized;
 
                        /** Structure containing the last received Control request when in Device mode (for use in user-applications
-                        *  inside of the \ref EVENT_USB_Device_ControlRequest() event, or for filling up with a control request to 
+                        *  inside of the \ref EVENT_USB_Device_ControlRequest() event, or for filling up with a control request to
                         *  issue when in Host mode before calling \ref USB_Host_SendControlRequest().
                         *
                         *  issue when in Host mode before calling \ref USB_Host_SendControlRequest().
                         *
+                        *  \note The contents of this structure is automatically endian-corrected for the current CPU architecture.
+                        *
                         *  \ingroup Group_USBManagement
                         */
                         extern USB_Request_Header_t USB_ControlRequest;
                         *  \ingroup Group_USBManagement
                         */
                         extern USB_Request_Header_t USB_ControlRequest;
@@ -93,9 +95,8 @@
                                        /** Indicates the current host state machine state. When in host mode, this indicates the state
                                         *  via one of the values of the \ref USB_Host_States_t enum values.
                                         *
                                        /** Indicates the current host state machine state. When in host mode, this indicates the state
                                         *  via one of the values of the \ref USB_Host_States_t enum values.
                                         *
-                                        *  This value may be altered by the user application to implement the \ref HOST_STATE_Addressed,
-                                        *  \ref HOST_STATE_Configured and \ref HOST_STATE_Suspended states which are not implemented by
-                                        *  the library internally.
+                                        *  This value should not be altered by the user application as it is handled automatically by the
+                                        *  library.
                                         *
                                         *  To reduce program size and speed up checks of this global on the AVR8 architecture, it can be
                                         *  placed into one of the AVR's \c GPIOR hardware registers instead of RAM by defining the
                                         *
                                         *  To reduce program size and speed up checks of this global on the AVR8 architecture, it can be
                                         *  placed into one of the AVR's \c GPIOR hardware registers instead of RAM by defining the
                /* Macros: */
                        #define HOST_TASK_NONBLOCK_WAIT(Duration, NextState) MACROS{ USB_HostState   = HOST_STATE_WaitForDevice; \
                                                                                     WaitMSRemaining = (Duration);               \
                /* Macros: */
                        #define HOST_TASK_NONBLOCK_WAIT(Duration, NextState) MACROS{ USB_HostState   = HOST_STATE_WaitForDevice; \
                                                                                     WaitMSRemaining = (Duration);               \
-                                                                                    PostWaitState   = (NextState);        }MACROE
+                                                                                    PostWaitState   = (NextState);              }MACROE
        #endif
 
        /* Disable C linkage for C++ Compilers: */
        #endif
 
        /* Disable C linkage for C++ Compilers: */