Added new NO_CLASS_DRIVER_AUTOFLUSH compile time option to disable automatic flushing of interfaces when the USB management tasks for each driver is called.

The MIDI class drivers now automatically flushes the MIDI interface when the MIDI class driver's USBTask() function is called.
This commit is contained in:
Dean Camera 2010-10-27 07:23:51 +00:00
parent 08de757811
commit 710f31c540
10 changed files with 53 additions and 24 deletions

View file

@ -28,6 +28,8 @@
* - Added board hardware driver support for the Maximus board (thanks to the PSGroove team)
* - Added board hardware driver support for the Minimus board (thanks to the PSGroove team)
* - Added default test tone generation mode to the Device mode AudioInput demos
* - Added new NO_CLASS_DRIVER_AUTOFLUSH compile time option to disable automatic flushing of interfaces when the USB management
* tasks for each driver is called
*
* <b>Changed:</b>
* - Removed complicated logic for the Endpoint_ConfigureEndpoint() function to use inlined or function called versions
@ -58,6 +60,7 @@
* - All USB class drivers are now automatically included when LUFA/Drivers/USB.h is included, and no longer need to be seperately included
* - All LowLevel demos changed to use the constants and types defined in the USB class drivers
* - Changed AudioInput and AudioOutput demos to reload the next sample via an interrupt rather than polling the sample timer
* - The MIDI class drivers now automatically flushes the MIDI interface when the MIDI class driver's USBTask() function is called
*
* <b>Fixed:</b>
* - Fixed USB_GetHIDReportItemInfo() function modifying the given report item's data when the report item does not exist

View file

@ -67,6 +67,12 @@
* 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.
*
* <b>NO_CLASS_DRIVER_AUTOFLUSH</b>
* 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.