Commit Graph

746 Commits

Author SHA1 Message Date
Dean Camera 0304916356 Fix XMEGA core USB driver so that device mode enumerates correctly on the host PC. 2011-10-31 02:26:21 +00:00
Dean Camera 1e0c3bc69a Namespace out the internal endpoint globals in the XMEGA architecture. 2011-10-30 14:05:34 +00:00
Dean Camera fe87b8a225 Update ENDPOINT_EPNUM_MASK to be 0x0F, the maximum possible USB endpoint number within a device, rather than just the maximum number for the AVR8 and UC3 targets of 0x07. 2011-10-30 14:04:47 +00:00
Dean Camera 72717825e5 Namespace out the internal endpoint and pipe globals in the UC3 architecture. 2011-10-30 14:03:53 +00:00
Dean Camera b714ffbfa0 Update XMEGA clock management so that the correct 16-bit calibration is used when requested. Fix endpoint descriptor table so that the frame number is stored into the correct location. Add compile time option to source the USB clock from the PLL rather than the internal 32MHz RC oscillator. 2011-10-30 12:06:02 +00:00
Dean Camera ab43251bf9 Minor documentation fixes. 2011-10-30 07:09:44 +00:00
Dean Camera 028a3c4ab3 XMEGA port improvements; connection and disconnection are now detected correctly. Fixed incorrect interrupt priority levels being set for XMEGA devices. 2011-10-30 07:09:20 +00:00
Dean Camera f1543ae8ff Fixed CDC class drivers not saving and sending all 16-bits of the control line states (thanks to Matthew Swabey). 2011-10-26 06:51:07 +00:00
Dean Camera bc14c1a7f6 Update XMEGA platform clock management example code to suit the currently released silicon.
Cleanups to the UC3 endpoint/pipe multi byte read code.
2011-10-25 04:28:22 +00:00
Dean Camera 738c9203fc Fixed ring buffer size limited to 255 elements, instead of the intended 65535 elements. 2011-10-18 11:23:23 +00:00
Dean Camera c15eaa5dae When automatic PLL management mode is enabled on the U4 series AVR8 chips, the PLL is now configured for 48MHz and not a divided 96MHz, to lower power consumption and to keep the system within the datasheet specs for 3.3V operation (thanks to Scott Vitale). 2011-10-12 02:27:22 +00:00
Dean Camera 68e777e16b Prevent written but unused variable warnings on GCC 4.6 with dummy reads. 2011-10-09 12:54:50 +00:00
Dean Camera a4d67bb6ff USB XMEGA support improvements; add DFLL clock platform support, ensure the endpoint table is correctly aligned and configured in the USB controller. 2011-10-07 05:52:35 +00:00
Dean Camera 6553bf5bfb Fix incorrect function call name in USB_Host_SendControlRequest() for AVR8 devices. 2011-10-07 04:38:53 +00:00
Dean Camera 2ae41fb153 Added endian-correction to the CDC driver's Line Encoding control request handlers. 2011-10-07 03:47:42 +00:00
Dean Camera 3bb8055459 Fix compile errors for the USB XMEGA parts when the USB driver is used.
Add core support for the ATXMEGA64A1U.

Minor documentation corrections.
2011-10-04 11:40:55 +00:00
Dean Camera 3223786c49 Fix compile error on the UC3 targets when INTERRUPT_CONTROL_ENDPOINT compile time option is used (thanks to Ian Woloschin).
Small size improvement for Little Endian devices when USB host mode is used.

Minor documentation fixes.
2011-09-28 13:24:08 +00:00
Dean Camera 77dbfd3cc4 Add missing "used" attribute to ATTR_INIT_SECTION to ensure functions declared with that meta-attribute are not discarded by the linker.
Add missing function and definition documentation.
2011-09-22 05:55:32 +00:00
Dean Camera 022fa26b43 Fix missing C++ linkage command in ArchitectureSpecific.h.
Fix missing closing brace in an Endpoint function for the UC3 targets.
2011-09-21 23:40:05 +00:00
Dean Camera b5682f2c44 Add project name to the Doxygen makefile target output. 2011-09-21 06:45:09 +00:00
Dean Camera 99ff27e403 Fixed HID Parser's largest report size bit count not including the size of the last parsed report item.
Fixed HID host driver's largest HID report size count corrupt when the number of report bits exceeds 255.
2011-09-17 13:07:21 +00:00
Dean Camera 4b229cb5ef Fixed optimization error in the HID Parser item value USB_SetHIDReportItemInfo() and USB_GetHIDReportItemInfo() routines if the report item was NULL (which should be allowable according to the API).
Fixed HID Parser CALLBACK_HIDParser_FilterHIDReportItem() callback function not being passed a cacheable report item pointer.
2011-09-07 10:18:49 +00:00
Dean Camera 94e0a0058a Oops - restore conditional calls to USB_USBTask() in the Mass Storage class driver for the non-stream loops. 2011-09-05 22:22:19 +00:00
Dean Camera e64f4b0cd9 Update the TempDataLogger project and driver documentation to use the new TWI_BITLENGTH_FROM_FREQ() macro. 2011-09-02 04:41:43 +00:00
Dean Camera 413438eb23 Add new TWI_BITLENGTH_FROM_FREQ() macro to the AVR8 TWI peripheral driver.
Change Delay_MS() to accept a 16-bit parameter rather than an 8-bit parameter for longer possible delays.

Minor documentation improvements.
2011-09-02 04:38:56 +00:00
Dean Camera 88d022a752 Make TWI_ReadPacket() use a repeated start condition rather than a full bus release/recapture after the read address has been sent.
Fix TWI_ReadPacket() not releasing the bus correctly after all data transferred.

