aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/LowLevel/Pipe.h
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* Spell check all source code variables, comments and strings.Dean Camera2009-11-091-1/+1
|
* Add double banking property to LUFA powered projects in the Projects ↵Dean Camera2009-11-061-6/+6
| | | | directory. Add guards to macro parameters to ensure that formulas passed as parameters don't mess up the internal macro structure.
* Moved USBtoSerial demo the Projects directory, as it is simply an expanded ↵Dean Camera2009-10-181-6/+6
| | | | CDC demo. Added const qualifier to Endpoint/Pipe stream write routines.
* Minor documentation fixups.Dean Camera2009-10-031-13/+13
|
* Removed mostly useless "TestApp" demo, as it was mainly useful only for ↵Dean Camera2009-09-301-1/+1
| | | | | | | | checking for sytax errors in the library. MIDI device demos now receive MIDI events from the host and display note ON messages via the board LEDs. Added beginnings of a MIDI class bootloader.
* Doxygen fixes to \param directives to give data direction in all projects. ↵Dean Camera2009-09-241-1/+1
| | | | Make HID item filtering routines clearer in the HID WithParser demos.
* 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-0/+8
| | | | | | | | 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.
* Add StillImage Host Class Driver functions for opening and closing sessions. ↵Dean Camera2009-09-021-1/+1
| | | | | | Ensure IsActive is set on the interface to allow device functions to run. Fix spelling of "Received" in all source files where it is misspelt "Recieved".
* Oops: Really disable building of Projects/Host/ClassDriver directory in the ↵Dean Camera2009-08-261-4/+8
| | | | | | | | Projects/Host/ makefile. Add more skeleton functions and definitions to the Mass Storage Host mode Class driver. Made Endpoint_Write_DWord_* functions echo the structure of the matching Endpoint routines for clarity.
* Optimized Endpoint_Read_Word_* and Pipe_Read_Word_* macros to reduce ↵Dean Camera2009-08-251-8/+16
| | | | | | compiled size. Fixed Programmer's Notepad project file to reflect new location of AVRISP project.
* Add LOAD ADDRESS command parsing to the V2 Protocol hander in the AVRISP ↵Dean Camera2009-08-201-10/+10
| | | | | | project. Fix up references to functions in the Endpoint/Pipe documentation.
* Added new Pipe_BoundEndpointNumber() and Pipe_IsEndpointBound() functions.Dean Camera2009-07-261-3/+21
|
* Move unfinished SideShow source files to nested Lib directory for clarity.Dean Camera2009-07-201-5/+0
|
* Fixed incorrect PIPE_EPNUM_MASK mask causing pipe failures on devices with ↵Dean Camera2009-07-191-1/+1
| | | | endpoint addresses of 8 and above (thanks to John Andrews).
* 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-131-54/+132
| | | | 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-25/+25
| | | | | | 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).
* Pipe_ConfigurePipe() now automatically defaults IN pipes to accepting ↵Dean Camera2009-06-231-1/+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-1/+18
| | | | | | 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().
* Pipe_GetErrorFlags() now returns additional error flags for overflow and ↵Dean Camera2009-06-161-1/+10
| | | | | | 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.
* USB_IsConnected is now cleared before the USB_Disconnect() event is fired in ↵Dean Camera2009-05-191-1/+5
| | | | | | response to VBUS being removed. Minor documentation improvements.
* Rewritten event system to remove all macros, to make user code clearer.Dean Camera2009-05-181-15/+15
| | | | | | | | 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.
* Create a new function pointer type in StreamCallbacks.h for endpoint/pipe ↵Dean Camera2009-05-151-5/+5
| | | | stream callbacks, to make stream function prototypes clearer.
* Removed all user pipe/endpoint interrupt APIs, added internal library ↵Dean Camera2009-05-141-56/+0
| | | | support for interrupt driven control endpoints when in device mode by defining INTERRUPT_CONTROL_ENDPOINT token and passing it to the compiler via the -D switch.
* Fixed Mouse and Keyboard device demos not acting in accordance with the HID ↵Dean Camera2009-05-121-36/+0
| | | | | | specification for idle periods (thanks to Brian Dickman). Removed support for endpoint/pipe non-control interrupts; these did not act in the way users expected, and had many subtle issues.
* Changed PIPE_CONTROLPIPE_DEFAULT_SIZE from 8 to 64 to try to prevent ↵Dean Camera2009-05-041-1/+5
| | | | | | 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.
* More minor renaming of library enums and events to try to create a ↵Dean Camera2009-05-031-12/+12
| | | | consistent API.
* Documentation enhancements to improve documentation cross-references.Dean Camera2009-04-221-42/+41
|
* USB_HostRequest renamed to USB_ControlRequest, entire control request header ↵Dean Camera2009-04-221-0/+2
| | | | | | | | 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.
* Removed specialized Endpoint_ClearControl* and Pipe_ClearControl* macros in ↵Dean Camera2009-04-211-33/+3
| | | | favour of the standard Endpoint_Clear* and Pipe_Clear* macros (Atmel have confirmed no effect from setting FIFOCON on control endpoints).
* Changed over all deprecated GCC structure tag initializers to the ↵Dean Camera2009-04-201-4/+2
| | | | standardized C99 format (thanks to Mike Alexander).
* Fixed incorrect HID interface class and subclass values in the Mouse and ↵Dean Camera2009-04-191-3/+3
| | | | | | | | KeyboardMouse demos (thanks to Brian Dickman). Capitolised the "Descriptor_Search" and "Descriptor_Search_Comp" prefixes of the values in the DSearch_Return_ErrorCodes_t and DSearch_Comp_Return_ErrorCodes_t enums. Minor documentation improvements.
* More documentation changes for better module-level documentation rather than ↵Dean Camera2009-04-171-10/+8
| | | | file-level documentation.
* Partial commit: change references to Drivers/AT90USBXXX to Drivers/Peripheral.Dean Camera2009-04-161-5/+10
|
* Fixed GenericHIDHost demo report write routine incorrect for control type ↵Dean Camera2009-04-161-188/+409
| | | | | | | | | | | | | | | | | | 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.
* Removed all binary constants and replaced with decimal or hexadecimal ↵Dean Camera2009-04-051-3/+3
| | | | constants so that unpatched GCC compilers can still build the code without having to be itself patched and recompiled first.
* 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.
* All comments in the library, bootloaders, demos and projects have now been ↵Dean Camera2009-04-011-22/+22
| | | | spell-checked and spelling mistakes/typos corrected.
* Fixed USBTask.h not conditionally including HostChapter9.h only when ↵Dean Camera2009-03-261-1/+2
| | | | CAN_BE_DEVICE is defined (thanks to Ian Gregg).
* Added extra output to makefiles to indicate the currently selected BOARD ↵Dean Camera2009-03-161-2/+2
| | | | parameter.
* Fixed incorrect/missing control status stage transfers on demos, bootloaders ↵Dean Camera2009-03-101-2/+2
| | | | and applications (thanks to Nate Lawson).
* Updated makefiles to reflect new dfu-ee programming target invocations ↵Dean Camera2009-03-041-78/+87
| | | | | | | | | | (supplied by Opendous, Inc.). Renamed the ATTR_ALWAYSINLINE function attribute macro to ATTR_ALWAYS_INLINE to match the style of the other function attribute macro names. Added ATTR_ALWAYS_INLINE attribute to several inlined library functions, to ensure they are inlined in all circumstances. Cleanups to Endpoint.h and Pipe.h. Added better documentation for the endpoint and pipe interrupts.
* Moved all source to the trunk directory.Dean Camera2009-02-231-0/+788