aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/HighLevel/USBTask.c
Commit message (Collapse)AuthorAgeFilesLines
* Renamed all library events to properly seperate out Device and Host mode ↵Dean Camera2009-08-051-1/+1
| | | | | | | | events. Changed the firing conditions for some events to ensure that events are fired by their own USB mode only. Remove VBUS events - not needed as the library takes care of VBUS detection and feedback on supported AVRs via the USB_Device_Connected and USB_Device_Disconnected events. Fixed incorrect Host state assignment in the incomplete BluetoothHost demo.
* Removed interrupt disable/enable from the Device mode control request ↵Dean Camera2009-08-021-6/+1
| | | | | | processing routines, as they can cause problems with user code and can cause infinite spinlocks under some circumstances. Added new LUFA logo from EDIGMA.COM.
* Better solution - change compile time token names to DEVICE_STATE_AS_GPIOR ↵Dean Camera2009-07-281-2/+2
| | | | and HOST_STATE_AS_GPIOR and allow the user to set them to the index of the GPIOR register within the device to use.
* Added HOST_STATE_AS_GPIOR1 and DEVICE_STATE_AS_GPIOR0 compile time options, ↵Dean Camera2009-07-281-2/+2
| | | | the latter of which is used in the bootloaders, to reduce code size.
* Added new USB_DeviceState variable to keep track of the current Device mode ↵Dean Camera2009-07-211-3/+5
| | | | | | | | | | | | USB state. Added new Endpoint_ClearStatusStage() convenience function to assist with the status stages of control transfers. Removed vague USB_IsConnected global - test USB_DeviceState or USB_HostState explicitly to gain previous functionality. Removed USB_IsSuspended global - test USB_DeviceState against DEVICE_STATE_Suspended instead. Fixed possible enumeration errors from spinloops which may fail to exit if the USB connection is severed before the exit condition becomes true.
* Seperated out parts of the PrinterHost incomplete demo into a seperate Lib ↵Dean Camera2009-07-131-1/+1
| | | | | | subdirectory. Fixed Host mode to Device mode UID change not causing a USB Disconnect event when a device was connected.
* Commit of new class abstraction APIs for all device demos other than the ↵Dean Camera2009-06-011-1/+1
| | | | | | | | | | MIDI demo - not documented yet. Removed scheduler and memory allocation libraries. Added new EVENT_USB_StartOfFrame event in the library to indicate the start of each USB frame (when generated). Removed Tx interrupt from the USBtoSerial demo; now sends characters via polling to ensure more time for the Rx interrupt.
* Moved USB Host state machine code out from USBTask.c and into Host.c, where ↵Dean Camera2009-05-131-169/+2
| | | | it more properly belongs.
* Fixed inability to enumerate any devices while in host mode (broken in a ↵Dean Camera2009-05-071-4/+3
| | | | previous commit).
* Changed PIPE_CONTROLPIPE_DEFAULT_SIZE from 8 to 64 to try to prevent ↵Dean Camera2009-05-041-2/+2
| | | | | | problems with faulty devices which do not respect the given wLength value when reading in the device descriptor. Further documentation improvements - removed file view from the main library documentation, replaced file references in the documentation with group references.
* USB_HostRequest renamed to USB_ControlRequest, entire control request header ↵Dean Camera2009-04-221-5/+6
| | | | | | | | is now read into USB_ControlRequest in Device mode rather than having the library pass only partially read header data to the application. The USB_UnhandledControlPacket event has had its parameters removed, in favour of accessing the new USB_ControlRequest structure. The Endpoint control stream functions now correctly send a ZLP to the host when less data than requested is sent.
* Changed over all deprecated GCC structure tag initializers to the ↵Dean Camera2009-04-201-10/+10
| | | | standardized C99 format (thanks to Mike Alexander).
* Fixed GenericHIDHost demo report write routine incorrect for control type ↵Dean Camera2009-04-161-1/+1
| | | | | | | | | | | | | | | | | | requests (thanks to Andrei Krainev). Removed Endpoint_ClearCurrentBank() and Pipe_ClearCurrentBank() in favour of new Endpoint_ClearIN(), Endpoint_ClearOUT(), Endpoint_ClearControlIN(), Endpoint_ClearControlOUT(), Pipe_ClearIN(), Pipe_ClearOUT(), Pipe_ClearControlIN() and Pipe_ClearControlOUT() macros (done to allow for the detection of packets of zero length). Renamed *_ReadWriteAllowed() macros to *_IsReadWriteAllowed() to remain consistent with the rest of the LUFA API. Endpoint_IsSetupReceived() macro has been renamed to Endpoint_IsSETUPReceived(), Endpoint_ClearSetupReceived() macro has been renamed to Endpoint_ClearControlSETUP(), the Pipe_IsSetupSent() macro has been renamed to Pipe_IsSETUPSent() and the Pipe_ClearSetupSent() macro is no longer applicable and should be removed - changes made to compliment the new endpoint and pipe bank management API. Updated all demos, bootloaders and projects to use the new endpoint and pipe management APIs (thanks to Roman Thiel). Updated library doxygen documentation, added groups, changed documentation macro functions to real functions for clarity. Removed old endpoint and pipe aliased read/write/discard routines which did not have an explicit endian specifier for clarity. Removed the ButtLoadTag.h header file, as no one used for its intended purpose anyway.
* The USB_Host_SendControlRequest() function no longer automatically selects ↵Dean Camera2009-04-141-0/+6
| | | | | | the Control pipe (pipe 0), so that other control type pipes can be used with the function. The USB Host management task now saves and restores the currently selected pipe before and after the task completes.
* Move StdRequestType.h, StreamCallbacks.h, USBMode.h from the LowLevel USB ↵Dean Camera2009-04-051-1/+1
| | | | driver directory to the HighLevel USB driver directory, where they are more suited.
* Commit for the 090401 release.Dean Camera2009-03-311-1/+1
|
* Moved all source to the trunk directory.Dean Camera2009-02-231-0/+253