Make TWI_SendByte() and TWI_ReceiveByte() non-inline to reduce compiled binary size.
2011-08-31 07:17:33 +00:00
Dean Camera dc9133ad21 Move documentation for the USB_HOST_TIMEOUT_MS into the HostStandardReq module where it is used. 2011-08-28 03:44:22 +00:00
Dean Camera 3b898ae178 Remove redundant prototype for Audio_Host_StartStopStreaming() and Audio_Host_GetSetEndpointProperty(). Update host mode Audio class inline functions to prevent unused parameter warnings. 2011-08-28 01:40:36 +00:00
Dean Camera a233109909 Renamed USB_Host_ClearPipeStall() to USB_Host_ClearEndpointStall() as the function works on an endpoint address within the attached device, and not a Pipe within the host.
Updated MS_Host_ResetMSInterface() to now perform a full Mass Storage reset sequence to prevent data corruption in the event of a device lock up or timeout (thanks to David Lyons).

Add parenthesis around the library Endianness macros that do nothing on a particular architecture to prevent operator precedence issues depending on usage.

Minor documentation corrections.
2011-08-24 09:50:21 +00:00
Dean Camera cff190b8f4 Minor documentation fixes.
Add extra parenthesis around terms in the common MIN() and MAX() macros to prevent issues with non-trivial macro inputs (thanks to David Lyons).
2011-08-23 10:39:04 +00:00
Dean Camera 2d9f98b592 Add multiple axis support to the HID joystick report in the HID_DESCRIPTOR_JOYSTICK() macro. 2011-08-23 07:07:34 +00:00
Dean Camera d0ac8e46f9 Renamed the JTAG_DEBUG_ASSERT() macro to JTAG_ASSERT().
Changed the reports in the GenericHID device demos to control the board LEDs, to reduce user confusion over the callback routines.

Fixed swapped TWI_ADDRESS_READ and TWI_ADDRESS_WRITE values.

Fixed TWI_ReadPacket() not releasing the TWI bus on read completion.
2011-08-22 13:03:56 +00:00
Dean Camera af725dd418 Fix TWI peripheral driver example code in the library documentation. 2011-08-19 04:11:38 +00:00
Dean Camera 9708b45e69 Minor documentation corrections. 2011-08-17 14:51:05 +00:00
Dean Camera ddae47979d Update LUFAConfig.h with missing options for the AVR32 target.
Add Binary Page Mode fuse command bytes to the AT45DB642D.h Dataflash header.
2011-08-04 05:32:17 +00:00
Dean Camera 40728fd20d Remove redundant calls to USB_USBTask() in the Mass Storage Device Class driver when INTERRUPT_CONTROL_ENDPOINT is not used, as this is done inside the stream callbacks.
Fix implementations of Endpoint_SetEndpointDirection() and Endpoint_GetEndpointDirection() for the AVR8 architecture.
2011-07-29 08:12:00 +00:00
Dean Camera d5e874d348 Add INTERRUPT_CONTROL_ENDPOINT compile time option support for the UC3 devices. 2011-07-25 09:56:21 +00:00
Dean Camera 5c274d106b Fixed USB_USBTask not being called internally in stream transfers between packets when Partial Stream Transfers are used.
Remove old unused function prototype in the LowLevel MassStorage device demo.
2011-07-25 01:11:24 +00:00
Dean Camera 110711598a Removed the ENDPOINT_DESCRIPTOR_DIR_* macros in favour of the shorter ENDPOINT_DIR_* macros, which can now be used with both Endpoint_ConfigureEndpoint() and in the device descriptors. 2011-07-19 07:02:19 +00:00
Dean Camera 2c404e5af5 Add support for the ORDERED_EP_CONFIG compile time token on the UC3 architecture. 2011-07-19 02:42:27 +00:00
Dean Camera 69243c5071 Move out the EP_TYPE_* macros to the base USBController.h header, as these are used in the device descriptors as well and thus must not be changed. 2011-07-19 02:15:36 +00:00
Dean Camera 69ab85cbc0 More USB XMEGA porting for Endpoint control. 2011-07-18 07:03:47 +00:00
Dean Camera 0c2ad9eb34 Add missing SVN eol-style property to files where it was missing. 2011-07-15 08:46:08 +00:00
Dean Camera a36012fc4b Add option to the USB XMEGAs to set the USB bus interrupt priority level. 2011-07-15 08:29:25 +00:00
Dean Camera f07e766755 Complete USB XMEGA interrupt control subsystem code in the core USB driver.
Automatically load in the USB calibration bytes from the User Signature Row on start-up.

Create internal SRAM variable for the endpoint control and status register table, used by the XMEGA USB controller hardware.
2011-07-15 08:10:51 +00:00
Dean Camera ffa8b430c1 Complete initial revision of the XMEGA Clock Management platform driver.
Start the USB clock source generator inside USB_ResetInterface() for XMEGA devices.
2011-07-14 11:31:12 +00:00
Dean Camera 77a9df36a7 Update UC3 platform driver support to use the bitmasks defined in the header files over raw constants.
Start implementation of XMEGA platform drivers.
2011-07-14 08:30:33 +00:00
Dean Camera b971dbbce8 More XMEGA USB AVR device port work - re-add missing Endpoint stream functions, remove unnecessary internal functions. 2011-07-14 07:28:32 +00:00
Dean Camera 8629e1918c Implementation of several key core USB driver functions for the new USB XMEGA devices. 2011-07-14 07:19:30 +00:00
Dean Camera 6490d1c443 Correct the maximum banks per endpoint information macros for the UC3A3 and UC3A4 devices. 2011-07-14 07:18:31 +00:00