Dean Camera [Fri, 15 Jul 2011 08:46:08 +0000 (08:46 +0000)]
Add missing SVN eol-style property to files where it was missing.
Dean Camera [Fri, 27 May 2011 03:33:40 +0000 (03:33 +0000)]
Merge over trunk changes to the 110528 BETA to form the 110528 release.
Dean Camera [Wed, 13 Apr 2011 07:07:39 +0000 (07:07 +0000)]
Move LUFA-110528 to BETA status for public testing.
Dean Camera [Wed, 13 Apr 2011 06:22:33 +0000 (06:22 +0000)]
Create new tag for the 110528 release (Quality Assurance).
Dean Camera [Wed, 13 Apr 2011 06:12:52 +0000 (06:12 +0000)]
Replace cast-as-char* byte access of multibyte variables with proper shifts and masks to preserve endianness across different architectures.
Dean Camera [Tue, 12 Apr 2011 04:57:47 +0000 (04:57 +0000)]
Slight cleanups to the architecture specific makefile templates to make the common configuration sections as identical as possible.
Dean Camera [Tue, 12 Apr 2011 04:49:36 +0000 (04:49 +0000)]
Update architecture specific makefile templates so that they are as close to one-another as possible.
Dean Camera [Tue, 12 Apr 2011 04:38:53 +0000 (04:38 +0000)]
Add makefile template for the AVR32 UC3 architecture.
Dean Camera [Tue, 12 Apr 2011 03:03:56 +0000 (03:03 +0000)]
Add missing function attributes to the pipe/endpoint functions for all architectures.
Perform endianness correction in the HID report parser for big-endian platforms.
Dean Camera [Sun, 10 Apr 2011 06:43:02 +0000 (06:43 +0000)]
Remove redundant type information for bitfield elements, other than the signed/unsignedness of the element.
Change type of USB_SelectedPipe and USB_SelectedEndpoint for the AVR32 UC3 architecture to uint32_t to reduce the compiled code size.
Dean Camera [Fri, 8 Apr 2011 05:54:56 +0000 (05:54 +0000)]
Create a new Common module documentation group for the new Global Interrupt macros.
Dean Camera [Fri, 8 Apr 2011 05:40:25 +0000 (05:40 +0000)]
Move global interrupt enable/disable functions out to Common.h and document them.
Dean Camera [Fri, 8 Apr 2011 05:05:05 +0000 (05:05 +0000)]
Correct UC3 global interrupt functions.
Replace all calls and references to _delay_ms() in the code with the architecture-agnostic Delay_MS() function.
Improve code generation for the Delay_MS() function on the AVR8 architecture when called with a constant input.
Dean Camera [Fri, 8 Apr 2011 04:49:20 +0000 (04:49 +0000)]
Add in a new common Delay_MS() function, which provides a blocking delay for all architectures.
Remove use of avr-libc specific ATOMIC_BLOCK, replace with a new per-architecture set of inline functions to retrieve and manipulate the global interrupt enable bit for each architecture.
Add in documentation for the USB controller common interrupt routine which must be linked to the interrupt controller in the user application on the AVR32 UC3 architecture.
Dean Camera [Mon, 4 Apr 2011 15:41:26 +0000 (15:41 +0000)]
Oops - fix misnamed function call in Pipe_Discard_Stream().
Dean Camera [Mon, 4 Apr 2011 15:25:30 +0000 (15:25 +0000)]
Oops - fix incorrect variable name in the updated Pipe_Write_8() function.
Dean Camera [Mon, 4 Apr 2011 12:52:30 +0000 (12:52 +0000)]
Renamed all low level Endpoint_Read_*, Endpoint_Write_* and Endpoint_Discard_* functions to use the number of bits instead of a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures.
Renamed all low level Pipe_Read_*, Pipe_Write_* and Pipe_Discard_* functions to use the number of bits instead of a symbolic size (Byte, Word, DWord) so that the function names are applicable and correct across all architectures.
Dean Camera [Mon, 4 Apr 2011 10:24:57 +0000 (10:24 +0000)]
Conditionally add available address spaces to the address space enum, for multiple address space architectures.
Update Doxygen configuration file for the latest Doxygen release.
Minor documentation updates.
Dean Camera [Sun, 27 Mar 2011 22:17:26 +0000 (22:17 +0000)]
Ensure the library builds cleanly in device mode for architectures lacking multiple address spaces.
Dean Camera [Wed, 23 Mar 2011 09:26:41 +0000 (09:26 +0000)]
Use the MIN() macro where possible instead of manual "(x < y) ? x : y" constructs.
Dean Camera [Wed, 23 Mar 2011 09:25:13 +0000 (09:25 +0000)]
Fix corner case in the HID report descriptor Mouse/Joystick tempates at the 8/16 bit boundary.
Dean Camera [Mon, 21 Mar 2011 11:10:02 +0000 (11:10 +0000)]
Add in new architecture attribute defines to selectively remove the EEPROM and FLASH memory space functions on architectures which do not have seperate memory address spaces.
Dean Camera [Mon, 21 Mar 2011 10:20:42 +0000 (10:20 +0000)]
F_CLOCK changed to F_USB to be more descriptive, and applicable on future architecture ports.
Dean Camera [Fri, 18 Mar 2011 04:58:39 +0000 (04:58 +0000)]
Oops - Bootloader optimizations to GetDescriptor() don't work, as the Configuration Descriptor's header does not contain the full length of the descriptor, breaking full enumeration.
Dean Camera [Wed, 16 Mar 2011 22:54:31 +0000 (22:54 +0000)]
Fix bugs in the new VirtualSerialMassStorage demo (thanks to Martin Degelsegger).
Dean Camera [Wed, 16 Mar 2011 06:00:02 +0000 (06:00 +0000)]
Fix incorrectly named include guards in the Board driver header files.
Dean Camera [Wed, 16 Mar 2011 05:58:58 +0000 (05:58 +0000)]
Added new VirtualSerialMassStorage Device Class Driver demo.
Dean Camera [Tue, 15 Mar 2011 09:22:39 +0000 (09:22 +0000)]
Remove redundant Doxygen guards from the internal preprocessor definitions.
Dean Camera [Tue, 15 Mar 2011 08:07:29 +0000 (08:07 +0000)]
Fixed Remote Wakeup broken on the AVRs due to the mechanism only operating when the SUSPI bit is set (thanks to Holger Steinhaus).
Remove redundant setting of UIDE in the AVR8 and AVR32 USB controller drivers.
Dean Camera [Tue, 15 Mar 2011 06:51:50 +0000 (06:51 +0000)]
Add named macros to the board joystick drivers where a shift is needed to maintain unique joystick direction bits in the returned mask value.
Dean Camera [Tue, 15 Mar 2011 06:39:34 +0000 (06:39 +0000)]
Implemented on-demand PLL clock generation for the U4, U6 and U7 series USB AVRs when automatic PLL mode is specified.
Dean Camera [Tue, 15 Mar 2011 04:02:15 +0000 (04:02 +0000)]
Updated the software USART code in the XPLAIN Bridge application so that the incomming bits are sampled at their mid-point instead of starting point, to give maximum reliability (thanks to Anton).
Dean Camera [Mon, 14 Mar 2011 00:24:14 +0000 (00:24 +0000)]
Oops - fix internal serial number extraction routine for the AVR8 architecture.
Dean Camera [Mon, 14 Mar 2011 00:03:30 +0000 (00:03 +0000)]
Correct Endpoint/Pipe maximum constants for the AVR32 UC3 models.
Dean Camera [Sun, 13 Mar 2011 23:32:32 +0000 (23:32 +0000)]
Simplify the internal serial extraction routines for each architecture.
Dean Camera [Sun, 13 Mar 2011 22:42:08 +0000 (22:42 +0000)]
Add experimental support for the AVR32 UC3A4 microcontrollers.
Add support for the inbuilt unique serial numbers in the UC3A3 and UC3A4 models.
Dean Camera [Sun, 13 Mar 2011 22:02:07 +0000 (22:02 +0000)]
Re-add accidentally deleted Host_UC3.c and Host_UC3.h files.
Dean Camera [Sun, 13 Mar 2011 21:53:19 +0000 (21:53 +0000)]
Rename UC3B driver files to UC3, as they are generic to all AVR32 UC3 models.
Dean Camera [Sun, 13 Mar 2011 21:25:05 +0000 (21:25 +0000)]
Add experimental support for the UC3A0, UC3A1 and UC3A3 series AVR32 microcontrollers.
Dean Camera [Sun, 13 Mar 2011 06:05:30 +0000 (06:05 +0000)]
Oops - rename misnamed Endianess.h header file.
Remove UC3B temp macros related to EEPROM, to ensure that projects requiring this break at compile time rather than at runtime until a solution can be found.
Dean Camera [Sun, 13 Mar 2011 05:54:13 +0000 (05:54 +0000)]
Move out endianness management macros into a new common Endianness.h header.
Fix Doxygen documentation, broken due to the added ATTR_PACKED attribute on some structs breaking the Doxygen parser.
Dean Camera [Fri, 11 Mar 2011 07:03:34 +0000 (07:03 +0000)]
Simplify AVR32 UC3B software FIFO, as it will only ever be accessed a byte at a time to prevent data alignment issues.
Dean Camera [Fri, 11 Mar 2011 06:47:39 +0000 (06:47 +0000)]
Add structure padding to the appropriate descriptor structures to maintain correct alignments on larger architectures.
Fix EVK1101 swapped joystick Right/Down masks.
Dean Camera [Sat, 5 Mar 2011 16:36:57 +0000 (16:36 +0000)]
Fix UC3B architecture compile errors and ensure the architecture can be compiled with no special makefile tokens defined.
Dean Camera [Sat, 5 Mar 2011 16:30:57 +0000 (16:30 +0000)]
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.
Dean Camera [Sat, 5 Mar 2011 12:13:35 +0000 (12:13 +0000)]
Add software FIFOs to the UC3B pipe control interfaces, to match the endpoint control interfaces. Fix incorrect endianness for the Endpoint/Pipe read and write routines.
Dean Camera [Sat, 5 Mar 2011 11:34:04 +0000 (11:34 +0000)]
Porting updates for the UC3B architecture - get UC3B partially enumerating using a modified mouse demo on the EVK1101. Implement a software FIFO for the endpoint banks; datasheet hints that this can be done through hardware as on the AVR8 architecture, but the correct method to do this not discovered yet.
Dean Camera [Sat, 5 Mar 2011 10:58:35 +0000 (10:58 +0000)]
Minor documentation updates.
Dean Camera [Thu, 3 Mar 2011 19:32:27 +0000 (19:32 +0000)]
Fixed Still Image Host class driver exiting the descriptor search routine prematurely if the data pipes (but not event pipe) is found.
Fixed missing call to Pipe_SetInfiniteINRequests() in the Pipe_ConfigurePipe() routine.
Dean Camera [Mon, 28 Feb 2011 22:30:40 +0000 (22:30 +0000)]
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.
Dean Camera [Sun, 27 Feb 2011 23:05:46 +0000 (23:05 +0000)]
Fix EVK1101 board joystick driver movement masks.
Dean Camera [Sun, 27 Feb 2011 22:06:31 +0000 (22:06 +0000)]
Add code to start the USBB Generic Clock from the user-specified master clock source (OSCx or PLLx) in the AVR32 UC3B core USB driver.
Dean Camera [Sun, 27 Feb 2011 20:38:47 +0000 (20:38 +0000)]
Oops - ensure that only the relevant/available interrupts are defined and used on each architecture.
Make all USB driver headers include USBMode.h first, to ensure that the relevant USB mode macros are defined.
Dean Camera [Sun, 27 Feb 2011 20:00:15 +0000 (20:00 +0000)]
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.
Dean Camera [Sun, 27 Feb 2011 18:25:29 +0000 (18:25 +0000)]
General cleanup and more port work to the AVR32 UC3B.
Dean Camera [Sun, 27 Feb 2011 15:23:09 +0000 (15:23 +0000)]
Fix USB Host mode compile errors for the UC3B architecture.
Dean Camera [Sun, 27 Feb 2011 14:39:49 +0000 (14:39 +0000)]
Move out common architecture-independent core definitions into the appropriate core dispatch header files.
Dean Camera [Sun, 27 Feb 2011 14:04:29 +0000 (14:04 +0000)]
More AVR32 UC3B architecture ports - USB device mode applications can now be sucessfully compiled, although they will be currently non-functional.
Dean Camera [Sat, 26 Feb 2011 20:22:33 +0000 (20:22 +0000)]
Removed Pipe_ClearErrorFlags(), pipe error flags are now automatically cleared when Pipe_ClearError() is called.
More UC3B architecture porting.
Dean Camera [Sat, 26 Feb 2011 15:57:06 +0000 (15:57 +0000)]
Added TWI baud rate prescaler and bit length parameters to the TWI_Init() function (thanks to Thomas Herlinghaus).
Dean Camera [Sat, 26 Feb 2011 15:54:11 +0000 (15:54 +0000)]
More UC3B architecture port updates.
Dean Camera [Sun, 20 Feb 2011 19:18:06 +0000 (19:18 +0000)]
Update board driver common APIs to use uint_reg_t.
Dean Camera [Sun, 20 Feb 2011 18:27:09 +0000 (18:27 +0000)]
Fix incorrect Doxygen grouping in the incomplete AVR32 UC3B architecture port.
Dean Camera [Sun, 20 Feb 2011 18:23:09 +0000 (18:23 +0000)]
Make sure the peripheral driver .c files include the driver dispatch header, rather than the architecture specific header files.
Dean Camera [Sun, 20 Feb 2011 18:21:04 +0000 (18:21 +0000)]
Rename architecture specific driver files, to make them appear with uniquely identifying filenames in the documentation.
Dean Camera [Sun, 20 Feb 2011 17:53:17 +0000 (17:53 +0000)]
Added start of a port of the core USB driver code to the AVR32 UC3B architecture.
Dean Camera [Sun, 20 Feb 2011 14:43:13 +0000 (14:43 +0000)]
More updates to remove architecture-specific comments from the documentation, alter USBMode.h preprocessor logic to support future architectures more easily.
Dean Camera [Sun, 20 Feb 2011 14:07:20 +0000 (14:07 +0000)]
More Doxygen updates for multiple architecture support.
Dean Camera [Sun, 20 Feb 2011 13:08:29 +0000 (13:08 +0000)]
Start update of documentation to support possible multiple architectures in the future - alter \file documentation to automatically copy in the module documentation where possible.
Dean Camera [Sat, 19 Feb 2011 22:59:27 +0000 (22:59 +0000)]
Initial restructuring of the core USB driver module to support multiple architectures in the future.
Dean Camera [Sat, 19 Feb 2011 18:53:30 +0000 (18:53 +0000)]
Fix documentation glitches from the restructuring changes.
Dean Camera [Sat, 19 Feb 2011 18:45:50 +0000 (18:45 +0000)]
Move out Dataflash IC command constants headers into the general LUFA/Drivers/Misc/ directory rather than duplicating them inside the individual board driver folders.
Dean Camera [Sat, 19 Feb 2011 18:37:22 +0000 (18:37 +0000)]
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.
Dean Camera [Sat, 19 Feb 2011 12:09:55 +0000 (12:09 +0000)]
Reduced latency for executing the Start-Of-Frame events (if enabled in the user application).
Dean Camera [Thu, 17 Feb 2011 22:08:29 +0000 (22:08 +0000)]
Fix non-ASCII characters breaking LaTex documentation builds.
Dean Camera [Wed, 16 Feb 2011 21:00:46 +0000 (21:00 +0000)]
Added board driver support for the Sparkfun ATMEGA8U2 breakout board.
Dean Camera [Tue, 15 Feb 2011 20:32:51 +0000 (20:32 +0000)]
Add missing HID bootloader AVRStudio project.
Dean Camera [Sun, 13 Feb 2011 21:27:24 +0000 (21:27 +0000)]
Add more const-ness to the stream endpoint/pipe functions where possible.
Dean Camera [Sat, 12 Feb 2011 00:08:05 +0000 (00:08 +0000)]
Fix include path in the library RingBuffer.h header file.
Dean Camera [Fri, 11 Feb 2011 20:00:48 +0000 (20:00 +0000)]
Fix typos in the HID class bootloader makefile.
Dean Camera [Thu, 10 Feb 2011 17:55:49 +0000 (17:55 +0000)]
Add static keyword to all project globals whose scope should be restricted to the same module as they are declared in.
Tighten up the HID class bootloader code slightly, document that it currently exceeds 2KB of bootloader space for all models other than the Series 2 USB AVRs.
Dean Camera [Wed, 9 Feb 2011 22:48:31 +0000 (22:48 +0000)]
Fix errors in the hid_bootloader_cli.c program code.
Dean Camera [Wed, 9 Feb 2011 22:35:48 +0000 (22:35 +0000)]
Update HID bootloader loader application to support the VID/PID used by the bootloader.
Dean Camera [Wed, 9 Feb 2011 21:34:00 +0000 (21:34 +0000)]
Added HID class bootloader, compatible with a modified version of the command line Teensy loader from PJRC.com.
Dean Camera [Wed, 9 Feb 2011 18:22:17 +0000 (18:22 +0000)]
Add missing svn:eol-style properties to the new KeyboardMouseMultiReport demo.
Dean Camera [Wed, 9 Feb 2011 17:58:21 +0000 (17:58 +0000)]
Change bootloader makefiles to automatically compute the bootloader starting address from a flash size and bootloader section size, expressed in KB.
Dean Camera [Sun, 6 Feb 2011 18:03:29 +0000 (18:03 +0000)]
Oops - fix missing constants in the TempDataLogger FatFS diskio.h header file.
Add const to all project descriptor definitions for safety.
Dean Camera [Sun, 6 Feb 2011 17:04:39 +0000 (17:04 +0000)]
Tighten up the Bootloader GetDescriptor() function, as the descriptor size can be extracted from the header after the address has been found.
Dean Camera [Sun, 6 Feb 2011 15:17:46 +0000 (15:17 +0000)]
Update projects using FatFS and PetiteFatFS to the latest library versions.
Dean Camera [Sun, 6 Feb 2011 12:18:41 +0000 (12:18 +0000)]
Fix incorrect #include filenames in the RNDIS demos.
Dean Camera [Fri, 4 Feb 2011 18:17:31 +0000 (18:17 +0000)]
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).
Dean Camera [Wed, 2 Feb 2011 15:31:45 +0000 (15:31 +0000)]
Fixed incorect BUTTONS_BUTTON1 definition for the Minimus board.
Dean Camera [Sun, 30 Jan 2011 23:12:06 +0000 (23:12 +0000)]
Renamed all driver termination *_ShutDown() functions to the more logical name *_Disable().
Dean Camera [Sun, 30 Jan 2011 22:42:24 +0000 (22:42 +0000)]
Oops - fix up some calls to the old function names, include Serial Peripheral driver in the RNDISEthernetHost project.
Dean Camera [Sun, 30 Jan 2011 21:02:31 +0000 (21:02 +0000)]
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.
Dean Camera [Sun, 30 Jan 2011 19:47:31 +0000 (19:47 +0000)]
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.
Dean Camera [Sun, 30 Jan 2011 14:40:24 +0000 (14:40 +0000)]
Oops - forgot to add in LOGICAL MINIMUM and LOGICAL MAXIMUM report items into the standard library Joystick HID report descriptor macro. Add in support for joystick resolution reporting via PHYSICAL_MINIMUM and PHYSICAL_MAXIMUM items.
Dean Camera [Sun, 30 Jan 2011 14:14:04 +0000 (14:14 +0000)]
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.
Dean Camera [Wed, 26 Jan 2011 21:33:07 +0000 (21:33 +0000)]
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.
Dean Camera [Sun, 23 Jan 2011 20:02:51 +0000 (20:02 +0000)]
Added new HID_DESCRIPTOR_MOUSE, HID_DESCRIPTOR_KEYBOARD and HID_DESCRIPTOR_JOYSTICK macros for easy automatic creation of basic USB HID device reports.