aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/LowLevel/Pipe.c
Commit message (Collapse)AuthorAgeFilesLines
* Speed up calls to Pipe_IsPipeBound() by immediately skipping unconfigured ↵Dean Camera2010-06-121-4/+7
| | | | pipes, rather than performing token check first.
* The EEPROM stream read/write functions now use eeprom_update_byte() instead ↵Dean Camera2010-05-261-2/+2
| | | | | | of eeprom_write_byte(), so that only changed bytes are written to EEPROM to preserve its lifespan. Changed over the AVRISP-MKII and TemperatureDataLogger projects to use eeprom_update_byte() when writing non-volatile parameters to EEPROM to preserve its lifespan.
* Add svn:eol-style property to source files, so that the line endings are ↵Dean Camera2010-05-081-292/+292
| | | | correctly converted to the target system's native end of line style.
* Software PDI mode breaks unless the software USART has 100 cycles between bits.Dean Camera2010-03-171-5/+4
|
* Revert changes made for the partial port to the AVR32 architecture.Dean Camera2010-02-241-36/+28
|
* Start porting the USB core to the AVR32 UC3B.Dean Camera2010-02-231-28/+36
|
* 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.
* Fixed Pipe_IsEndpointBound() function not taking the endpoint's direction ↵Dean Camera2010-02-011-2/+9
| | | | | | into account. Re-added Pipe_IsEndpointBound() calls to the CDC and RNDIS host class drivers, not that the function has the correct behaviour for devices with bidirectional endpoints.
* 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
|
* Ensure that unsupported SetFeature/ClearFeature request targets cause a ↵Dean Camera2009-12-211-0/+3
| | | | STALL back to the host.
* Un-inline the SendAddress function in NVMTarget.c/.h of the AVRISP project.Dean Camera2009-12-171-5/+5
| | | | Add new HotmailNotifier project, which changes a LED's colour based on the user's unread email count as sent from Windows Live Messenger.
* Added new RNDISHost Host LowLevel demo. Fixed misnamed Pipe_SetPipeToken() ↵Dean Camera2009-11-251-1/+1
| | | | macro for setting a pipe's direction. Fixed CDCHost failing on devices with bidirectional endpoints.
* Fixed broken USB_GetNextDescriptor() function causing the descriptor to jump ↵Dean Camera2009-11-241-1/+1
| | | | | | ahead double the expected amount. Fixed Pipe_IsEndpointBound() not masking the given Endpoint Address against PIPE_EPNUM_MASK.
* Update CDC Class Driver character stream functions to use the correct ↵Dean Camera2009-11-101-10/+10
| | | | | | avr-libc return codes for errors and EOF. Fix pointer arithmetic on void byte buffers by explicitly typecasting the buffer pointers to uint8_t* before altering them.
* Moved USBtoSerial demo the Projects directory, as it is simply an expanded ↵Dean Camera2009-10-181-0/+10
| | | | CDC demo. Added const qualifier to Endpoint/Pipe stream write routines.
* Add const qualifiers to Host mode Class drivers.Dean Camera2009-09-211-1/+1
| | | | Fix KeyboardHost ClassDriver demo; boot protocol keyboard report structure in the Host Mode HID Class driver uses the full keycode array from the attached device.
* Added new Pipe_IsFrozen() macro to determine if the currently selected pipe ↵Dean Camera2009-09-201-1/+1
| | | | | | | | is frozen. Added new USB_GetHIDReportSize() function to the HID report parser to retrieve the size of a given report by its ID. More additions to the unfinished HID Host Class Driver.
* Corrected new Pipe_IsEndpointBound() function.Dean Camera2009-07-261-2/+2
| | | | Completed host CDC class driver enumeration code.
* Added new Pipe_BoundEndpointNumber() and Pipe_IsEndpointBound() functions.Dean Camera2009-07-261-0/+16
|
* Added new USB_DeviceState variable to keep track of the current Device mode ↵Dean Camera2009-07-211-1/+1
| | | | | | | | | | | | 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.
* Fixed PrinterHost demo Printer_GetDeviceID() routine not removing the Device ↵Dean Camera2009-07-201-0/+10
| | | | | | ID string length from the start of the returned array (thanks to John Andrews). Fixed error in new pipe stream function template system not setting the right device token for R/W operations (also thanks to John Andrews).
* Added new EEPROM and FLASH buffer versions of the Endpoint and Pipe stream ↵Dean Camera2009-07-131-311/+59
| | | | 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 const modifiers to device mode class drivers.Dean Camera2009-06-281-0/+200
| | | | | | 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).
* Fixed MassStorage demo not clearing the reset flag when a Mass Storage Reset ↵Dean Camera2009-06-231-2/+1
| | | | is issued while not processing a command.
* Pipe_ConfigurePipe() now automatically defaults IN pipes to accepting ↵Dean Camera2009-06-231-0/+3
| | | | 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-231-0/+10
| | | | | | 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.
* Added new USB_Host_ClearPipeStall() convenience function to clear a stall ↵Dean Camera2009-06-181-1/+1
| | | | | | | | | | 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().
* Converted Host mode demos to schedulerless. Fixed host mode broken due to ↵Dean Camera2009-06-081-2/+2
| | | | earlier Start-of-frame event experiments.
* Commit of new class abstraction APIs for all device demos other than the ↵Dean Camera2009-06-011-4/+2
| | | | | | | | | | 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.
* Create a new function pointer type in StreamCallbacks.h for endpoint/pipe ↵Dean Camera2009-05-151-5/+9
| | | | stream callbacks, to make stream function prototypes clearer.
* More minor renaming of library enums and events to try to create a ↵Dean Camera2009-05-031-10/+10
| | | | consistent API.
* Move the length decrements in the pipe and endpoint stream functions to the ↵Dean Camera2009-04-261-5/+10
| | | | point at which the buffers are operated on, to prevent decrements during iterations where no data is exchanged (thanks to Francisco Moraes).
* USB_HostRequest renamed to USB_ControlRequest, entire control request header ↵Dean Camera2009-04-221-1/+1
| | | | | | | | 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.
* Fixed GenericHIDHost demo report write routine incorrect for control type ↵Dean Camera2009-04-161-23/+42
| | | | | | | | | | | | | | | | | | 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/+3
| | | | driver directory to the HighLevel USB driver directory, where they are more suited.
* Commit for the 090401 release.Dean Camera2009-03-311-2/+2
|
* Updated changelog to reflect recent commit changes.Dean Camera2009-03-031-1/+1
|
* Moved all source to the trunk directory.Dean Camera2009-02-231-0/+258