Commit Graph

555 Commits

Author SHA1 Message Date
Dean Camera c8a438d66c Add structure padding to the appropriate descriptor structures to maintain correct alignments on larger architectures.
Fix EVK1101 swapped joystick Right/Down masks.
2011-03-11 06:47:39 +00:00
Dean Camera 8b13f7f89a Endpoint_ResetFIFO() renamed to Endpoint_ResetEndpoint(), to be consistent with the Pipe_ResetPipe() function name.
Fix undefined error in Pipe_UC3B.h.

Add missing migration notes.
2011-03-05 16:30:57 +00:00
Dean Camera 33a81bffb9 Minor documentation updates. 2011-03-05 10:58:35 +00:00
Dean Camera 8c6f26e19d Add in USB_INT_RegisterHandlers() internal function to register the interrupt handler routines used by LUFA. Add dummy loads after clearing the interrupt lines according to the datasheet.
Add in temporary global interrupts enable/disable macros.
2011-02-28 22:30:40 +00:00
Dean Camera 04526d284d Changed over the AVR8 USB controller interrupt management macros to be inlined functions instead, for better compile-time validity checking and to keep the per-architecture source files as uniform as possible. 2011-02-27 20:00:15 +00:00
Dean Camera cf2411435c Removed Pipe_ClearErrorFlags(), pipe error flags are now automatically cleared when Pipe_ClearError() is called.
More UC3B architecture porting.
2011-02-26 20:22:33 +00:00
Dean Camera 66c38cd940 Added TWI baud rate prescaler and bit length parameters to the TWI_Init() function (thanks to Thomas Herlinghaus). 2011-02-26 15:57:06 +00:00
Dean Camera 6f01b6afd5 More UC3B architecture port updates. 2011-02-26 15:54:11 +00:00
Dean Camera cad5e9ffca Added start of a port of the core USB driver code to the AVR32 UC3B architecture. 2011-02-20 17:53:17 +00:00
Dean Camera f3ec62b5c6 More updates to remove architecture-specific comments from the documentation, alter USBMode.h preprocessor logic to support future architectures more easily. 2011-02-20 14:43:13 +00:00
Dean Camera 5e73190582 Start update of documentation to support possible multiple architectures in the future - alter \file documentation to automatically copy in the module documentation where possible. 2011-02-20 13:08:29 +00:00
Dean Camera 1daa5e16f9 Initial restructuring of the core USB driver module to support multiple architectures in the future. 2011-02-19 22:59:27 +00:00
Dean Camera 3d4d8e7f62 Add new ARCH option to the makefiles to (eventually) specify the target device architecture. Update non-usb peripheral drivers to reflect future multiple architecture support. 2011-02-19 18:37:22 +00:00
Dean Camera 100a197d0e Reduced latency for executing the Start-Of-Frame events (if enabled in the user application). 2011-02-19 12:09:55 +00:00
Dean Camera e4f3d9957e Fix non-ASCII characters breaking LaTex documentation builds. 2011-02-17 22:08:29 +00:00
Dean Camera 4344b0621d Added board driver support for the Sparkfun ATMEGA8U2 breakout board. 2011-02-16 21:00:46 +00:00
Dean Camera 0019fbd129 Add more const-ness to the stream endpoint/pipe functions where possible. 2011-02-13 21:27:24 +00:00
Dean Camera 3d232953d9 Fix typos in the HID class bootloader makefile. 2011-02-11 20:00:48 +00:00
Dean Camera 7d823d926f Update HID bootloader loader application to support the VID/PID used by the bootloader. 2011-02-09 22:35:48 +00:00
Dean Camera cae0fa73d7 Added HID class bootloader, compatible with a modified version of the command line Teensy loader from PJRC.com. 2011-02-09 21:34:00 +00:00
Dean Camera 088bfb10b2 Change bootloader makefiles to automatically compute the bootloader starting address from a flash size and bootloader section size, expressed in KB. 2011-02-09 17:58:21 +00:00
Dean Camera 279e1b6ece Fixed programming errors in the AVRISP-MKII project when the programming packet is a round multiple of the endpoint bank size under avrdude (thanks to Steffan Woltjer). 2011-02-04 18:17:31 +00:00
Dean Camera 73718d7c57 Fixed incorect BUTTONS_BUTTON1 definition for the Minimus board. 2011-02-02 15:31:45 +00:00
Dean Camera 43b9d552bb Renamed all driver termination *_ShutDown() functions to the more logical name *_Disable(). 2011-01-30 23:12:06 +00:00
Dean Camera 43c4735305 Renamed the PRNT_Host_SendString(), CDC_Host_SendString() and CDC_Device_SendString() functions to *_SendData(), and added new versions of the *_SendString() routines that expect a null terminated string instead.
Added new Serial_SendData() function to the Serial driver.
2011-01-30 21:02:31 +00:00
Dean Camera afd828c095 Removed SerialStream module, rolled functionality into the base USART Serial peripheral driver instead through the new Serial_CreateStream() and Serial_CreateBlockingStream() methods.
Renamed the Serial byte send/receive functions to remain consistent with the CDC driver's byte functions.

