Commit Graph

66 Commits

Author SHA1 Message Date
Dean Camera ed9d77aeee Refactored Host mode Class Driver *_Host_ConfigurePipes() routines to be more space efficient when compiled.
Added new *_ENUMERROR_PipeConfigurationFailed error codes for the *_Host_ConfigurePipes() routines.
2010-12-02 01:56:06 +00:00
Dean Camera cb779e3d7d Changed over www.fourwalledcubicle.com links to the new www.lufa-lib.org redirect domain, including the new aliased links for LUFA-related pages such as the various download/source control mirrors and support lists. 2010-10-28 06:08:58 +00:00
Dean Camera 55538dcef3 Add descriptor class, subclass and protocol constants to the class drivers, modify all demos to use them where possible.
Move out private/internal host class driver constants to the common class driver headers, so that they can be used in the Low Level host mode demos.

Ensure all demos, projects and bootloaders use the class driver constants where possible to minimise code repetition.
2010-10-25 12:42:55 +00:00
Dean Camera b37d77eab3 All USB class drivers are now automatically included when LUFA/Drivers/USB.h is included, and no longer need to be seperately included.
All LowLevel demos changed to use the constants and types defined in the USB class drivers.
2010-10-24 22:53:57 +00:00
Dean Camera 5a4def7478 Clean up excessive whitespace at the end of each line using the wspurify tool made by Laszlo Monda 2010-10-13 14:05:35 +00:00
Dean Camera a8871c7fba Fixed MIDI_Host_Flush() not aborting early when the specified MIDI host interface was not configured.
Small documentation improvements to explicitly reference tokens in Doxygen, to ensure that they are converted to cross-reference links in the output files.
2010-10-12 13:52:06 +00:00
Dean Camera 7166c7ba3e Fix low level host mode demos not correctly fetching the next endpoint when an invalid interface is discarded.
Update the pipe configuration routines in the host mode class drivers so that they use the same new code to enumerate compatible devices to increase reliability. Add support to the host mode class drivers for non-sequential (but non-overlapping with other interface) pipe numbers.
2010-09-30 07:56:47 +00:00
Dean Camera c0e4f52e8f Fix up incorrect version numbers in demo/project descriptors.
Add class name prefixes to missed constants in the class drivers to give all class driver elements a consistent namespace.
2010-09-28 14:59:16 +00:00
Dean Camera 4c49ee6885 Whitespace corrections. 2010-09-09 13:33:00 +00:00
Dean Camera ff09cf9c73 Fix XPLAINBridge project discarding characters from the USB interface due to a double read from the endpoint.
Make XPLAINBridge and USBtoSerial projects more reliable by forcing a flush if the UART-to-USB buffer becomes nearly full.

Reduce locking in the LightweightRingBuffer.h header files by only locking on the update of the buffer count, and require insertions and removals from each buffer to occur in only one execution thread.

Fix CDC_*_ReceiveByte() returning 0 when the interface is not configured, instead of the new -1 error value.

Fix CDC_Host_ReceiveByte() not re-freezing the pipe if no packet has been received.

