aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/Core/AVR8
Commit message (Collapse)AuthorAgeFilesLines
* Removed the ENDPOINT_DESCRIPTOR_DIR_* macros in favour of the shorter ↵Dean Camera2011-07-191-15/+2
| | | | ENDPOINT_DIR_* macros, which can now be used with both Endpoint_ConfigureEndpoint() and in the device descriptors.
* Move out the EP_TYPE_* macros to the base USBController.h header, as these ↵Dean Camera2011-07-191-27/+0
| | | | are used in the device descriptors as well and thus must not be changed.
* Add high speed USB support for the UC3 devices containing a high speed USB ↵Dean Camera2011-07-141-22/+23
| | | | | | controller. Add device support preprocessor checks and use symbolic bit names in the UC3 platform clock management driver.
* Fixed error in the pipe unordered allocation algorithm for the AVR8 devices ↵Dean Camera2011-07-122-12/+4
| | | | breaking compatibility with some devices.
* Add missing function attributes.Dean Camera2011-07-122-1/+2
|
* Updated all host mode demos and projects to use the ↵Dean Camera2011-07-0810-180/+37
| | | | | | | | | | | | | | EVENT_USB_Host_DeviceEnumerationComplete() event callback for device configuration instead of manual host state machine manipulations in the main application task. Added new USB_Host_ConfigurationNumber global variable to indicate the selected configuration in an attached device. 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 new USB_Host_ConfigurationNumber global as required. Moved out the Host mode standard request convenience/helper functions from the architecture specific Host driver files to the architecture agnostic HostStandardReq.c driver file.
* Tighten up the implementations of the USB_Device_SetDeviceAddress(), ↵Dean Camera2011-07-062-31/+31
| | | | | | USB_Controller_Reset() and USB_PLL_On() functions for the AVR8 devices. Minor corrections to the documentation of the USB_Control_Request_t enum.
* Fixed compile error when FIXED_CONTROL_ENDPOINT_SIZE compile time option was ↵Dean Camera2011-06-203-1/+36
| | | | | | disabled, and a USE_*_DESCRIPTORS compile time option was not enabled on the AVR8s. Add C++ compatibility to some header files currently missing extern "C" linkage.
* Add macro guards to the templated C files to prevent compile errors if they ↵Dean Camera2011-06-144-1/+136
| | | | are mistakenly compiled as regular source files in a LUFA project.
* Fix compile errors when both Host and Device modes are enabled.Dean Camera2011-06-091-1/+1
|
* Pipe_BoundEndpointNumber() has been renamed to ↵Dean Camera2011-06-082-12/+7
| | | | | | Pipe_GetBoundEndpointAddress(), and now returns the correct endpoint direction as part of the endpoint address. Add Audio_GetSetEndpointProperty() function to the Host mode Audio class driver.
* Massive corrections to the project documentation and code comments, thanks ↵Dean Camera2011-06-054-5/+5
| | | | to Russian translation services provided by Andrey from Microsin.ru.
* Spell check library source code files.Dean Camera2011-06-013-4/+4
|
* Altered the definition of the USB_Audio_Descriptor_Format_t descriptor so ↵Dean Camera2011-05-302-3/+3
| | | | 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.
* Add new USB_Host_SetInterfaceAltSetting() convenience function.Dean Camera2011-05-272-0/+30
|
* Copy out the EndpointStream and PipeStream functions to each architecture, ↵Dean Camera2011-05-268-0/+1788
| | | | so that each architecture can optimise the stream functions according to the available hardware (such as DMA, where available).
* Fixed possible invalid program execution when in host mode if corrupt ↵Dean Camera2011-05-141-7/+15
| | | | | | | | descriptor lengths are supplied by the attached device. Minor code cleanups to add const and reformat where missing, as well as abstract out the internal device signature start address into a macro, so that it can be altered to suit particular devices within a single architecture if needed. Add missing documentation to the USB_Device_States_t enum.
* Fix reversed descriptions for the AVR8 USB pad regulator enable/disable ↵Dean Camera2011-04-201-2/+3
| | | | masks (thanks to Omar).
* Add missing function attributes to the pipe/endpoint functions for all ↵Dean Camera2011-04-125-3/+7
| | | | | | architectures. Perform endianness correction in the HID report parser for big-endian platforms.
* Move global interrupt enable/disable functions out to Common.h and document ↵Dean Camera2011-04-083-35/+4
| | | | them.
* Correct UC3 global interrupt functions.Dean Camera2011-04-081-1/+1
| | | | | | Replace all calls and references to _delay_ms() in the code with the architecture-agnostic Delay_MS() function. Improve code generation for the Delay_MS() function on the AVR8 architecture when called with a constant input.
* Add in a new common Delay_MS() function, which provides a blocking delay for ↵Dean Camera2011-04-084-19/+51
| | | | | | | | all architectures. Remove use of avr-libc specific ATOMIC_BLOCK, replace with a new per-architecture set of inline functions to retrieve and manipulate the global interrupt enable bit for each architecture. Add in documentation for the USB controller common interrupt routine which must be linked to the interrupt controller in the user application on the AVR32 UC3 architecture.
* Oops - fix incorrect variable name in the updated Pipe_Write_8() function.Dean Camera2011-04-041-1/+1
|
* Renamed all low level Endpoint_Read_*, Endpoint_Write_* and ↵Dean Camera2011-04-042-109/+109
| | | | | | 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.
* F_CLOCK changed to F_USB to be more descriptive, and applicable on future ↵Dean Camera2011-03-211-5/+5
| | | | architecture ports.
* Fixed Remote Wakeup broken on the AVRs due to the mechanism only operating ↵Dean Camera2011-03-152-3/+2
| | | | | | when the SUSPI bit is set (thanks to Holger Steinhaus). Remove redundant setting of UIDE in the AVR8 and AVR32 USB controller drivers.
* Implemented on-demand PLL clock generation for the U4, U6 and U7 series USB ↵Dean Camera2011-03-152-14/+35
| | | | AVRs when automatic PLL mode is specified.
* Oops - fix internal serial number extraction routine for the AVR8 architecture.Dean Camera2011-03-141-1/+1
|
* Simplify the internal serial extraction routines for each architecture.Dean Camera2011-03-131-9/+9
|
* Add experimental support for the AVR32 UC3A4 microcontrollers.Dean Camera2011-03-131-6/+6
| | | | Add support for the inbuilt unique serial numbers in the UC3A3 and UC3A4 models.
* Add software FIFOs to the UC3B pipe control interfaces, to match the ↵Dean Camera2011-03-051-2/+2
| | | | endpoint control interfaces. Fix incorrect endianness for the Endpoint/Pipe read and write routines.
* Porting updates for the UC3B architecture - get UC3B partially enumerating ↵Dean Camera2011-03-052-7/+0
| | | | using a modified mouse demo on the EVK1101. Implement a software FIFO for the endpoint banks; datasheet hints that this can be done through hardware as on the AVR8 architecture, but the correct method to do this not discovered yet.
* Fixed Still Image Host class driver exiting the descriptor search routine ↵Dean Camera2011-03-031-0/+2
| | | | | | prematurely if the data pipes (but not event pipe) is found. Fixed missing call to Pipe_SetInfiniteINRequests() in the Pipe_ConfigurePipe() routine.
* Add in USB_INT_RegisterHandlers() internal function to register the ↵Dean Camera2011-02-282-0/+7
| | | | | | interrupt handler routines used by LUFA. Add dummy loads after clearing the interrupt lines according to the datasheet. Add in temporary global interrupts enable/disable macros.
* Oops - ensure that only the relevant/available interrupts are defined and ↵Dean Camera2011-02-271-22/+69
| | | | | | used on each architecture. Make all USB driver headers include USBMode.h first, to ensure that the relevant USB mode macros are defined.
* Changed over the AVR8 USB controller interrupt management macros to be ↵Dean Camera2011-02-273-28/+248
| | | | inlined functions instead, for better compile-time validity checking and to keep the per-architecture source files as uniform as possible.
* General cleanup and more port work to the AVR32 UC3B.Dean Camera2011-02-273-7/+7
|
* Move out common architecture-independent core definitions into the ↵Dean Camera2011-02-274-167/+0
| | | | appropriate core dispatch header files.
* More AVR32 UC3B architecture ports - USB device mode applications can now be ↵Dean Camera2011-02-271-1/+1
| | | | sucessfully compiled, although they will be currently non-functional.
* Removed Pipe_ClearErrorFlags(), pipe error flags are now automatically ↵Dean Camera2011-02-261-10/+2
| | | | | | cleared when Pipe_ClearError() is called. More UC3B architecture porting.
* More UC3B architecture port updates.Dean Camera2011-02-261-1/+1
|
* Rename architecture specific driver files, to make them appear with uniquely ↵Dean Camera2011-02-2013-6/+6
| | | | identifying filenames in the documentation.
* Added start of a port of the core USB driver code to the AVR32 UC3B ↵Dean Camera2011-02-202-40/+35
| | | | architecture.
* More Doxygen updates for multiple architecture support.Dean Camera2011-02-202-2/+9
|
* Start update of documentation to support possible multiple architectures in ↵Dean Camera2011-02-207-77/+33
| | | | the future - alter \file documentation to automatically copy in the module documentation where possible.
* Initial restructuring of the core USB driver module to support multiple ↵Dean Camera2011-02-1913-0/+4660
architectures in the future.