Altered the serial byte receive function to make it non-blocking.
2011-01-30 19:47:31 +00:00
Dean Camera e6dc951630 Add new HID_DESCRIPTOR_VENDOR() macro, change over all projects and Device ClassDriver demos to use it.
Fix reversed byte ordering of multi-byte HID data.

Added support to the HID parser for extended USAGE items that contain the usage page as well as the usage index.

Removed the HID_IOF_NON_VOLATILE and HID_IOF_VOLATILE flags from HID INPUT items where the flag is invalid. Changed over HID OUTPUT items to use HID_IOF_NON_VOLATILE.

Change over MagStripe project to use HID_DESCRIPTOR_KEYBOARD() for its HID report. Change over MouseHostDevice demo to use HID_DESCRIPTOR_MOUSE() for its HID report.
2011-01-30 14:14:04 +00:00
Dean Camera a852ea8e43 Added new KeyboardMouseMultiReport Device ClassDriver demo.
Fixed ReportID not being removed from the feature/out report data array in the HID class driver when Report IDs are used.

Added new MAX() and MIN() convenience macros.
2011-01-26 21:33:07 +00:00
Dean Camera 6c7ed7ecd6 Added new HID_DESCRIPTOR_MOUSE, HID_DESCRIPTOR_KEYBOARD and HID_DESCRIPTOR_JOYSTICK macros for easy automatic creation of basic USB HID device reports. 2011-01-23 20:02:51 +00:00
Dean Camera 6d67b1df3c Change over Joystick demo HID report descriptor to use USAGE_MINIMUM and USAGE_MAXIMUM when describing the joystick buttons, to allow for easy extension of the number of supported buttons. 2011-01-23 17:41:16 +00:00
Dean Camera 26017b68b0 Changed AVRISP-MKII project to use the Watchdog interrupt for command timeouts, to reduce CPU usage and free timer 0 for other uses in the future. 2011-01-22 17:48:06 +00:00
Dean Camera ef44b8c036 Fixed incorrect definition of the HID_KEYBOARD_SC_RIGHT_ARROW constant in the HID class driver (thanks to Joby Taffey).
Add in newHID_KEYBOARD_SC_POWER keyboard scancode constant.
2011-01-17 23:11:13 +00:00
Dean Camera 47fec03694 Fixed several functions in the Host mode Still Image Class driver returning an error code from the incorrect error code enum (thanks to Daniel Seibert). 2011-01-16 23:13:54 +00:00
Dean Camera 039a714ee4 New HID report item macros (with HID_RI_ prefix) to allow for easy creation and editing of HID report descriptors.
Changed over all project and demo HID report descriptors to use the new HID report item macros.

