X-Git-Url: http://git.linex4red.de/pub/lufa.git/blobdiff_plain/711542ee8986482a12796ffdbc4a32912b267e44..ec537fd84d6ad3fd0dfa1b55efa2c2d554c1db48:/LUFA/ManPages/CompileTimeTokens.txt diff --git a/LUFA/ManPages/CompileTimeTokens.txt b/LUFA/ManPages/CompileTimeTokens.txt index 6f2e804ad..b120617e0 100644 --- a/LUFA/ManPages/CompileTimeTokens.txt +++ b/LUFA/ManPages/CompileTimeTokens.txt @@ -7,7 +7,7 @@ /** \page Page_TokenSummary Summary of Compile Tokens * * The following lists all the possible tokens which can be defined in a project makefile, and passed to the - * compiler via the -D switch, to alter the LUFA library code. These tokens may alter the library behavior, + * compiler via the -D switch, to alter the LUFA library code. These tokens may alter the library behaviour, * or remove features unused by a given application in order to save flash space. * * @@ -30,7 +30,7 @@ * Mouse or Keyboard operation is desired, using boot compatible devices), the code responsible for the Report protocol * mode can be removed to save space in the compiled application by defining this token. When defined, it is still necessary * to explicitly put the attached device into Boot protocol mode via a call to \ref HID_Host_SetBootProtocol(). - * + * * HID_STATETABLE_STACK_DEPTH=x - ( \ref Group_HIDParser ) \n * HID reports may contain PUSH and POP elements, to store and retrieve the current HID state table onto a stack. This * allows for reports to save the state table before modifying it slightly for a data item, and then restore the previous @@ -67,10 +67,21 @@ * and their sizes calculated/stored into the resultant processed report structure. If not defined, this defaults to the value indicated in * the HID.h file documentation. * + * NO_CLASS_DRIVER_AUTOFLUSH + * Many of the device and host mode class drivers automatically flush any data waiting to be written to an interface, when the corresponding + * USB management task is executed. This is usually desirable to ensure that any queued data is sent as soon as possible once and new data is + * constructed in the main program loop. However, if flushing is to be controlled manually by the user application via the *_Flush() commands, + * the compile time token may be defined in the application's makefile to disable automatic flushing during calls to the class driver USB + * management tasks. * * \section Sec_SummaryUSBTokens General USB Driver Related Tokens * This section describes compile tokens which affect USB driver stack as a whole in the LUFA library. * + * ORDERED_EP_CONFIG - ( \ref Group_EndpointManagement , \ref Group_PipeManagement )\n + * The USB AVRs do not allow for Endpoints and Pipes to be configured out of order; they must be configured in an ascending order to + * prevent data corruption issues. However, by default LUFA employs a workaround to allow for unordered Endpoint/Pipe initialisation. This compile + * time token may be used to restrict the intialisation order to ascending indexes only in exchange for a smaller compiled binary size. + * * NO_STREAM_CALLBACKS - ( \ref Group_EndpointPacketManagement , \ref Group_PipePacketManagement )\n * Both the endpoint and the pipe driver code contains stream functions, allowing for arrays of data to be sent to or from the * host easily via a single function call (rather than complex routines worrying about sending full packets, waiting for the endpoint/ @@ -87,7 +98,7 @@ * due to the extra code required to deal with byte alignment. * * USE_STATIC_OPTIONS=x - ( \ref Group_USBManagement ) \n - * By default, the USB_Init() function accepts dynamic options at runtime to alter the library behavior, including whether the USB pad + * By default, the USB_Init() function accepts dynamic options at runtime to alter the library behaviour, including whether the USB pad * voltage regulator is enabled, and the device speed when in device mode. By defining this token to a mask comprised of the USB options * mask defines usually passed as the Options parameter to USB_Init(), the resulting compiled binary can be decreased in size by removing * the dynamic options code, and replacing it with the statically set options. When defined, the USB_Init() function no longer accepts an @@ -115,6 +126,11 @@ * can be accurately set and the \ref EVENT_USB_Device_Connect() and \ref EVENT_USB_Device_Disconnect() events manually raised by the RAISE_EVENT macro. * When defined, this token disables the library's auto-detection of the connection state by the aforementioned suspension and wake up events. * + * NO_SOF_EVENTS - ( \ref Group_Events ) \n + * By default, there exists a LUFA application event for the start of each USB frame while the USB bus is not suspended in either host or device mode. + * This event can be selectively enabled or disabled by calling the appropriate device or host mode function. When this compile time token is defined, + * the ability to receive USB Start of Frame events via the \ref EVENT_USB_Device_StartOfFrame() or \ref EVENT_USB_Host_StartOfFrame() events is removed, + * reducing the compiled program's binary size. * * \section Sec_SummaryUSBDeviceTokens USB Device Mode Driver Related Tokens * This section describes compile tokens which affect USB driver stack of the LUFA library when used in Device mode. @@ -198,3 +214,4 @@ * back to a known idle state before communications occur with the device. This token may be defined to a 16-bit value to set the device * settle period, specified in milliseconds. If not defined, the default value specified in Host.h is used instead. */ +