aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/HighLevel
Commit message (Collapse)AuthorAgeFilesLines
* Oops - wrong casting on the Configuration Descriptor pointer advance routine.Dean Camera2009-12-131-1/+1
|
* Use -pedantic compile time option to find and correct several minor code errors.Dean Camera2009-12-131-1/+1
|
* Increase timeout of Mass Storage and Still Image host commands to 10 seconds ↵Dean Camera2009-12-092-7/+9
| | | | | | | | (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.).
* Added CDC_Host_Flush() function to the CDC Host Class driver to flush sent ↵Dean Camera2009-11-301-0/+1
| | | | data to the attached device.
* Fixed USB driver failing to define the PLL prescaler mask for the ATMEGA8U2 ↵Dean Camera2009-11-291-11/+11
| | | | | | and ATMEGA16U2. Simplified the USB.h master include file's target validity checks.
* Added new XPLAIN serial Bridge project (thanks to John Steggall for the ↵Dean Camera2009-11-251-1/+1
| | | | software UART code).
* Fixed broken USB_GetNextDescriptor() function causing the descriptor to jump ↵Dean Camera2009-11-241-3/+3
| | | | | | ahead double the expected amount. Fixed Pipe_IsEndpointBound() not masking the given Endpoint Address against PIPE_EPNUM_MASK.
* Fixed misnamed SI_Host_USBTask() and SI_Host_ConfigurePipes() functions.Dean Camera2009-11-231-1/+1
|
* The incomplete StandaloneProgrammer project now uses Host and Device Mass ↵Dean Camera2009-11-231-2/+51
| | | | | | | | | | | | 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.
* Fix doxygen documentation - doxygen was getting confused on the ↵Dean Camera2009-11-171-5/+5
| | | | 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).
* Fixed HOST_STATE_AS_GPIOR being ignored whilst in Host mode (thanks to David ↵Dean Camera2009-11-162-4/+9
| | | | Lyons).
* Corrected the name of the misnamed USB_GetDeviceConfigDescriptor() function ↵Dean Camera2009-11-132-5/+5
| | | | to USB_Host_GetDeviceConfigDescriptor().
* Update CDC Class Driver character stream functions to use the correct ↵Dean Camera2009-11-101-2/+2
| | | | | | 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.
* Spell check all source code variables, comments and strings.Dean Camera2009-11-092-3/+3
|
* Add optional pipe double banking support to the Host mode Class drivers.Dean Camera2009-11-072-10/+10
| | | | 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.
* Add double banking property to LUFA powered projects in the Projects ↵Dean Camera2009-11-061-1/+1
| | | | directory. Add guards to macro parameters to ensure that formulas passed as parameters don't mess up the internal macro structure.
* Fix AudioOutput and AudioInput class driver demos' descriptors -- incorrect ↵Dean Camera2009-10-141-5/+24
| | | | value was being supplied in the audio descritors field giving the number of discrete audio formats the device supports.
* Fix Mass Storage Host Class driver GetMaxLUN command - incorrect function ↵Dean Camera2009-09-171-0/+1
| | | | | | 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.
* Remove USE_NONSTANDARD_DESCRIPTOR_NAMES compile time token, split out ↵Dean Camera2009-09-093-230/+325
| | | | | | standard descriptors into seperate USB_Descriptor_* and USB_StdDescriptor_* structures so that both can be used within the one project. Add guard to the HID Host Class driver SetProtocol command, to ensure that the device supports boot protocol mode before issuing the request.
* Corrected incorrect signature bytes for the AT90USB82 and added support for ↵Dean Camera2009-09-071-2/+8
| | | | | | the ATMEGAXX2 variant AVRs to the DFU bootloader. Added warning to the EVENT_USB_Device_Connect() and EVENT_USB_Device_Disconnect() events that they may be fired multiple times during device enumeration on the series 2 AVRs.
* Removed unused INCLUDE_FROM_BOARD_DRIVER internal define from the board ↵Dean Camera2009-08-311-1/+1
| | | | driver dispatch headers.
* Changed the parameters and behaviour of the USB_GetDeviceConfigDescriptor() ↵Dean Camera2009-08-312-29/+46
| | | | function so that it now performs size checks and data validations internally, to simplify user code.
* Add LOAD ADDRESS command parsing to the V2 Protocol hander in the AVRISP ↵Dean Camera2009-08-201-1/+1
| | | | | | project. Fix up references to functions in the Endpoint/Pipe documentation.
* Added beginnings of a new AVRISP-MKII clone project.Dean Camera2009-08-172-3/+3
| | | | | | Added new Endpoint_SetEndpointDirection() macro to set the current endpoint direction for bidirectional endpoints. Renamed internal USB_INT_ENDPOINT_SETUP macro to USB_INT_RXSTPI to fit in with the rest of the interrupt vector macros.
* Added new EVENT_USB_Device_StartOfFrame() event, controlled by the new ↵Dean Camera2009-08-162-0/+20
| | | | USB_Device_EnableSOFEvents() and USB_Device_DisableSOFEvents() macros to give bus-synchronised millisecond interrupts when in USB device mode.
* Make Benito ping-pong LED code more explicit, using masks of the TX and RX ↵Dean Camera2009-08-072-7/+10
| | | | | | LED masks for ping-pong toggle rather than the ambiguous LED "Busy" mask. Fix incorrect event name in MassStorageHost.c.
* Changed over manual loops waiting for endpoints to be ready to use the ↵Dean Camera2009-08-051-2/+2
| | | | library Endpoint_WaitUntilReady() function for robustness. Fixes issues with terminated transfers on the host locking up USB devices.
* Fix incorrect Event call name in USBInterrupt.c.Dean Camera2009-08-051-1/+1
|
* Renamed all library events to properly seperate out Device and Host mode ↵Dean Camera2009-08-055-164/+97
| | | | | | | | events. Changed the firing conditions for some events to ensure that events are fired by their own USB mode only. Remove VBUS events - not needed as the library takes care of VBUS detection and feedback on supported AVRs via the USB_Device_Connected and USB_Device_Disconnected events. Fixed incorrect Host state assignment in the incomplete BluetoothHost demo.
* Removed interrupt disable/enable from the Device mode control request ↵Dean Camera2009-08-023-8/+2
| | | | | | processing routines, as they can cause problems with user code and can cause infinite spinlocks under some circumstances. Added new LUFA logo from EDIGMA.COM.
* Renamed USB_Device_SetHighSpeed() to USB_Device_SetFullSpeed() so that the ↵Dean Camera2009-07-311-1/+4
| | | | | | correct terminology is used (thanks to Brian Dickman). Fix USB_PLL_Off() call in the series 4, 6 and 7 microcontroller disconnect interrupt handler code, which wasn't guarded by a test of USB_Options to check if the user has specified manual PLL control (thanks to Brian Dickman).
* Fix redefinition warning when USB_DEVICE_ONLY is set on an AVR which does ↵Dean Camera2009-07-301-1/+3
| | | | not support USB host mode.
* Cleanup USBMode.h to simplify preprocessor logic.Dean Camera2009-07-291-21/+10
|
* Better solution - change compile time token names to DEVICE_STATE_AS_GPIOR ↵Dean Camera2009-07-282-13/+19
| | | | and HOST_STATE_AS_GPIOR and allow the user to set them to the index of the GPIOR register within the device to use.
* Added HOST_STATE_AS_GPIOR1 and DEVICE_STATE_AS_GPIOR0 compile time options, ↵Dean Camera2009-07-282-34/+52
| | | | the latter of which is used in the bootloaders, to reduce code size.
* Ensure that the USB_DeviceState variable is properly set upon wakeup events, ↵Dean Camera2009-07-231-1/+1
| | | | | | | | to the Addressed or Configured state as needed. Add explicit support for the AT90USB646 to the Teensy bootloader now that PJRC have released the Teensy++ board. Ensure unfinished SideShow demo uses an unallocated PID value within the LUFA range.
* Added new USB_DeviceState variable to keep track of the current Device mode ↵Dean Camera2009-07-214-71/+54
| | | | | | | | | | | | USB state. Added new Endpoint_ClearStatusStage() convenience function to assist with the status stages of control transfers. Removed vague USB_IsConnected global - test USB_DeviceState or USB_HostState explicitly to gain previous functionality. Removed USB_IsSuspended global - test USB_DeviceState against DEVICE_STATE_Suspended instead. Fixed possible enumeration errors from spinloops which may fail to exit if the USB connection is severed before the exit condition becomes true.
* Added support for the new ATMEGA32U2, ATMEGA16U2 and ATMEGA8U2 AVR models.Dean Camera2009-07-161-3/+8
|
* Seperated out parts of the PrinterHost incomplete demo into a seperate Lib ↵Dean Camera2009-07-132-3/+3
| | | | | | subdirectory. Fixed Host mode to Device mode UID change not causing a USB Disconnect event when a device was connected.
* Added const modifiers to device mode class drivers.Dean Camera2009-06-282-32/+32
| | | | | | Added parameter directions to function parameter documentation. Added new experimental FAST_STREAM_FUNCTIONS compile time option to speed up stream transfers at the expense of a higher FLASH consumption (needs testing to verify improved throughput).
* Added new USE_INTERNAL_SERIAL define for using the unique serial numbers in ↵Dean Camera2009-06-211-7/+23
| | | | some AVR models as the USB device's serial number, added NO_INTERNAL_SERIAL compile time option to turn off new serial number reading code. Updated Mass Storage and CDC based demos to use the new device serial number if the device it is compiled for supports it.
* Added USE_INTERNAL_SERIAL compile time option to automatically read out the ↵Dean Camera2009-06-201-1/+7
| | | | internal unique serial number as the device's serial number descriptor on supported AVR models.
* Extend USB_GetDeviceConfigDescriptor() routine to require the configuration ↵Dean Camera2009-06-192-4/+7
| | | | number within the device to fetch, to add support for multi-configuration devices.
* Added new USB_Host_ClearPipeStall() convenience function to clear a stall ↵Dean Camera2009-06-181-0/+2
| | | | | | | | | | condition on an attached device's endpoint. Added new USB_Host_GetDeviceDescriptor() convenience function to retrieve the attached device's Device descriptor. Make Pipe_ConfigurePipe() mask the given endpoint number against PIPE_EPNUM_MASK to ensure the endpoint IN direction bit is cleared to prevent endpoint type corruption. Fix documentation mentioning Pipe_GetCurrentToken() function when real name is Pipe_GetPipeToken().
* Changed per-device controller preprocessor checks over to per-device series ↵Dean Camera2009-06-143-16/+16
| | | | | | for better device control. Fixed error in Endpoint.c using HSOFI rather than SOFI for counting elapsed milliseconds.
* Minor documentation page updates.Dean Camera2009-06-041-2/+2
| | | | | | | | Redocumented all device demos, now that they have changed over to the new USB class drivers. Added C linkage to class drivers for C++ support. Added prefixes to most of the class driver constants to prevent name clashes.
* Removed new Start of Frame event from the library; performance suffered far ↵Dean Camera2009-06-022-24/+0
| | | | | | too much and it was only useful in one of the standard classes (HID). Altered HID demos to use the previous method of tracking millisecond periods via a hardware timer rather than the SOF events. Fixed MIDI class driver blocking on unread events to the host.
* Commit of new class abstraction APIs for all device demos other than the ↵Dean Camera2009-06-014-5/+28
| | | | | | | | | | MIDI demo - not documented yet. Removed scheduler and memory allocation libraries. Added new EVENT_USB_StartOfFrame event in the library to indicate the start of each USB frame (when generated). Removed Tx interrupt from the USBtoSerial demo; now sends characters via polling to ensure more time for the Rx interrupt.
* Deleted StdDescriptors.c, renamed USB_GetDescriptor() to ↵Dean Camera2009-05-225-83/+412
| | | | CALLBACK_USB_GetDescriptor, moved ConfigDescriptor.c/.h from the LUFA/Drivers/USB/Class/ directory to LUFA/Drivers/USB/HighLevel/ in preperation for the new USB class APIs.
* Fixed incorrect PID value being used in the USBtoSerial project (thanks to ↵Dean Camera2009-05-201-3/+4
| | | | Phill).