aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/HighLevel
Commit message (Collapse)AuthorAgeFilesLines
* Initial restructuring of the core USB driver module to support multiple ↵Dean Camera2011-02-1921-4902/+0
| | | | architectures in the future.
* Add new ARCH option to the makefiles to (eventually) specify the target ↵Dean Camera2011-02-197-7/+7
| | | | device architecture. Update non-usb peripheral drivers to reflect future multiple architecture support.
* Add more const-ness to the stream endpoint/pipe functions where possible.Dean Camera2011-02-136-34/+34
|
* Add static keyword to all project globals whose scope should be restricted ↵Dean Camera2011-02-101-3/+3
| | | | | | 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.
* Add new HID_DESCRIPTOR_VENDOR() macro, change over all projects and Device ↵Dean Camera2011-01-301-3/+3
| | | | | | | | | | | | 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.
* Call USB_USBTask() in the Endpoint stream functions between packets if ↵Dean Camera2011-01-102-0/+6
| | | | INTERRUPT_CONTROL_ENDPOINT is not set. Remove calls to USB_USBTask in the Mass Storage class driver stream read/write continuation checks, since this is now done inside the stream function.
* Altered all endpoint/pipe stream transfers so that the new BytesProcessed ↵Dean Camera2011-01-109-472/+864
| | | | | | | | | | 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).
* Minor documentation improvements.Dean Camera2011-01-085-45/+45
|
* The FAST_STREAM_TRANSFERS compile time option has been removed due to lack ↵Dean Camera2011-01-084-160/+0
| | | | | | 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.
* Update copyright year on all source files.Dean Camera2011-01-0118-36/+36
|
* Remove internal USB_Device_NibbleToASCII() function in favour of manually ↵Dean Camera2010-11-212-8/+4
| | | | inlined code to prevent compilation errors in -O0 optimisation level.
* Fix documentation reference error.Dean Camera2010-11-051-2/+2
|
* Renamed the EVENT_USB_Device_UnhandledControlRequest() event to ↵Dean Camera2010-11-053-71/+62
| | | | EVENT_USB_Device_ControlRequest() as it is now fired before the library request handlers, not afterwards.
* Fixed USBtoSerial and XPLAINBridge demos discarding data from the PC if the ↵Dean Camera2010-11-032-2/+0
| | | | send buffer becomes full.
* Fix XPLAINBridge code broken during the changes to the Rescue Clock ↵Dean Camera2010-11-021-2/+2
| | | | | | generation in the AVRISP-MKII clone project. Change over all low level host mode project's descriptor comparator routines to perform the descriptor casting in a temp variable to make the code clearer and easier to modify (despite being more verbose).
* Move Set Feature and Clear Feature control request feature selector values ↵Dean Camera2010-10-282-19/+22
| | | | into their own enum.
* Move RNDISConstants.h into the RNDIS class driver common definition header.Dean Camera2010-10-282-3/+27
| | | | Add logical grouping of related #define values for better Doxygen documentation.
* Changed over www.fourwalledcubicle.com links to the new www.lufa-lib.org ↵Dean Camera2010-10-2818-18/+18
| | | | redirect domain, including the new aliased links for LUFA-related pages such as the various download/source control mirrors and support lists.
* Add descriptor class, subclass and protocol constants to the class drivers, ↵Dean Camera2010-10-251-11/+43
| | | | | | | | modify all demos to use them where possible. Move out private/internal host class driver constants to the common class driver headers, so that they can be used in the Low Level host mode demos. Ensure all demos, projects and bootloaders use the class driver constants where possible to minimise code repetition.
* Better algorithm to extract and convert the internal device serial number ↵Dean Camera2010-10-241-5/+5
| | | | | | into a string descriptor (if present). Fix incorrect warning text when an unsuitable F_CLOCK value is given.
* Clean up excessive whitespace at the end of each line using the wspurify ↵Dean Camera2010-10-1322-265/+282
| | | | tool made by Laszlo Monda
* Fixed MIDI_Host_Flush() not aborting early when the specified MIDI host ↵Dean Camera2010-10-121-1/+2
| | | | | | interface was not configured. Small documentation improvements to explicitly reference tokens in Doxygen, to ensure that they are converted to cross-reference links in the output files.
* Remove USB_MODE_* macros, replace with a semantically linked USB_Modes_t enum.Dean Camera2010-10-121-2/+2
| | | | | | | | Moved the USB device selection logic for ENDPOINT_TOTAL_ENDPOINTS further up in Endpoint.h to where the endpoint bank capabilities are determined, to reduce the total number of device-specific logic. Change USB_Host_WaitMS() to test and disable the HSOFI interrupt before resuming the bus, so that it does not fire before the delay loop has run. Add missing const qualifier to the parameter of USB_Host_ClearPipeStall().
* Fixed random enumeration failure while in device mode due to interrupts ↵Dean Camera2010-10-121-29/+28
| | | | causing the Set Address request to exceed maximum timings.
* Cache the USB_DeviceState variable internally in the library core when ↵Dean Camera2010-10-062-16/+21
| | | | multiple checks are required in a single loop iteration, to reduce compiled code size.
* Fix low level host mode demos not correctly fetching the next endpoint when ↵Dean Camera2010-09-301-1/+1
| | | | | | an invalid interface is discarded. Update the pipe configuration routines in the host mode class drivers so that they use the same new code to enumerate compatible devices to increase reliability. Add support to the host mode class drivers for non-sequential (but non-overlapping with other interface) pipe numbers.
* Changed default value for the reset polarity parameter in the AVRISP-MKII ↵Dean Camera2010-09-291-1/+4
| | | | | | project so that it defaults to active low drive. Fixed incorrect USB_DeviceState value when unconfiguring the device without an address set.
* Move out many of the common class driver constants into grouped enums, to ↵Dean Camera2010-09-281-1/+3
| | | | | | | | make them more managable. Add new CDC descriptor structs to the CDC class driver, so that the CDC demos can use human readable field names. Rename prefix for Still Image Host class driver functions from "SImage_" to "SI_" to remain consistent with the rest of the driver.
* Rename internal suspend and wake up USB interrupt macros so that they follow ↵Dean Camera2010-09-191-2/+0
| | | | the same naming scheme as the other USB ISR macros.
* Ensure device address latch bit is not set at the same time as the new ↵Dean Camera2010-09-191-2/+2
| | | | | | | | address, as per datasheet. Minor documentation fixes. Fix broken USB host mode due to the USB frame counter not being updated during the early enumeration steps, causing USB_Host_DelayMS() to spinloop forever.
* Removed the EVENT_USB_InitFailure() event, as not specifying a USB mode to ↵Dean Camera2010-09-151-10/+0
| | | | USB_Init() now defaults the controller into UID selection mode.
* Fix incorrect documentation on the Get Descriptor standard request.Dean Camera2010-09-151-4/+6
|
* Fixed SET FEATURE and CLEAR FEATURE control requests directed at an ↵Dean Camera2010-09-132-13/+13
| | | | unconfigured endpoint causing request timeouts.
* Minor documentation phrasing changes.Dean Camera2010-09-121-5/+5
|
* Added class specific descriptor type defines with standard USB-IF element ↵Dean Camera2010-09-091-14/+14
| | | | naming.
* Added new USB_Device_GetFrameNumber() and USB_Host_GetFrameNumber() ↵Dean Camera2010-09-051-0/+18
| | | | | | | | functions to retrieve the current USB frame number. Added new USB_Host_EnableSOFEvents(), USB_Host_DisableSOFEvents() and EVENT_USB_Host_StartOfFrame() for the user application handling of USB Start of Frame events while in USB Host mode. Changed over all demos, drivers and internal functions to use the current frame number over the Start of Frame flag where possible to free up the Start of Frame flag for interrupt use in the user application.
* Clarify in the project documentation files what the each of the different ↵Dean Camera2010-08-311-4/+4
| | | | USB AVR device "series" comprises of.
* Changed the signature of the CALLBACK_USB_GetDescriptor() callback function ↵Dean Camera2010-08-241-2/+2
| | | | so that the descriptor pointer is const, to remove the need for extra casting inside the callback (thanks to Jonathan Kollasch).
* Split out endpoint and pipe stream functions into new EndpointStream.c/.h ↵Dean Camera2010-08-228-0/+1510
| | | | and PipeStream.c/.h files.
* More spell checking of all source files -- correct missed errors, switch to ↵Dean Camera2010-07-302-3/+3
| | | | EN-GB spelling dictionary.
* Spell check all source files once again to find any typos.Dean Camera2010-07-291-1/+1
|
* Add missing const qualifiers to class drivers.Dean Camera2010-07-214-9/+14
| | | | Indent core library function parameters so that there is only one parameter per line, to increase readability.
* Move and rename DevChaper9.c/.h and HostChapter9.c/.h to the HighLevel ↵Dean Camera2010-07-2110-9/+872
| | | | | | | | directory, new named DeviceStandardReq.c/.h and HostStandardReq.c/.h. Rename LowLevel.c/.h to USBController.c/.h. Remove dependancies on the complete <avr/io.h> header in the HighLevel USB driver directory, to ensure less work is required in later (possible) ports.
* Add missing const qualifier to the parameters of the ↵Dean Camera2010-07-213-208/+198
| | | | | | USB_GetNextDescriptorComp() function. Reduce spacing of the structure elements in StdDescriptors.h to make the code more readable.
* Renamed SERIAL_STREAM_ASSERT() macro to STDOUT_ASSERT().Dean Camera2010-06-174-48/+48
| | | | Minor tweaks to the library documentation.
* Spell check code and manual pages. Remove custom Doxygen CSS stylesheet, as ↵Dean Camera2010-06-162-6/+6
| | | | the new 1.7 Doxygen's default stylesheet is much better.
* Minor documentation cleanups.Dean Camera2010-06-032-3/+3
|
* Oops - descriptor pointer should be assigned, not incremented with the new ↵Dean Camera2010-06-021-1/+1
| | | | type-safe code.
* Better fix to avoid void pointer arithmetic in ConfigDescriptor.h to regain ↵Dean Camera2010-06-021-16/+4
| | | | C++ compatibility (thanks to Michael Hennebry).
* Remove void* arithmetic in the USB_GetNextDescriptor() static inline ↵Dean Camera2010-05-312-50/+61
| | | | function, to make the header file C++ compatible once again. Implement workaround for an obscure GCC bug which can cause incorrect code generation under some circumstances when the void* is re-cast.