Remove redundant Pipe token set commands in the CDC and RNDIS host class drivers.
2010-08-01 14:03:13 +00:00
Dean Camera 24e621a8d8 Altered the CDC Deivice and Host Class drivers' receive byte routines, so that no data is indicated by a negative return value.
Added auto flushing of OUT data to the CDC Host Class driver's USBTask function to automatically flush the send pipe buffer.
2010-07-30 03:52:11 +00:00
Dean Camera 97143bf814 Add missing const qualifiers to class drivers.
Indent core library function parameters so that there is only one parameter per line, to increase readability.
2010-07-21 14:00:51 +00:00
Dean Camera 6b5e684c77 Update makefiles to use the latest WinAVR/Atmel toolchain makefile template.
Add new module source variables to the library core makefile, so that module sources can be added to a project's makefile on a per-module rather than per-file basis.
2010-07-19 14:00:44 +00:00
Dean Camera 0313034245 Added const attributes to some of the class driver function parameters that were missing it. 2010-07-13 10:01:13 +00:00
Dean Camera deed746d37 Renamed SERIAL_STREAM_ASSERT() macro to STDOUT_ASSERT().
Minor tweaks to the library documentation.
2010-06-17 08:15:58 +00:00
Dean Camera 711542ee89 Spell check code and manual pages. Remove custom Doxygen CSS stylesheet, as the new 1.7 Doxygen's default stylesheet is much better. 2010-06-16 11:01:01 +00:00
Dean Camera a14ece5f57 Change over Doxygen \note documentation to \pre where applicable. 2010-06-15 03:34:55 +00:00
Dean Camera 5ce3f0b17b Add missing ATTR_NON_NULL_PTR_ARG and ATTR_ALWAYS_INLINE attributes to class driver functions. 2010-06-08 11:14:07 +00:00
Dean Camera fc92f9969c Minor documentation cleanups. 2010-06-03 15:32:45 +00:00
Dean Camera 328ed71ce7 Fix spacing of the function parameter descriptions in the Doxygen documentation. 2010-05-29 08:08:26 +00:00
Dean Camera 05ac59d0ee Add new ReportType parameter to the HID class driver device callback and host report sending routines.
Renamed internal Host mode Class driver descriptor comparator callback routines so that they all start with a uniform DCOMP_{Class Abbreviation}_ prefix.
2010-05-09 06:01:01 +00:00
Dean Camera 071e02c6b6 Add svn:eol-style property to source files, so that the line endings are correctly converted to the target system's native end of line style. 2010-05-08 03:12:14 +00:00
Dean Camera 842e219bf3 Added new EVENT_CDC_Device_BreakSent() event and CDC_Host_SendBreak() function to the Device and Host CDC Class drivers. 2010-05-06 11:56:34 +00:00
Dean Camera 9257f4ab8e Add briefs for the library core structures. 2010-03-29 13:32:36 +00:00
Dean Camera 0557676013 Add file-level brief documentation.
Remove accidentally duplicated model-specific peripheral driver files.
2010-03-29 07:49:58 +00:00
Dean Camera d49cc0f783 Add more include protection macros to give the user warnings when they try to manually include private driver header files, instead of the public driver headers. 2010-02-11 04:05:02 +00:00
Dean Camera 7ae91099e9 Fix AVRISP-MKII clone project's TPI Chip Erase command processing - ensure erase location is the high byte in the given address space, check NVMBUSY for completion rather than the NVM Bus Enable bit.
Change If-Else chains over to switch statements in XPROGProtocol.c for clarity.
2010-02-08 03:16:09 +00:00
Dean Camera 431db89b00 Fixed CDC and RNDIS host demos and class drivers - bidirectional endpoints should use two seperate pipes, not one half-duplex pipe. 2010-01-25 11:50:41 +00:00
Dean Camera d97db1120b Added support to the MIDI Class drivers for packed data, where multiple MIDI events are packed into a single USB packet. Added new MIDI Class driver flush routines to override packing behaviour. 2010-01-05 13:52:34 +00:00
Dean Camera 6122ba93cf Fix MassStorageKeyboard demo USE_INTERNAL_SERIAL check being performed before the required library headers were included, causing a compilation error.
Added notes to the class driver functions indicating which functions require what Device/Host state machine states to function.
2010-01-04 13:34:02 +00:00
Dean Camera 7f9f97c792 Update copyright year to 2010. 2009-12-30 23:49:19 +00:00
Dean Camera d4ca7fb44c Fix MIT license language to make its intent clearer. 2009-12-28 00:34:20 +00:00
Dean Camera 1b2cd16976 Added CDC_Host_Flush() function to the CDC Host Class driver to flush sent data to the attached device. 2009-11-30 02:20:26 +00:00
Dean Camera 414b92e812 Add to the existing CDC Class Driver's CreateStream() function documentation to explicitly state that the created streams are bidirectional. 2009-11-29 05:19:41 +00:00
Dean Camera 5aa2b26261 Added new RNDIS Host class driver and the beginnings of a RNDISEthernetHost Class Driver demo.
Fixed all Class drivers to ensure they have appropriate guards on each function to ensure the device is enumerated before running, fixed error codes on all guards to return "DeviceDisconnected" where possble.

