aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers
Commit message (Collapse)AuthorAgeFilesLines
* Added new TOTAL_NUM_CONFIGURATIONS option, removed ↵Dean Camera2009-07-165-19/+92
| | | | | | USE_SINGLE_DEVICE_CONFIGURATION compile time option (but silently convert it to USE_SINGLE_DEVICE_CONFIGURATION internally for compatibility). Added new USE_FLASH_DESCRIPTORS compile time option. By default, descriptors can now lie in mixed memory spaces (specified by a new parameter to the CALLBACK_USB_GetDescriptor() function) unless one of the USE_*_DESCRIPTORS compile time option is specified.
* Fix HID class device driver -- if a SetIDle request is issued with the LSB ↵Dean Camera2009-07-153-53/+70
| | | | | | | | of wValue set to zero, the idle period must be set for all HID interfaces. Fix Keyboard and Mouse demos, Idle period is now multiplied by 4 as the period is read into and sent out of the device to ensure it is always stored as a multiple of 1ms. Fixes Keyboard demo using an initial Idle period of 2s rather than 500ms (thanks to Brian Dickman). Move out the internal device serial descriptor reading routine into a seperate static function, rather than being part of USB_Device_GetDescriptor.
* Added module file dependancy information to the USB class drivers.Dean Camera2009-07-1413-0/+53
|
* Added better module summaries.Dean Camera2009-07-149-9/+23
|
* Fix broken Pipe stream function templates due to mixed const/no const use in ↵Dean Camera2009-07-131-6/+6
| | | | prototypes.
* Added new EEPROM and FLASH buffer versions of the Endpoint and Pipe stream ↵Dean Camera2009-07-139-879/+752
| | | | functions. Changed Endpoint.c and Pipe.c to use a templated system to build the seperate functions, rather than duplicating each function's code many times.
* Added new HOST_STATE_WaitForDeviceRemoval host state machine state for ↵Dean Camera2009-07-133-16/+103
| | | | | | non-blocking disabling of device communications until the device has been removed (for use when an error occurs or communications with the device have completed). Changed over all host mode demos to use the new state. Added verbose documentation for each of the USB Host state machine states.
* Seperated out parts of the PrinterHost incomplete demo into a seperate Lib ↵Dean Camera2009-07-134-12/+12
| | | | | | subdirectory. Fixed Host mode to Device mode UID change not causing a USB Disconnect event when a device was connected.
* Dataflash_WaitWhileBusy() now always ensures that the dataflash is ready for ↵Dean Camera2009-06-291-1/+14
| | | | | | | | the next command immediately after returning, no need to call Dataflash_ToggleSelectedChipCS() afterwards. Added new DATAFLASH_CHIP_MASK() macro to the Dataflash driver, which returns the Dataflash select mask for the given chip index. Updated MassStorage device block write routines to use ping-pong Dataflash buffering to increase throughput by around 30%.
* Added const modifiers to device mode class drivers.Dean Camera2009-06-2836-295/+689
| | | | | | Added parameter directions to function parameter documentation. Added new experimental FAST_STREAM_FUNCTIONS compile time option to speed up stream transfers at the expense of a higher FLASH consumption (needs testing to verify improved throughput).
* Reduce struct name pollution - group typedef struct names by class driver ↵Dean Camera2009-06-2614-330/+265
| | | | name where appropriate.
* Optimize vendor/product description string display code in MassStorageHost.Dean Camera2009-06-263-1/+5
| | | | | | | | Remove all Host mode class demos other than the CDCHost class driver demo, so that they can be re-added as they are made once the host mode class framework is designed. Fixed USB_Host_SendControlRequest() not re-suspending the USB bus when initial device ready-wait fails. Fixed USB Pad regulator not being disabled on some AVR models when the USB_OPT_REG_DISABLED option is used.
* Fixed MassStorage demo not clearing the reset flag when a Mass Storage Reset ↵Dean Camera2009-06-232-4/+3
| | | | is issued while not processing a command.
* Pipe_ConfigurePipe() now automatically defaults IN pipes to accepting ↵Dean Camera2009-06-234-9/+6
| | | | infinite IN requests, this can still be changed by calling the existing \ref Pipe_SetFiniteINRequests() function.
* Fixed CDCHost demo unfreezing IN pipes during configuration, rather than ↵Dean Camera2009-06-232-1/+28
| | | | | | during use. Changed Pipe stream functions to automatically set the pipe token, allowing them to be used on bidirectional pipes without having to explicitly call Pipe_SetPipeToken() beforehand.
* Corrected the ADC driver for the ATMEGA16U4 and ATMEGA32U4 (thanks to ↵Dean Camera2009-06-222-2/+25
| | | | Opendous Inc.).
* Optimize unique serial number reading code for size -- remove atoi/toupper ↵Dean Camera2009-06-211-13/+35
| | | | references, replace with hand-rolled code as the input has known size constraints.
* Added new USE_INTERNAL_SERIAL define for using the unique serial numbers in ↵Dean Camera2009-06-213-18/+25
| | | | some AVR models as the USB device's serial number, added NO_INTERNAL_SERIAL compile time option to turn off new serial number reading code. Updated Mass Storage and CDC based demos to use the new device serial number if the device it is compiled for supports it.
* Trim unique serial number created by the USE_INTERNAL_SERIAL option to 12 ↵Dean Camera2009-06-212-3/+3
| | | | characters rather than 20 - apparently Windows will implode if a serial number is too long.
* Added USE_INTERNAL_SERIAL compile time option to automatically read out the ↵Dean Camera2009-06-207-28/+106
| | | | internal unique serial number as the device's serial number descriptor on supported AVR models.
* Clean up RNDIS demo type define names.Dean Camera2009-06-196-43/+48
|
* Fix makefiles -- the auto-addition of -D switches to each LUFA compile time ↵Dean Camera2009-06-192-2/+2
| | | | option was faulty, due to GNUMake becomming confused by the spaces in the USE_STATIC_OPTIONS lines. Make user add in the switches explicitly instead.
* Extend USB_GetDeviceConfigDescriptor() routine to require the configuration ↵Dean Camera2009-06-193-6/+9
| | | | number within the device to fetch, to add support for multi-configuration devices.
* Re-add in simple scheduler for compatibility with legacy code, mark all ↵Dean Camera2009-06-192-27/+58
| | | | scheduler related files as deprecated.
* Break device mode class driver interfaces into seperate config and state ↵Dean Camera2009-06-1820-407/+545
| | | | structs which are then combined, for clarity. Move device mode class driver interfaces back into the device mode class driver headers from the common class headers to make room for host class interfaces.
* Added new USB_Host_ClearPipeStall() convenience function to clear a stall ↵Dean Camera2009-06-185-2/+64
| | | | | | | | | | condition on an attached device's endpoint. Added new USB_Host_GetDeviceDescriptor() convenience function to retrieve the attached device's Device descriptor. Make Pipe_ConfigurePipe() mask the given endpoint number against PIPE_EPNUM_MASK to ensure the endpoint IN direction bit is cleared to prevent endpoint type corruption. Fix documentation mentioning Pipe_GetCurrentToken() function when real name is Pipe_GetPipeToken().
* Pipe_GetErrorFlags() now returns additional error flags for overflow and ↵Dean Camera2009-06-162-3/+12
| | | | | | underflow errors. Change MIDI demos to use real MIDI command values, and shift for the USB wrapper, rather than shift for the MIDI bytes. This is a little confusing for the MIDI USB wrapper, but allows for the use of real standardized MIDI command values.
* Added USB Missle Launcher project, submitted by Dave Fletcher.Dean Camera2009-06-161-1/+1
|
* Added new USB_Host_SetDeviceConfiguration() convenience function. Change ↵Dean Camera2009-06-162-0/+30
| | | | over Low Level host demos to use the new routine.
* Remove ConfigDescriptor.c/.h files from the ClassDriver Host demos, as they ↵Dean Camera2009-06-151-0/+67
| | | | will be obsoleted when the Host mode class drivers are complete. Add new StillImage stub class driver common header.
* Fixed broken HIDReportParser.c.Dean Camera2009-06-151-1/+3
|
* More Doxygen fixes - ensure no undocumented function parameters.Dean Camera2009-06-153-2/+33
|
* Enhanced class drivers to use the same public/private section seperations as ↵Dean Camera2009-06-1513-351/+391
| | | | other portions of the library.
* Add host mode USB Class driver stubs, add beginnings of a CDC host class driver.Dean Camera2009-06-1440-1022/+2548
| | | | | | Split out common defines/types from class drivers into a seperate common class driver directory. Make central USB Class driver dispatch headers, used for both device and host modes.
* Fix errors from last commit.Dean Camera2009-06-142-7/+5
|
* Changed per-device controller preprocessor checks over to per-device series ↵Dean Camera2009-06-1410-51/+54
| | | | | | for better device control. Fixed error in Endpoint.c using HSOFI rather than SOFI for counting elapsed milliseconds.
* Changed to new device mode Class Driver function name prefixes to make way ↵Dean Camera2009-06-1112-110/+111
| | | | for similar host mode Class drivers.
* Deleted Host ClassDriver demos -- not yet started, faster to rebase new ↵Dean Camera2009-06-091-0/+1
| | | | | | ClassDriver demos from the newly schedulerless LowLevel host demos rather than re-convert each demo from the previous scheduler-based implementations. Fixes to MassStorageHost demo to improve compatibility with more USB drives.
* Finished basic documentation of all device mode class drivers.Dean Camera2009-06-086-55/+166
|
* Completed documentation of the HID device class driver.Dean Camera2009-06-081-1/+21
|
* Finished CDC device class driver documentation.Dean Camera2009-06-083-1/+48
|
* Converted Host mode demos to schedulerless. Fixed host mode broken due to ↵Dean Camera2009-06-085-19/+11
| | | | earlier Start-of-frame event experiments.
* Synchronise with the 090605 release.Dean Camera2009-06-051-0/+3
|
* Added multiple Report ID support to the HID class driver. Removed OUT ↵Dean Camera2009-06-055-46/+62
| | | | endpoint support from HID driver (all OUT reports are now processed through control requests) as a seperate endpoint had issues with determining the exact output report length.
* Fixed EVENT_USB_CDC_ControLineStateChanged() event not taking the CDC ↵Dean Camera2009-06-043-18/+39
| | | | | | | | interface structure as a parameter. Converted TestApp demo over to the new demo structure. More class driver documentation improvements.
* Added Doxygen documentation to the Audio class driver. Added new modules for ↵Dean Camera2009-06-047-16/+294
| | | | each of the new device class drivers to the library documentation.
* Ensure all USB device class drivers have the same three main functions as ↵Dean Camera2009-06-043-0/+16
| | | | their interface for consistency.
* Minor documentation page updates.Dean Camera2009-06-049-50/+107
| | | | | | | | Redocumented all device demos, now that they have changed over to the new USB class drivers. Added C linkage to class drivers for C++ support. Added prefixes to most of the class driver constants to prevent name clashes.
* Removed new Start of Frame event from the library; performance suffered far ↵Dean Camera2009-06-026-76/+10
| | | | | | too much and it was only useful in one of the standard classes (HID). Altered HID demos to use the previous method of tracking millisecond periods via a hardware timer rather than the SOF events. Fixed MIDI class driver blocking on unread events to the host.
* Add MIDI class driver, update MIDI device demo to use the new USB class ↵Dean Camera2009-06-016-7/+505
| | | | driver. All device demos/projects have now been converted to the new library class drivers, although documentation is yet to be completed.