aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/LowLevel/Host.c
Commit message (Collapse)AuthorAgeFilesLines
* Fixed USB_Host_ClearPipeStall() incorrectly attempting to determine the ↵Dean Camera2010-09-211-3/+0
| | | | endpoint's direction from the currently selected pipe.
* Ensure device address latch bit is not set at the same time as the new ↵Dean Camera2010-09-191-7/+12
| | | | | | | | address, as per datasheet. Minor documentation fixes. Fix broken USB host mode due to the USB frame counter not being updated during the early enumeration steps, causing USB_Host_DelayMS() to spinloop forever.
* Added new USB_Device_GetFrameNumber() and USB_Host_GetFrameNumber() ↵Dean Camera2010-09-051-6/+14
| | | | | | | | functions to retrieve the current USB frame number. Added new USB_Host_EnableSOFEvents(), USB_Host_DisableSOFEvents() and EVENT_USB_Host_StartOfFrame() for the user application handling of USB Start of Frame events while in USB Host mode. Changed over all demos, drivers and internal functions to use the current frame number over the Start of Frame flag where possible to free up the Start of Frame flag for interrupt use in the user application.
* Add missing const qualifiers to class drivers.Dean Camera2010-07-211-1/+3
| | | | Indent core library function parameters so that there is only one parameter per line, to increase readability.
* Removed the automated checking of event names in the demo, project and ↵Dean Camera2010-07-151-4/+0
| | | | | | bootloader makefiles due to inconsistancies between the behaviour of the command line tools used to perform the check on each platform. Removed the internal endpoint and pipe memory allocation macros, as this is already performed directly in the code. Simplify the endpoint and pipe reset procedure.
* Add svn:eol-style property to source files, so that the line endings are ↵Dean Camera2010-05-081-347/+347
| | | | correctly converted to the target system's native end of line style.
* Fix incorrect LED mask name in the Webserver project.Dean Camera2010-03-091-1/+1
| | | | Fix missing text from the Host Mode States enum documentation.
* Add more include protection macros to give the user warnings when they try ↵Dean Camera2010-02-111-1/+2
| | | | to manually include private driver header files, instead of the public driver headers.
* Update copyright year to 2010.Dean Camera2009-12-301-2/+2
|
* Fix MIT license language to make its intent clearer.Dean Camera2009-12-281-7/+7
|
* Use -pedantic compile time option to find and correct several minor code errors.Dean Camera2009-12-131-10/+10
|
* Add new USB_Host_GetDeviceStringDescriptor() convenience function.Dean Camera2009-12-061-0/+16
|
* Fix double oops -- Host mode settle delay was still being ignored due to ↵Dean Camera2009-12-041-1/+1
| | | | inverted logic, HID Parser was assigning the usage Min/Max usage value to the report item's collection path rather than the report item itself.
* Oops - fix Host mode pre-enumeration settle delay being ignored leading to ↵Dean Camera2009-12-041-2/+0
| | | | failure to enumerate certain devices.
* Fixed host state machine not enabling Auto VBUS mode when ↵Dean Camera2009-11-241-5/+6
| | | | HOST_DEVICE_SETTLE_DELAY_MS is set to zero.
* Add const attribute to class driver APIs.Dean Camera2009-11-031-1/+1
| | | | Add new manual pages detailing the advantages of LUFA over the official Atmel USB AVR stack, and reasons why LUFA should be used over a built-from-scratch USB stack.
* Remove USE_NONSTANDARD_DESCRIPTOR_NAMES compile time token, split out ↵Dean Camera2009-09-091-4/+0
| | | | | | standard descriptors into seperate USB_Descriptor_* and USB_StdDescriptor_* structures so that both can be used within the one project. Add guard to the HID Host Class driver SetProtocol command, to ensure that the device supports boot protocol mode before issuing the request.
* Renamed all library events to properly seperate out Device and Host mode ↵Dean Camera2009-08-051-6/+3
| | | | | | | | 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.
* Added new Pipe_BoundEndpointNumber() and Pipe_IsEndpointBound() functions.Dean Camera2009-07-261-1/+0
|
* Added new USB_DeviceState variable to keep track of the current Device mode ↵Dean Camera2009-07-211-15/+12
| | | | | | | | | | | | 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.
* Move unfinished SideShow source files to nested Lib directory for clarity.Dean Camera2009-07-201-2/+2
|
* Added new HOST_STATE_WaitForDeviceRemoval host state machine state for ↵Dean Camera2009-07-131-0/+4
| | | | | | 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.
* Pipe_ConfigurePipe() now automatically defaults IN pipes to accepting ↵Dean Camera2009-06-231-2/+0
| | | | infinite IN requests, this can still be changed by calling the existing \ref Pipe_SetFiniteINRequests() function.
* Fix makefiles -- the auto-addition of -D switches to each LUFA compile time ↵Dean Camera2009-06-191-1/+1
| | | | 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.
* Added new USB_Host_ClearPipeStall() convenience function to clear a stall ↵Dean Camera2009-06-181-0/+35
| | | | | | | | | | 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().
* Added new USB_Host_SetDeviceConfiguration() convenience function. Change ↵Dean Camera2009-06-161-0/+17
| | | | over Low Level host demos to use the new routine.
* Converted Host mode demos to schedulerless. Fixed host mode broken due to ↵Dean Camera2009-06-081-8/+7
| | | | earlier Start-of-frame event experiments.
* Commit of new class abstraction APIs for all device demos other than the ↵Dean Camera2009-06-011-5/+7
| | | | | | | | | | 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.
* Fix broken Host mode, from the recent API changes.Dean Camera2009-05-261-1/+1
|
* Rewritten event system to remove all macros, to make user code clearer.Dean Camera2009-05-181-5/+5
| | | | | | | | Fixed incorrect ENDPOINT_EPNUM_MASK mask preventing endpoints above EP3 from being selected (thanks to Jonathan Oakley). Removed STREAM_CALLBACK() macro - callbacks now use regular function definitions to clarify user code. Removed DESCRIPTOR_COMPARATOR() macro - comparators should now use regular function definitions to clarify user code.
* Moved USB Host state machine code out from USBTask.c and into Host.c, where ↵Dean Camera2009-05-131-1/+172
| | | | it more properly belongs.
* 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.
* Move StdRequestType.h, StreamCallbacks.h, USBMode.h from the LowLevel USB ↵Dean Camera2009-04-051-1/+2
| | | | driver directory to the HighLevel USB driver directory, where they are more suited.
* All comments in the library, bootloaders, demos and projects have now been ↵Dean Camera2009-04-011-2/+2
| | | | spell-checked and spelling mistakes/typos corrected.
* Moved all source to the trunk directory.Dean Camera2009-02-231-0/+115