Renamed HOST_SENDCONTROL_DeviceDisconnect enum value to HOST_SENDCONTROL_DeviceDisconnected to be in line with the rest of the library enum error codes.
2009-11-26 04:46:31 +00:00
Dean Camera 8c6c27d88b Added new RNDISHost Host LowLevel demo. Fixed misnamed Pipe_SetPipeToken() macro for setting a pipe's direction. Fixed CDCHost failing on devices with bidirectional endpoints. 2009-11-25 03:26:57 +00:00
Dean Camera d753512cca Fix doxygen documentation - doxygen was getting confused on the variable-length ATTR_NON_NULL_PTR_ARG() macro used on function prototypes and was generating many return types for several functions in the documentation (thanks to David Lyons). 2009-11-17 11:28:07 +00:00
Dean Camera 652042111c Add blocking versions of the CDC Class driver streams, for applications requiring blocking reads. 2009-11-12 12:47:15 +00:00
Dean Camera c1782ac024 Added new stream creation function to the CDC Class drivers, to easily make standard streams from CDC Class driver instances. 2009-11-10 06:22:03 +00:00
Dean Camera 64e5c4084f Add optional pipe double banking support to the Host mode Class drivers.
Descriptor processing routines now pass around void pointers rather than uint8_t pointers, as their destination datatype is know well known -- they are just streams of bytes until they are cast to the correct destination type by DESCRIPTOR_CAST.
2009-11-07 03:51:24 +00:00
Dean Camera 8ba51f090f Added new Printer Host mode Class driver.
Added new Printer Host mode ClassDriver demo.

Added table of supported classes and modes to the main USB Class Driver documentation.
2009-11-04 13:16:53 +00:00
Dean Camera 870591983c Add const attribute to class driver APIs.
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.
2009-11-03 02:06:13 +00:00
Dean Camera 9d6a373cb6 Add const qualifiers to Host mode Class drivers.
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.
2009-09-21 06:08:39 +00:00
Dean Camera 7c6b2019a3 Fix Mass Storage Host Class driver GetMaxLUN command - incorrect function return codes used in comparison to check for success.
Add HID Host Class driver functions to set the report protocol, add more class driver documentation.
2009-09-17 13:12:21 +00:00
Dean Camera 6783bc4594 Add StillImage Host Class Driver functions for opening and closing sessions. 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".
2009-09-02 13:08:55 +00:00
Dean Camera dac7b046fd Add return codes to the CDC Host Class driver String/Byte transmission functions. 2009-08-31 13:58:03 +00:00
Dean Camera 3dce79d68c Added start of the Still Image Host Class driver demo and driver code.
Re-enabled building of the Host mode demos ClassDriver directory.
2009-08-30 11:36:04 +00:00
Dean Camera 8ea5c631c8 Minor documentation fixes to the completed Host mode Class drivers. 2009-08-27 06:32:12 +00:00
Dean Camera ee744abb7e More work on the Mass Storage Host mode Class driver.
Added  ATTR_NON_NULL_PTR_ARG() attributes to the class drivers to improve user code reliability by disallowing explicit NULL pointers as pointer parameters in function calls where the parameter must not be NULL.

Disabled building of the Demos/Host/ClassDriver directory until Host Mode Class drivers are complete to prevent build errors in the meantime.
2009-08-26 07:01:32 +00:00
Dean Camera a7ade9f28d Add CDC Host class driver EVENT_CDC_Host_ControLineStateChanged() event.
Minor documentation fixes.
2009-08-11 10:02:50 +00:00