Commit Graph

129 Commits

Author SHA1 Message Date
Dean Camera 7b79325aa0 Removed two-step endpoint/pipe bank clear and switch sequence for smaller, faster endpoint/pipe code.
Added spacing between multiple paragraphs in Doxygen \note sections.

Removed call to the clock prescaler reset function in the Teensy bootloader to save space - the user application is accessed via a watchdog reset anyway, so the prescale reset would only affect the speed of the bootloader itself.
2010-04-13 23:29:11 +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 74353374c3 All Class Driver Host mode demos now correctly set the board LEDs to READY once the enumeration process has completed.
Fixed Still Image Host class driver not resetting the transaction ID when a new session is opened, fixed driver not sending a valid session ID to the device.
2010-03-25 06:34:38 +00:00
Dean Camera c2de01b661 Fixed incorrect definition of HID_ALIGN_DATA() causing incorrect HID report item data alignment. 2010-03-24 05:58:20 +00:00
Dean Camera f79f9abd28 Fixed compilation error in the AudioInput demos when MICROPHONE_BIASED_TO_HALF_RAIL is defined (thanks to C. Scott Ananian).
Minor documentation cleanups.

Make sure HID class driver uses properly cast pointers when writing to the report buffer.
2010-03-24 05:50:09 +00:00
Dean Camera 012628f635 Turn OFF double banking in the Webserver demo - leaving it on seems to destroy the system throughput. 2010-02-18 05:10:24 +00:00
Dean Camera 67cb070810 Fix HID Host Class driver sending incorrect ReportType values to the device when issuing requests via the control pipe. 2010-02-14 22:13:11 +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 35a0fe9384 Fixed USB_GetHIDReportSize() returning the number of bits in the specified report instead of bytes.
Moved the USB_GetHIDReportItemInfo() calls into the main report item passing loop in the *HostWithParser demos - it is fast enough not to effect performance, and avoids duplicate code.

Make Webserver project report the LUFA version as part of the HTTP header.
2010-02-09 12:30:51 +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 b6a4584a19 Fixed Pipe_IsEndpointBound() function not taking the endpoint's direction 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.
2010-02-01 01:27:00 +00:00
Dean Camera d26a9ed5fd Be doubly-certain that the incomming CDC class driver's endpoint/pipe is flushed only once when the bank is empty. 2010-01-28 06:37:26 +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 74b6993d66 Cleanup and partially fix AVRISP-MKII project's TPI programming support. 2010-01-25 04:13:44 +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 60e9641222 Inline USB management functions in the Class drivers which are standardized but currently unused, to prevent them from using up unneccesary cycles and flash in the user application. 2010-01-05 04:50:18 +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 1e1cf2c499 Fix CDC blocking streams in Host mode locking up when the device is removed. 2010-01-04 00:33:31 +00:00
Dean Camera 58a39c6666 Clean up MassStorageKeyboard demo. 2010-01-03 03:48:40 +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 c3758ac5ef Un-inline the SendAddress function in NVMTarget.c/.h of the AVRISP project.
Add new HotmailNotifier project, which changes a LED's colour based on the user's unread email count as sent from Windows Live Messenger.
2009-12-17 10:02:19 +00:00
Dean Camera 108a22a66a The SImage_Host_SendBlockHeader() and SImage_Host_ReceiveBlockHeader() Still Image Host Class driver functions are now public. 2009-12-16 04:03:08 +00:00
Dean Camera 79efd8c79e Fix a bug in the Still Image Host Class driver where the returned block status code was being truncated.
Add programming support to the AVRISP project's PDI programming mode; paged memory writes are not currently functional.
2009-12-15 05:17:52 +00:00
Dean Camera 6648234157 Test with -Wextra, fix library warnings due to unused function parameters. 2009-12-13 14:43:34 +00:00
Dean Camera 3705330dd3 Use -pedantic compile time option to find and correct several minor code errors. 2009-12-13 14:09:25 +00:00
Dean Camera 7ace314cc1 Increase timeout of Mass Storage and Still Image host commands to 10 seconds (up from 5) to account for slow-processing devices.
Added brace guards to macros with parameters to prevent unintended changed evaluation of the macro expression.

Minor code cleanups (remove redundant comments, fix spacing, etc.).
2009-12-09 00:50:55 +00:00
Dean Camera c49bdcb7c9 Fixed Mass Storage Host Class driver and Low Level demo not clearing the error condition if an attached device returns a STALL to a GET MAX LUN request (thanks to Martin Luxen). 2009-12-04 09:08:48 +00:00
Dean Camera 7e86387958 Fix double oops -- Host mode settle delay was still being ignored due to 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. 2009-12-04 02:06:38 +00:00
Dean Camera d6e3259f8b Fix incorrect const'ness of the ReportItem parameter in USB_SetHIDReportItemInfo(). 2009-12-04 01:09:39 +00:00
Dean Camera 2919aeeaab Fixed HID Parser not distributing the Usage Min and Usage Max values across an array of report items.
Added new HID_ALIGN_DATA() macro to return the pre-retrieved value of a HID report item, left-aligned to a given datatype.

Added new PreviousValue to the HID Report Parser report item structure, for easy monitoring of previous report item values.
2009-12-04 01:06:26 +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 5e46801096 Complete RNDIS Host Class driver code - add SendPacket function.
Correct CDC Host Class driver token handling for sending data on bidirectional data endpoints.
2009-11-26 11:40:15 +00:00
Dean Camera f6de4db000 Remove documentation of deleted parameters from the RNDIS Host Class driver's device Initialize function. 2009-11-26 05:08:00 +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 ab602a8b48 Fix typo in the StillImageHost LowLevel demo, and the CDC Host Class Driver. 2009-11-25 04:23:40 +00:00
Dean Camera 50f4a3b625 Fix build and Doxygen errors. 2009-11-25 03:56:51 +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 702bec892d Fixed misnamed SI_Host_USBTask() and SI_Host_ConfigurePipes() functions. 2009-11-23 13:35:52 +00:00
Dean Camera aaa0bed556 The incomplete StandaloneProgrammer project now uses Host and Device Mass storage classes, so that program data can either be loaded onto the device's Dataflash storage, or read off an attached USB memory stick.
The USB target family and allowable USB mode tokens are now public and documented (USB_CAN_BE_*, USB_SERIES_*_AVR).

The SCSI_Request_Sense_Response_t and SCSI_Inquiry_Response_t type defines are now part of the Mass Storage Class driver common defines, rather than being defined in the Host mode Class driver section only.

The USB_MODE_HOST token is now defined even when host mode is not available.

Added missing CDC_Host_CreateBlockingStream() function code to the CDC Host Class driver.
2009-11-23 12:40:14 +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 6a46f0025a Add beginnings of a RNDIS Ethernet Host demo. 2009-11-12 10:43:07 +00:00
Dean Camera 5de364163f Update CDC Class Driver character stream functions to use the correct 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.
2009-11-10 11:24: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 d6edfe35c8 Spell check all source code variables, comments and strings. 2009-11-09 13:15:28 +00:00
Dean Camera 8bb007f80b Fixed HID host Class driver report send/receive report broken when issued through the control pipe.
Make Mass Storage device Class driver accept resets at any time, rather than just after a command block has been processed.

Remove the HID device parser from the boot protocol Keyboard/Mouse demos.
2009-11-09 08:24:01 +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