Moved the HIDParser.c source file to the LUFA/Drivers/USB/Class/Common/ directory from the LUFA/Drivers/USB/Class/Host/.
2011-01-16 19:34:28 +00:00
Dean Camera 32830a2b82 Added new ADC_GET_CHANNEL_MASK() convenience macro to the ADC driver. 2011-01-16 16:13:22 +00:00
Dean Camera 70d55f6e0c Added new high level TWI packet read/write commands, altered behaviour of the TWI_StartTransmission() function.
Spell check source code files.
2011-01-13 22:56:49 +00:00
Dean Camera 7776aa4e2e Changed TempDataLogger project's DS1307 driver to simplify the function interface and prevent a possible race condition. 2011-01-13 19:14:38 +00:00
Dean Camera f555ad7ced Altered all endpoint/pipe stream transfers so that the new BytesProcessed parameter now points to a location where the number of bytes in the transfer that have been completed can be stored (or NULL if entire transaction should be performed in one chunk).
Added new Endpoint_Null_Stream() and Pipe_Null_stream() functions.

Removed the NO_STREAM_CALLBACKS compile time option due to the new partial stream transfer feature replacing it.

Fixed errors in the incomplete Test and Measurement device demo preventing proper operation (thanks to Pavel Plotnikov).
2011-01-10 18:43:34 +00:00
Dean Camera d126146887 The FAST_STREAM_TRANSFERS compile time option has been removed due to lack of use and low cost/benefit ratio.
Add GCC_FORCE_POINTER_ACCESS() macro use to the RingBuffer library header, to attempt to force GCC into producing more efficient code for manipulating the buffers.
2011-01-08 00:54:30 +00:00
Dean Camera 1c74fd78bd Add custom footer to the main library documentation. 2011-01-03 20:37:30 +00:00
Dean Camera a49b5bfd8a Update Doxygen documentation configuration file for the main project documentation to the latest version. Add missing data structure documentation briefs. 2011-01-03 20:13:06 +00:00
Dean Camera b8fd4dd51c Fixed incorrect byte ordering in the Audio_Device_WriteSample24 function (thanks to WZab). 2010-12-31 15:03:57 +00:00
Dean Camera cb9ef559a0 Fixed inverted Minimus board LEDs. 2010-12-28 22:07:31 +00:00
Dean Camera 2073b96d82 Added basic driver example use code to the library documentation.
Made the USARTStream global public and documented in the SerialStream module, allowing for the serial USART stream to be accessed via its handle rather than via the implicit stdout and stdin streams.
2010-12-26 14:25:34 +00:00
Dean Camera 39ac72f2d1 Make a new general RingBuffer.h misc library driver, instead of the per-application LightweightRingBuff.h ring buffers. Change over projects to use the new driver.
Add ORDERED_EP_CONFIG to the device Projects (only) that use only a single class driver, or where the endpoint ordering is fixed, to save on compiled binary size.

Added new GCC_FORCE_POINTER_ACCESS() macro to correct GCC's mishandling of struct pointers.
2010-12-26 13:01:37 +00:00
Dean Camera 12418e6eaf Combined page and word ISP programming mode code in the AVRISP-MKII clone project to reduce compiled size and increase maintainability of the code. 2010-12-25 21:36:17 +00:00
Dean Camera 958b20a8ef Fixed possible programming problem in the AVRISP-MKII clone project when programming specific patterns into a target memory space that is only byte (not page) addressable. 2010-12-25 17:49:30 +00:00
Dean Camera ec537fd84d Re-add in old Endpoint/Pipe workaround for unordered pipes - add new ORDERED_EP_CONFIG compile time option to override the workaround and use the previous behaviour that imposes correct Endpoint/Pipe ordering but produces smaller compiled code. 2010-12-24 17:05:41 +00:00
Dean Camera a57287a59f Fix a few more incorrectly ordered endpoint initialisations in the device demos. 2010-12-17 20:26:14 +00:00
Dean Camera cbafc306b2 Fixed incorrect endpoint initialisation order in the LowLevel DualVirtualSerial demo (thanks to Rick Drolet). 2010-12-17 19:54:03 +00:00