summaryrefslogtreecommitdiffstats
path: root/lib/lufa/LUFA/DoxygenPages/ChangeLog.txt
diff options
context:
space:
mode:
Diffstat (limited to 'lib/lufa/LUFA/DoxygenPages/ChangeLog.txt')
-rw-r--r--lib/lufa/LUFA/DoxygenPages/ChangeLog.txt1653
1 files changed, 0 insertions, 1653 deletions
diff --git a/lib/lufa/LUFA/DoxygenPages/ChangeLog.txt b/lib/lufa/LUFA/DoxygenPages/ChangeLog.txt
deleted file mode 100644
index aedfd3ce53..0000000000
--- a/lib/lufa/LUFA/DoxygenPages/ChangeLog.txt
+++ /dev/null
@@ -1,1653 +0,0 @@
-/** \file
- *
- * This file contains special DoxyGen information for the generation of the main page and other special
- * documentation pages. It is not a project source file.
- */
-
- /** \page Page_ChangeLog Project Changelog
- *
- * \section Sec_ChangeLog170418 Version 170418
- * <b>New:</b>
- * - Core:
- * - Added support for the Pololu A-Star Micro board (thanks to Joh Schneider)
- * - Added new \c LUFA_VERSION_RELEASE_TYPE macro to the library version header, to determine release type (thanks to NicoHood)
- *
- * <b>Fixed:</b>
- * - Core:
- * - The CALLBACK_USB_GetDescriptor() callback function into the user application erroneously had a uint8_t type for the wIndex
- * parameter, instead of uint16_t (thanks to Matlo)
- * - Fixed broken USE_RAM_DESCRIPTORS compile time option when the FIXED_NUM_CONFIGURATIONS compile time option is not enabled
- * in a user application (thanks to Matlo)
- * - Fixed missing \c va_end() calls in the HID bootloader CLI app which could cause portability issues
- * - Fixed void pointer arithmetic in the \c Serial_SendData() functions for AVR8 and XMEGA architectures
- * - Fixed void pointer arithmetic in the low level and class driver RNDIS demo protocol decoders
- * - Fixed low level RNDIS demo incorrectly setting the RNDIS state when a null packet filter was requested
- * - Fixed missing entries in several project's Atmel Studio integration files, such as driver INF files
- * - Fixed invalid endpoint indexes causing memory corruption in device Clear/Set Feature standard requests (thanks to Peter Popovec)
- * - Fixed incorrect serialization in USB_SetHIDReportItemInfo() function (thanks to e-chip)
- *
- * <b>Changed:</b>
- * - Added signed alternative libUSB driver for the AVRISP-MKII clone project, to support Atmel Studio 7 (thanks to Atmel)
- * - Removed no longer required LIBUSB_DRIVER_COMPAT and RESET_TOGGLES_LIBUSB_COMPAT configuration options from the AVRISP-MKII
- * clone project, as the new libUSB driver works for AVRDUDE and Atmel Studio 7 under Windows
- * - Replaced the LUFA build system with its (compatible) successor, DMBS (Dean's Makefile Build System)
- * - Removed obsolete library TAR export and associated documentation
- * - Fixed incorrect HID_DESCRIPTOR_KEYBOARD() macro definition (thanks to Eric Tang)
- *
- * \section Sec_ChangeLog151115 Version 151115
- * <b>New:</b>
- * - Added support for the Atmel Xplained-MINI series of development kits
- * - Added new PROGMEM variant send functions to the CDC class device driver (thanks to Stefan Hellermann)
- * - Added new PROGMEM variant send functions to the CDC class host driver
- * - Added additional Arduino Uno board definitions for the main processor reset (thanks to NicoHood)
- * - Added modified DocBook transforms to generate Atmel Studio 6/7 internal help documentation (thanks to Morten Engelhardt Olsen)
- *
- * <b>Changed:</b>
- * - Core:
- * - The TWI peripheral driver's TWI_WritePacket() and TWI_ReadPacket() functions now takes a 16-bit Length rather than an 8-bit
- * length, for longer transfers
- * - Library Applications:
- * - The CDC, DFU, Mass Storage and Printer class bootloaders will no longer run the user application if the application reset
- * vector is blank (thanks to Alex Kazik)
- * - The CDC, DFU and Printer class bootloaders are now compatible with the original Atmel XPLAIN and Arduino Leonardo boards
- * - The CDC, DFU, Mass Storage and Printer class bootloaders are not compatible with devices with the BOOTRST fuse set and will
- * exit automatically unless an external reset was the last reset cause (thanks to Alex Kazik)
- * - Added missing force-inline attribute to the endianness utility functions (thanks to Stefan Hellermann)
- * - Updated the DFU build system module to use updated EEPROM programming command arguments for dfu-programmer 0.6.2 or newer
- *
- * <b>Fixed:</b>
- * - Fixed broken XMEGA serial stream driver due to missing USART base pointer parameter (thanks to William Patterson)
- * - Fixed incorrect signature reported in the CDC/DFU bootloaders for the AT90USB82 (thanks to NicoHood)
- * - Fixed broken RNDIS demos on Linux machines whose DHCP hosts require a Lease Time option (thanks to Stefan Hellermann)
- * - Fixed broken LEDs_Disable() implementation for the Arduino Uno board (thanks to NicoHood)
- * - Fixed missing bounds checks and off-by-one in the DFU bootloader signature bytes (thanks to Reuti)
- *
- * \section Sec_ChangeLog140928 Version 140928
- * <b>New:</b>
- * - Core:
- * - Updated the BUILD build system module to add a new COMPILER_PATH optional variable
- * - Added Serial_IsSendReady() and Serial_IsSendComplete() functions to the Serial hardware peripheral driver
- * - Added support for the Arduino Yun board (ATMEGA32U4 co-processor)
- * - Added support for the Arduino Micro board (thanks to Zoltán Szőke)
- * - Library Applications:
- * - Added new Dual MIDI class driver device demo
- *
- * <b>Changed:</b>
- * - Core:
- * - The RNDIS device class driver now takes a user-supplied buffer and buffer length for the internal RNDIS
- * message management (thanks to Peter Mc Shane)
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed device class driver pipe configuration routines returning success with a partially constructed instance
- * when a pipe configuration failed (thanks to Helge Suess)
- * - Fixed incorrect XMEGA DFLL reference frequency (thanks to Martin Aakerberg)
- * - Fixed possible infinite loop in the control endpoint stream write function (thanks to Clayton Knight)
- * - Fixed missing HID report ID prefix on HID class driver GetReport request responses (thanks to Bert van Hall)
- * - Fixed incorrect XMEGA USB controller clock division factory for non-Full Speed operation (thanks to Bert van Hall)
- * - Fixed the LUFA build system to prevent incorrect code from being generated in newer toolchains when building for larger
- * FLASH memory devices (thanks to demultiplexer)
- * - Fixed missing parenthesis in the MIDI_EVENT() macro which could cause incorrect results (thanks to hexwab)
- * - Fixed mixed capitalization of TWI in the XMEGA TWI driver causing compilation failures (thanks to Jacob Schloss)
- * - Fixed broken AVR8 USART-SPI peripheral driver (thanks to Phil Zakielarz)
- * - Library Applications:
- * - Fixed spurious 0xFE USART byte sent in the USBtoSerial project when the baud rate is changed (thanks to Carl Kjeldsen)
- * - Fixed blocking USART reads causing low throughput on slow baud rates in the USBtoSerial project (thanks to Nevada Smith)
- * - Fixed USART reception overrun corrupting the internal buffers in the USBtoSerial project (thanks to Nevada Smith)
- * - Fixed broken LowLevel Audio Out demo sampling frequency configuration (thanks to Torsten Duwe)
- *
- * \section Sec_ChangeLog140302 Version 140302
- * <b>New:</b>
- * - Library Applications:
- * - Added new Bulk Vendor low level device demo
- * - Added new libUSB host Python and NodeJS application examples for the Class driver GenericHID demo (thanks to Laszlo Monda)
- * - Added new AVR8 USB option to keep 3.3V regulator enabled (thanks to Michael Hanselmann)
- * - Added new USB_STRING_DESCRIPTOR() and USB_STRING_DESCRIPTOR_ARRAY() convenience macros (thanks to Laszlo Monda)
- *
- * <b>Changed:</b>
- * - Library Applications:
- * - Refactored out USB interface IDs in the demo applications into enums (thanks to Laszlo Monda)
- * - AVRISP-MKII Clone Project PDI/TPI frequency increased from 250KHz to 2MHz as it is now stable
- * - Increased TPI/PDI handshake delay to 100us from 1us to support targets with high amounts of capacitance on their
- * /RESET lines (thanks to Paul Duke)
- * - Changed the VERSION_BCD() macro to accept the major/minor/revision values as separate parameters
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed MIDI device class driver MIDI_Device_ReceiveEventPacket() for the XMEGA architecture
- * - Library Applications:
- * - Fixed incorrect signature bytes returned in the DFU bootloader
- *
- * \section Sec_ChangeLog130901 Version 130901
- * <b>New:</b>
- * - Core:
- * - Added additional MIDI command definitions to the MIDI class driver (thanks to Daniel Dreibrodt)
- * - Added new CONCAT() and CONCAT_EXPANDED() convenience macros
- * - Added new Printer Device Class driver
- * - Added support for the XMEGA C3 Xplained board
- * - Added support for the U2S board (thanks to megal0maniac)
- * - Added TWI Master driver for the XMEGA architecture (thanks to Michael Janssen)
- * - Library Applications:
- * - Added new Printer class bootloader
- * - Added new Mass Storage class bootloader
- * - Added XMEGA support for class driver device demos (where applicable)
- * - Added Python host application example for the Generic HID class driver device demo
- * - Added Python alternative host application for the HID class bootloader
- *
- * <b>Changed:</b>
- * - Core:
- * - Updated the BUILD build system module to produce binary BIN files in addition to Intel HEX files
- * - Updated the Android Accessory Class to accept version 2 protocol devices (with version 1 functionality)
- * - All board drivers now implement dummy functions and constants when BOARD is set to NONE
- * - Added missing LEDs to the XMEGA A3BU Xplained board LED driver (thanks to Michael Janssen)
- * - Changed board Dataflash drivers to automatically configure the appropriate SPI interface for the selected board
- * - Library Applications:
- * - Re-added Set Control Line State request handling to the CDC class bootloader to prevent issues with the .NET serial
- * class (thanks to Erik Lins)
- * - TemperatureDataLogger project dummy RTC mode now tracks real time (thanks to David Lazarus)
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed Low Speed USB devices broken when using the library HID Class driver (thanks to Michael)
- * - Fixed possible register corruption in USB Host mode on AVR8 devices when ORDERED_EP_CONFIG is used (thanks to Martin Aakerberg)
- * - Fixed Pipe_GetBoundEndpointAddress() returning invalid endpoint directions on AVR8 architecture devices (thanks to decerri)
- * under some circumstances
- * - Fixed incorrect USB device state set when a suspended LUFA device is woken while addressed but not configured (thanks to Balaji Krishnan)
- * - Fixed broken USART SPI driver for the AVR8 architecture due to incorrect initialization
- * - Fixed re-enumeration issue of XMEGA architecture targets (thanks to Jaroslav Jedlinsky)
- * - Fixed error receiving PIMA events via the Still Image Host class driver
- * - Library Applications:
- * - Added handler for SCSI_CMD_START_STOP_UNIT in demos using the Mass Storage class, to prevent ejection errors on *nix systems due to an
- * unknown SCSI command
- * - Fixed incorrect HID report descriptor generated for 16-bit axis ranges by the HID_DESCRIPTOR_MOUSE() and HID_DESCRIPTOR_JOYSTICK()
- * macros (thanks to Armory)
- * - Fixed incorrect HID report descriptor generated for button multiples of 8 by the HID_DESCRIPTOR_MOUSE() and HID_DESCRIPTOR_JOYSTICK()
- * macros
- * - Fixed race condition in the DFU class bootloader causing failed device reprogramming in some circumstances (thanks to Luis Mendes)
- * - Fixed incorrect time/date configuration data order in the TempDataLogger host application (thanks to David Lazarus)
- *
- * \section Sec_ChangeLog130303 Version 130303
- * <b>New:</b>
- * - Core:
- * - Added support for the Arduino Leonardo board
- * - Added support for the Atmel UC3-A3 Xplained board
- * - Added support for the Xevelabs USB2AX revision 3.1 board
- * - Added support for the Dimex Stange-ISP board (thanks to Gerhard Wesser)
- * - Added new \c doxygen_upgrade and \c doxygen_create targets to the DOXYGEN build system module
- * - Added new Board Hardware Information board driver
- * - Library Applications:
- * - Added a different device serial number when the AVRISP-MKII Clone project is in libUSB compatibility mode, so that
- * both the libUSB and Jungo drivers can be installed at the same time without having to use a filter driver
- *
- * <b>Changed:</b>
- * - Core:
- * - Added workaround for broken VBUS detection on AVR8 devices when a bootloader starts the application
- * via a software jump without first turning off the OTG pad (thanks to Simon Inns)
- * - Library Applications:
- * - Increased throughput in the USBtoSerial project now that data transmission is non-blocking (thanks to Joseph Lacerte)
- * - Updated bootloader makefiles to remove dependency on the \c bc command line calculator tool
- * - Updated AVRISP-MKII Clone Programmer project so that the SCK clock period is saved in EEPROM (thanks to Gerhard Wesser)
- * - Changed all *_SendByte() function prototypes to accept a void pointer for the input buffer (thanks to Simon Kuppers)
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed incorrectly issuing STALL response to unsupported control request SETUP packets, rather than in the data/status stage
- * - Fixed inverted LEDs_GetLEDs() function implementation for the Benito, Minimus and Arduino UNO boards
- * - Fixed missing Windows 32-bit compatibility sections in the LUFA INF driver files (thanks to Christan Beharrell)
- * - Fixed logic hole breaking USB operations on a USB controller with only one supported USB mode and no USB_DEVICE_ONLY or USB_HOST_ONLY
- * configuration token set
- * - Fixed possible rounding in the VERSION_BCD() macros for some 0.01 step increments (thanks to Oliver Zander)
- * - Fixed incorrect Dataflash functionality in the USBKEY board if the driver is modified for a single Dataflash chip (thanks to Jonathan Oakley)
- * - Fixed incorrect definitions of \c HID_KEYBOARD_LED_KANA, \c HID_KEYBOARD_SC_KEYPAD_EQUAL_SIGN and \c HID_KEYBOARD_SC_KEYPAD_EQUAL_SIGN_AS400
- * and added a missing definition for \c HID_KEYBOARD_SC_APPLICATION (thanks to David Monro)
- * - Fixed maximum allowed keyboard key code usage of \c 0x65 rather than \c 0xFF for the \c HID_DESCRIPTOR_KEYBOARD() macro (thanks to David Monro)
- * - Fixed hardware race condition that could cause failed device enumerations for AVR8 and UC3 architectures (thanks to Mike Beyhs)
- * - Fixed incorrect Minimus board LED definitions (thanks to Joonas Lahtinen)
- * - Fixed incorrect ordering of the linker options in the build system causing link failures in some cases
- * - Fixed bug in the TWI peripheral driver for the AVR8 devices causing incorrect failure codes to be returned in some cases (thanks to Peter K)
- * - Fixed swapped LED3 and LED4 masks for the Olimex-32U4 development board LED driver
- * - Fixed potential NULL pointer dereference in the HID Host mode Class Driver (thanks to Pavel Kuzmin)
- * - Library Applications:
- * - Fixed broken RESET_TOGGLES_LIBUSB_COMPAT compile time option in the AVRISP-MKII project
- * - Fixed incompatibility in the CDC class bootloader on some systems (thanks to Sylvain Munaut)
- * - Fixed lengthy timeouts in the USBtoSerial project if no application on the host is consuming data (thanks to Nicolas Saugnier)
- * - Fixed lengthy automatic data flushing in the CDC and MIDI device class drivers
- * - Fixed incorrect LED masks for received data display in the Device GenericHID demos (thanks to Denys Berkovskyy)
- * - Fixed incorrect output in the HIDReportViewer project when no device is connected (thanks to Pavel Kuzmin)
- *
- * \section Sec_ChangeLog120730 Version 120730
- * <b>New:</b>
- * - Core:
- * - Added new, revamped modular build system with new makefile templates
- * - Added support for the BitWizard Multio and Big-Multio boards
- * - Added support for the DorkbotPDX Duce board
- * - Added support for the Olimex AVR-USB-32U4 board
- * - Added support for the Olimex AVR-USB-T32U4 board
- * - Added support for the Olimex AVR-ISP-MK2 board
- * - Added new Endpoint_ConfigureEndpointTable() function
- * - Added new Pipe_ConfigurePipeTable() function
- * - Added build test to verify correct compilation of all board drivers using all driver APIs
- * - Added build test to verify correct compilation of all bootloaders using all supported devices
- * - Added build test to verify that there are no detectable errors in the codebase via static analysis
- * - Added new JTAG_ENABLE() macro for the AVR8 architecture
- * - Library Applications:
- * - Modified the CDC Host demos to set a default CDC Line Encoding on enumerated devices
- * - Added Dataflash operational checks and aborts to all projects using the Dataflash to ensure it is working correctly before use
- * - Added new SerialToLCD user project contributed by Simon Foster
- * - Added new RESET_TOGGLES_LIBUSB_COMPAT compile time option to the AVRISP-MKII clone programmer project (thanks to Robert Spitzenpfeil)
- *
- * <b>Changed:</b>
- * - Core:
- * - Android Accessory Host property strings changed from a struct of pointer to an array to prevent unaligned access on greater than 8-bit architectures
- * - Audio Device Class driver changed to also require the index of the Audio Control interface within the device, for SET/GET/CUR/MIN/MAX/RES property adjustments
- * - Removed variable axis support from the HID_DESCRIPTOR_JOYSTICK() macro due to OS incompatibilities, replaced with fixed 3-axis joystick report structure
- * - Removed the old pseudo-scheduler from the library as it was unused and deprecated since the 090810 release
- * - Endpoint indexes are now specified as full endpoint addresses within the device in device mode, rather than a logical index
- * - The Endpoint_ConfigureEndpoint() function no longer takes an endpoint direction as a parameter, as this is now deduced from the specified full endpoint
- * address and type
- * - The Endpoint_ConfigureEndpoint() function no longer takes a number of banks as a special mask; the number of banks is now specified as an integer parameter
- * - Endpoints are now configured via instances of a new struct USB_Endpoint_Table_t in all device mode class drivers, rather than a list of endpoint parameters
- * - Pipe indexes are now specified as full pipe addresses within the host in host mode, rather than a logical index
- * - The Pipe_ConfigurePipe() function no longer takes an pipe token as a parameter, as this is now deduced from the specified full pipe address and type
- * - The Pipe_ConfigurePipe() function no longer takes a number of banks as a special mask; the number of banks is now specified as an integer parameter
- * - Pipes are now configured via instances of a new struct USB_Pipe_Table_t in all host mode class drivers, rather than a list of pipe parameters
- * - Added support for various assert and debugging macros for the UC3 devices
- * - Changed MIDI event structure MIDI_EventPacket_t to use a single field for the combined virtual cable index and command ID, to prevent bitfield packing issues
- * on some architectures (thanks to Darren Gibbs)
- * - Changed board LED driver implementations of LEDs_ToggleLEDs() for the AVR8 architecture to use the fast PIN register toggle alternative function for speed
- * - Library Applications:
- * - Raised the guard bits in the AVRISP-MKII clone project when in PDI and TPI to 32, to prevent communication errors on low quality connections to a target
- * - Added additional bootloader API data to expose the bootloader start address and class to the DFU and CDC class bootloaders
- * - Reverted AVRISP-MKII clone project watchdog based command timeout patch in favour of a hardware timer, to allow for use in devices with WDTRST fuse programmed
- * - The library bootloaders will now correctly start the user application after a watchdog-based application start, even if the /HWB line is held low externally
- * during the reset phase
- * - Increased endpoint polling interval for all demos and projects to 5ms, as 1ms was causing some enumeration issues on some machines (thanks to Riku Salminen)
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed possible enumeration error if the user application selects a pipe other than the default Control pipe between the Powered and Default states of
- * the host state machine
- * - Fixed incorrect call to the user callback CALLBACK_Audio_Device_GetSetInterfaceProperty() in the Audio Class device driver (thanks to Tiit Ratsep)
- * - Fixed compile error for the UC3 architecture when INTERRUPT_CONTROL_ENDPOINT is specified (thanks to Andrus Aaslaid)
- * - Fixed compile error if LEDs_Disable() is called and BOARD=NONE is set (thanks to Sam Lin)
- * - Fixed inverted LED logic in the OLIMEX162 board LED driver
- * - Fixed incorrect response to GET STATUS requests in device mode if NO_DEVICE_SELF_POWER or NO_DEVICE_REMOTE_WAKEUP tokens are defined (thanks to Georg Glock)
- * - Fixed inverted LED logic in the USB2AX board LED driver
- * - Fixed possible deadlock in the CDC device driver if the USB connection is dropped while the CDC_REQ_SetLineEncoding control request is being processed by
- * the stack (thanks to Jonathan Hudgins)
- * - Fixed broken MIDI host driver MIDI_Host_ReceiveEventPacket() function due to not unfreezing the MIDI data IN pipe before use (thanks to Michael Brown)
- * - Fixed swapped Little Endian/Big Endian endpoint and pipe write code for the UC3 devices (thanks to Andrew Chu)
- * - Fixed the JTAG_DISABLE() macro clearing all other bits in MCUSR when called
- * - Fixed incorrect Micropendous board LED driver LEDs_SetAllLEDs() and LEDs_ChangeLEDs() function implementations (thanks to MitchJS)
- * - Fixed endianess issues in the RNDIS host class driver for UC3 devices (thanks to Andrew Chu)
- * - Library Applications:
- * - Fixed error in the AVRISP-MKII programmer when ISP mode is used at 64KHz (thanks to Ben R. Porter)
- * - Fixed AVRISP-MKII programmer project failing to compile for the U4 chips when VTARGET_ADC_CHANNEL is defined to an invalid channel and NO_VTARGET_DETECT is
- * defined (thanks to Steven Morehouse)
- * - Fixed AVRISP-MKII programmer project reset line polarity inverted when the generated EEP file is loaded into the USB AVR's EEPROM and avr-dude is used
- * - Fixed CDC and DFU bootloaders failing to compile when the bootloader section size is 8KB or more (thanks to Georg Glock)
- * - Fixed CDC and DFU bootloaders API function offsets incorrect on some devices (thanks to Rod DeMay)
- * - Fixed incorrect DFU version number reported to the host in the DFU bootloader descriptors (thanks to Georg Glock)
- * - Fixed incorrect version hundredths value encoding in VERSION_BCD() macro (thanks to Georg Glock)
- * - Fixed invalid configuration descriptor in the low level KeyboardMouse device demo (thanks to Jun Wako)
- * - Fixed CDC and DFU bootloaders API page erase and write function failures (thanks to Martin Lambert)
- *
- * \section Sec_ChangeLog120219 Version 120219
- * <b>New:</b>
- * - Core:
- * - Added support for the XMEGA A3BU Xplained board
- * - Added support for the new B series XMEGA devices
- * - Added support for version 2 of the Teensy boards (thanks to Christoph Redecker)
- * - Added support for the USB2AX boards, hardware revision 1-3
- * - Added new Android Accessory Host class driver
- * - Added new USB_Host_GetDescriptor(), USB_Host_GetDeviceConfiguration() and USB_Host_GetInterfaceAltSetting() functions
- * - Added new CALLBACK_Audio_Device_GetSetInterfaceProperty() callback to the Audio Device Class driver
- * - Added new LEDs_Disable(), Buttons_Disable() and Joystick_Disable() functions to the board hardware drivers
- * - Added support for the Micropendous family of boards (Arduino-like revisions 1 and 2, DIP, 32U2, A, 1, 2, 3 and 4)
- * - Added INVERTED_VBUS_ENABLE_LINE and NO_AUTO_VBUS_MANAGEMENT compile time options (thanks to Opendous Inc.)
- * - Added support for the Atmel XMEGA B1 Xplained board
- * - Added Serial USART peripheral driver for the XMEGA architecture
- * - Added Master Mode SPI USART peripheral driver for the XMEGA and AVR8 architectures
- * - Added build test to verify correct compilation of as many modules as possible under as many architectures as possible under the C and C++ languages
- * - Added build test to verify correct compilation of the USB driver when forced into single USB mode under as many architectures as possible
- * - Library Applications:
- * - Added User Application APIs to the CDC and DFU class bootloaders
- * - Added INVERTED_ISP_MISO compile time option to the AVRISP-MKII clone project (thanks to Chuck Rohs)
- * - Added new Android Accessory Host demo (thanks to Opendous Inc.)
- *
- * <b>Changed:</b>
- * - Core:
- * - When automatic PLL management mode is enabled on the U4 series AVR8 chips, the PLL is now configured for 48MHz and not
- * a divided 96MHz, to lower power consumption and to keep the system within the datasheet specs for 3.3V operation (thanks to Scott Vitale)
- * - Added Class, ClassDevice, ClassHost and ClassCommon to the internal class driver source filenames to prevent ambiguities
- * - Altered the Mass Storage Host class driver so that SCSI data STALLs from the attached device can be recovered from automatically without
- * having to reset the Mass Storage interface
- * - USB_CONFIG_ATTR_BUSPOWERED constant renamed to USB_CONFIG_ATTR_RESERVED, as this was misnamed (thanks to NXP Semiconductors)
- * - Reordered board name definition indexes so that a misspelled BOARD compile option will default to BOARD_USER rather than BOARD_USBKEY
- * - Altered the HID class driver to only try to construct at maximum one packet per USB frame, to reduce CPU usage
- * - All USB Class Driver configuration struct values are now non-const, to allow for run-time modifications if required before configuring an instance
- * - Library Applications:
- * - Altered the Mass Storage Host LowLevel demo so that SCSI data STALLs from the attached device can be recovered from automatically without
- * having to reset the Mass Storage interface
- * - Updated the AVRISP-MKII Clone programmer project to be compatible with the latest version of AVR Studio (version 5.1)
- * - Changed the AVRISP-MKII Clone programmer project to report a fixed 3.3V VTARGET voltage on USB AVRs lacking an ADC instead of 5V to prevent
- * warnings in AVR Studio 5.1 when programming XMEGA devices
- * - Allow serial strings to be generated on the older AVR8 devices which do not explicitly state they contain unique values in the datasheet,
- * as this appears to be implemented in hardware
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed ring buffer size limited to 255 elements, instead of the intended 65535 elements.
- * - Fixed CDC class drivers not saving and sending all 16-bits of the control line states (thanks to Matthew Swabey)
- * - Fixed race conditions in the CDC, HID and Mass Storage class drivers when processing some control requests
- * - Fixed misspelled HID_KEYBOARD_MODIFIER_* macros in the HID class driver (thanks to Laszlo Monda)
- * - Fixed broken AVR32 endpoint/pipe communications when ORDERED_EP_CONFIG compile time option is not enabled (thanks to Matthias Jahr)
- * - Fixed broken compilation for the AVR32 devices if the NO_SOF_EVENTS compile time option was not enabled (thanks to Matthias Jahr)
- * - Fixed compiler warning on GCC with \c -wundef compile flag is used (thanks to Georg Glock)
- * - Fixed incorrect implementation of LEDs_ToggleLEDs() for the Adafruit-U4 board (thanks to Caroline Saliman)
- * - Fixed broken compilation of LUFA under C++ compilers when the Serial peripheral module header file is included in a C++ source file
- * - Fixed missing semicolon in the UC3 architecture host pipe functions
- * - Fixed failed compilation for the XMEGA architecture if USB_DEVICE_ONLY us not specified
- * - Fixed UC3 architecture ignoring the pipe size when Pipe_ConfigurePipe() is called
- * - Library Applications:
- * - Added reliability patches to the AVRISP-MKII Clone project's PDI/TPI protocols (thanks to Justin Mattair)
- * - Fixed AVRISP-MKII Clone compile warning on AVR8 U4 targets even when NO_VTARGET_DETECT is enabled
- * - Fixed AVRISP-MKII Clone failing to start application firmware once a TPI programming session is exited
- * - Fixed DFU class bootloader not resetting the LED pins as high impedance inputs when a software jump to the user applications is requested
- * - Fixed AVRISP-MKII Clone timing out on long programming commands such as programming the EEPROM on an ATMEGA8 (thanks to Martin Kelling)
- * - Fixed invalid PID value used in the TempDataLogger project host application (thanks to Anupam Pathak)
- *
- * \section Sec_ChangeLog111009 Version 111009
- * <b>New:</b>
- * - Core:
- * - Added USE_LUFA_CONFIG_HEADER compile time option to include a LUFAConfig.h header in the user director for LUFA configuration
- * tokens as an alternative to tokens defined in the project makefile
- * - Added new USB_Host_SetInterfaceAltSetting() convenience function for the selection of an interface's alternative setting
- * - Added Audio class control request definitions
- * - Added new CALLBACK_Audio_Device_GetSetEndpointProperty() callback to the Audio Device Class driver to allow for endpoint control manipulations
- * such as data sample rates
- * - Added support for the Audio class GET STATUS request in the Audio Device Class driver so that it is correctly ACKed when sent by the host
- * - Added new EVENT_Audio_Device_StreamStartStop() event to the Audio Device Class driver to detect stream start/stop events
- * - Added board driver support for the Busware TUL board
- * - Added board hardware driver support for the EVK1100 board
- * - Added board hardware driver support for the EVK1104 board
- * - Added new Host mode Audio Class driver
- * - Added new SPI_GetCurrentMode() function to the SPI peripheral driver
- * - Added RingBuffer_GetFreeCount() function to the Ring Buffer driver
- * - Added new HID_Host_SetIdlePeriod() function to the HID Host Class driver
- * - Added new USB_Host_ConfigurationNumber global variable to indicate the selected configuration in an attached device
- * - Added new USB_Host_GetDeviceStatus() function to the host standard request function set
- * - Added AVR USB XMEGA architecture port (currently incomplete/experimental)
- * - Added new STRINGIFY() and STRINGIFY_EXPANDED() convenience macros
- * - Added new JTAG_DISABLE() macro for the AVR8 architecture
- * - Added Device Qualifier standard descriptor structure definitions USB_StdDescriptor_DeviceQualifier_t and USB_Descriptor_DeviceQualifier_t
- * - Library Applications:
- * - Added RNDIS device mode to the Webserver project
- * - Added new incomplete AndroidAccessoryHost Host LowLevel demo
- * - Added new HIDReportViewer project
- * - Added new MediaControl project
- * - Added new AudioInputHost Host ClassDriver demo
- * - Added new AudioOutputHost Host ClassDriver demo
- * - Added new AudioInputHost Host LowLevel demo
- * - Added new AudioOutputHost Host LowLevel demo
- * - Added new "checksource" target to all library project makefiles
- * - Added new VTARGET_USE_INTERNAL_REF configuration option to the AVRISP-MKII clone project (thanks to Volker Bosch)
- *
- * <b>Changed:</b>
- * - Core:
- * - Altered the definition of the USB_Audio_Descriptor_Format_t descriptor so that the user is now responsible for supplying
- * the supported audio sampling rates, to allow for multiple audio interfaces with different numbers of supported rates and/or
- * continuous sample rates
- * - Pipe_BoundEndpointNumber() has been renamed to Pipe_GetBoundEndpointAddress(), and now returns the correct endpoint direction
- * as part of the endpoint address
- * - Renamed global state variables that are specific to a certain USB mode to clearly indicate which mode the variable relates to,
- * by changing the USB_* prefix to USB_Device_* or USB_Host_*
- * - Removed the HOST_STATE_WaitForDeviceRemoval and HOST_STATE_Suspended host state machine states, as these are no longer required
- * - Altered the USB_Host_SetDeviceConfiguration() function to update the global Host state machine state and the new
- * USB_Host_ConfigurationNumber global as required
- * - Added endian correcting code to the library USB class drivers for multiple architecture support
- * - Removed the ENDPOINT_DESCRIPTOR_DIR_* macros, replaced by ENDPOINT_DIR_* instead
- * - Renamed the JTAG_DEBUG_ASSERT() macro to JTAG_ASSERT()
- * - Added variable number of axis to HID_DESCRIPTOR_JOYSTICK() for multi-axis joysticks above just X and Y
- * - Renamed USB_Host_ClearPipeStall() to USB_Host_ClearEndpointStall() as the function works on an endpoint address within the attached device,
- * and not a Pipe within the host
- * - The MS_Host_ResetMSInterface() now performs a full Mass Storage reset sequence to prevent data corruption in the event of a device
- * lock up or timeout (thanks to David Lyons)
- * - Added endian-correction to the CDC driver's Line Encoding control request handlers.
- * - Library Applications:
- * - Modified the Low Level and Class Driver AudioInput and AudioOutput demos to support multiple audio sample rates
- * - Updated all host mode demos and projects to use the EVENT_USB_Host_DeviceEnumerationComplete() event callback for device configuration
- * instead of manual host state machine manipulations in the main application task
- * - Changed the reports in the GenericHID device demos to control the board LEDs, to reduce user confusion over the callback routines
- * - Added reliability patches to the AVRISP-MKII Clone project's ISP and PDI/TPI protocols (thanks to Justin Mattair)
- *
- * <b>Fixed:</b>
- * - Core:
- * - Large number of documentation and code comment corrections (thanks to Andrey from Microsin.ru)
- * - Fixed possibility of the AVR's SPI interface being pulled out of master mode if the /SS pin is a input and pulled low (thanks
- * to Andrey from Microsin.ru)
- * - Fixed compile error when FIXED_CONTROL_ENDPOINT_SIZE compile time option was disabled, and a USE_*_DESCRIPTORS compile time
- * option was not enabled on the AVR8s
- * - Fixed lack of C++ compatibility in some internal header files causing compile errors when using LUFA in C++ projects
- * - Fixed error in the pipe unordered allocation algorithm for the AVR8 devices breaking compatibility with some devices
- * - Fixed USB_USBTask not being called internally in stream transfers between packets when Partial Stream Transfers are used
- * - Fixed swapped TWI_ADDRESS_READ and TWI_ADDRESS_WRITE values
- * - Fixed TWI_ReadPacket() not releasing the TWI bus on read completion
- * - Fixed optimization error in the HID Parser item value USB_SetHIDReportItemInfo() and USB_GetHIDReportItemInfo() routines if the report item was
- * \c NULL (which should be allowable according to the API)
- * - Fixed HID Parser CALLBACK_HIDParser_FilterHIDReportItem() callback function not being passed a cacheable report item pointer
- * - Fixed HID Parser's largest report size bit count not including the size of the last parsed report item
- * - Fixed HID host driver's largest HID report size count corrupt when the number of report bits exceeds 255
- * - Library Applications:
- * - Fixed incorrect signature in the CDC and DFU class bootloaders for the ATMEGA8U2
- * - Fixed KeyboardHost and KeyboardHostWithParser demos displaying incorrect values when numerical keys were pressed
- * - Fixed compile errors in the incomplete BluetoothHost demo application (thanks to Timo Lindfors)
- * - Fixed incorrect Dataflash buffer use in the DataflashManager_WriteBlocks_RAM() function of several demos/projects (thanks to Jeremy Willden)
- * - Fixed incorrect logging interval (always 500ms longer than requested) in the TempDataLogger project
- * - Fixed incorrect buffer size check in the USBtoSerial project (thanks to Yuri A Nikiforov)
- * - Fixed port state table corruption in the TCP layer of the RNDIS Ethernet device demos
- *
- * \section Sec_ChangeLog110528 Version 110528
- * <b>New:</b>
- * - Core:
- * - Added new ORDERED_EP_CONFIG compile time option to restrict endpoint/pipe configuration to ascending order
- * in exchange for a smaller compiled program binary size
- * - Added a new general RingBuff.h miscellaneous ring buffer library driver header
- * - Added new GCC_FORCE_POINTER_ACCESS() macro to correct GCC's mishandling of struct pointer accesses
- * - Added new GCC_MEMORY_BARRIER() macro to prevent instruction reordering across boundaries
- * - Added basic driver example use code to the library documentation
- * - Added new Endpoint_Null_Stream() and Pipe_Null_Stream() functions
- * - Added new ADC_GET_CHANNEL_MASK() convenience macro
- * - Added new HID report item macros (with HID_RI_ prefix) to allow for easy creation and editing of HID report descriptors
- * - Added new HID_DESCRIPTOR_MOUSE(), HID_DESCRIPTOR_KEYBOARD(), HID_DESCRIPTOR_JOYSTICK() and HID_DESCRIPTOR_VENDOR() macros
- * for easy automatic creation of basic USB HID device reports
- * - Added new MAX() and MIN() convenience macros
- * - Added new Serial_SendData() function to the Serial driver
- * - Added board driver support for the Sparkfun ATMEGA8U2 breakout board
- * - Added TWI baud rate prescaler and bit length parameters to the TWI_Init() function (thanks to Thomas Herlinghaus)
- * - Internal restructuring for eventual multiple architecture ports
- * - Added AVR32 UC3 architecture port (currently incomplete/experimental)
- * - Added new architecture independent functions to enable, disable, save and restore the Global Interrupt Enable flags
- * - Added new RNDIS Device Class Driver packet send and receive functions
- * - Library Applications:
- * - Added ability to write protect Mass Storage disk write operations from the host OS
- * - Added new MIDIToneGenerator project
- * - Added new KeyboardMouseMultiReport Device ClassDriver demo
- * - Added new VirtualSerialMassStorage Device ClassDriver demo
- * - Added HID class bootloader, compatible with a modified version of the command line Teensy loader from PJRC.com
- * - Added LED flashing to the CDC and DFU class bootloaders to indicate when they are running
- *
- * <b>Changed:</b>
- * - Core:
- * - Unordered Endpoint/Pipe configuration is now allowed once again by default via the previous reconfig workaround
- * - Refactored Host mode Class Driver *_Host_ConfigurePipes() routines to be more space efficient when compiled
- * - Added new *_ENUMERROR_PipeConfigurationFailed error codes for the *_Host_ConfigurePipes() routines
- * - The USARTStream global is now public and documented in the SerialStream module, allowing for the serial USART
- * stream to be accessed via its handle rather than via the implicit stdout and stdin streams
- * - The FAST_STREAM_TRANSFERS compile time option has been removed due to lack of use and low cost/benefit ratio
- * - Altered all endpoint/pipe stream transfers so that the new BytesProcessed parameter now points to a location
- * where the number of bytes in the transfer that have been completed can be stored (or NULL if entire transaction
- * should be performed in one chunk)
- * - The NO_STREAM_CALLBACKS compile time option has now been removed due to the new partial stream transfer feature
- * - Changed over all project and demo HID report descriptors to use the new HID report item macros
- * - Moved the HIDParser.c source file to the LUFA/Drivers/USB/Class/Common/ directory from the LUFA/Drivers/USB/Class/Host/
- * - Added support to the HID parser for extended USAGE items that contain the usage page as well as the usage index
- * - Removed the SerialStream driver, rolled functionality into the regular Serial peripheral driver via the new
- * Serial_CreateStream() and Serial_CreateBlockingStream() functions
- * - Renamed the low level Serial byte send/receive functions, to be consistent with the CDC class driver byte functions
- * - Altered the behaviour of the serial byte reception function so that is is non-blocking, and now returns a negative
- * value if no character is received (to remain consistent with the CDC class driver byte reception routines)
- * - Renamed the PRNT_Host_SendString(), CDC_Host_SendString() and CDC_Device_SendString() functions to *_SendData(), and
- * added new versions of the *_SendString() routines that expect a null terminated string instead
- * - Renamed all driver termination *_ShutDown() functions to the more logical name *_Disable()
- * - Reduced latency for executing the Start-Of-Frame events (if enabled in the user application)
- * - Removed Pipe_ClearErrorFlags(), pipe error flags are now automatically cleared when Pipe_ClearError() is called
- * - Endpoint_ResetFIFO() renamed to Endpoint_ResetEndpoint(), to be consistent with the Pipe_ResetPipe() function name
- * - Implemented on-demand PLL clock generation for the U4, U6 and U7 series USB AVRs when automatic PLL mode is specified
- * - F_CLOCK changed to F_USB to be more descriptive, and applicable on future architecture ports
- * - Renamed all low level Endpoint_Read_*, Endpoint_Write_* and Endpoint_Discard_* functions to use the number of bits instead of
- * a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures
- * - Renamed all low level Pipe_Read_*, Pipe_Write_* and Pipe_Discard_* functions to use the number of bits instead of
- * a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures
- * - Separated out board drivers by architecture in the library internals for better organisation
- * - Library Applications:
- * - Changed the XPLAINBridge software UART to use the regular timer CTC mode instead of the alternative CTC mode
- * via the Input Capture register, to reduce user confusion
- * - Combined page and word ISP programming mode code in the AVRISP-MKII clone project to reduce compiled size and
- * increase maintainability of the code
- * - Changed over library projects to use the new general ring buffer library driver module
- * - Added new high level TWI packet read/write commands, altered behaviour of the TWI_StartTransmission() function
- * - Changed TempDataLogger project's DS1307 driver to simplify the function interface and prevent a possible race condition
- * - Changed AVRISP-MKII project to use the Watchdog interrupt for command timeouts, to reduce CPU usage and free timer 0
- * for other uses
- * - Updated the software USART code in the XPLAIN Bridge application so that the incoming bits are sampled at their mid-point
- * instead of starting point, to give maximum reliability (thanks to Anton Staaf)
- *
- * <b>Fixed:</b>
- * - Core:
- * - Fixed broken USBFOO board drivers due to missing BOARD_USBFOO define
- * - Fixed HID host class driver incorrectly binding to HID devices that do not have an OUT endpoint
- * - Fixed incorrect definition of the HID_KEYBOARD_SC_D constant in the HID class driver (thanks to Opendous Inc.)
- * - Fixed incorrect definition of the HID_KEYBOARD_SC_RIGHT_ARROW constant in the HID class driver (thanks to Joby Taffey)
- * - Fixed incorrect endpoint initialisation order in the several device demos (thanks to Rick Drolet)
- * - Fixed inverted Minimus board LEDs
- * - Fixed incorrect byte ordering in the Audio_Device_WriteSample24 function (thanks to WZab)
- * - Fixed several functions in the Host mode Still Image Class driver returning an error code from the incorrect
- * error code enum (thanks to Daniel Seibert)
- * - Fixed ReportID not being removed from the feature/out report data array in the HID class driver when Report IDs are used
- * - Fixed incorrect BUTTONS_BUTTON1 definition for the Minimus board
- * - Fixed Still Image Host class driver exiting the descriptor search routine prematurely if the data pipes (but not event pipe)
- * is found
- * - Fixed missing call to Pipe_SetInfiniteINRequests() in the Pipe_ConfigurePipe() routine
- * - Fixed Remote Wakeup broken on the AVRs due to the mechanism only operating when the SUSPI bit is set (thanks to Holger Steinhaus)
- * - Fixed possible invalid program execution when in host mode if corrupt descriptor lengths are supplied by the attached device
- * - Library Applications:
- * - Fixed Benito project discarding incoming data from the USB virtual serial port when the USART is busy
- * - Fixed broken DFU bootloader, added XPLAIN support for bootloader start when XCK jumpered to ground
- * - Fixed broken HID_REQ_GetReport request handler in the Low Level GenericHID demo
- * - Fixed possible lost data in the XPLAINBridge, USBtoSerial and Benito projects when the host exceeds the packet
- * timeout period on received packets as set by USB_STREAM_TIMEOUT_MS (thanks to Justin Rajewski)
- * - Fixed possible programming problem in the AVRISP-MKII clone project when programming specific patterns into a target
- * memory space that is only byte (not page) addressable
- * - Fixed errors in the incomplete Test and Measurement device demo preventing proper operation (thanks to Pavel Plotnikov)
- * - Fixed programming errors in the AVRISP-MKII project when the programming packet is a round multiple of the endpoint bank
- * size under avrdude (thanks to Steffan Woltjer)
- *
- *
- * \section Sec_ChangeLog101122 Version 101122
- * <b>New:</b>
- * - Core:
- * - Added new SCSI_ASENSE_NOT_READY_TO_READY_CHANGE constant to the Mass Storage class driver, to indicate when a previously
- * not ready removable medium has now become ready for the host's use (thanks to Martin Degelsegger)
- * - Moved the Pipe and Endpoint stream related code to two new USB library core source files Endpoin