Commit Graph

165 Commits (04354ffcadfebb0d1c5bd010cf126ae3c126f231)

Author SHA1 Message Date
Dean Camera 6d99486791 Fixed invalid data being returned when a GetStatus request is issued in Device mode with an unhandled data recipient.
16 years ago
Dean Camera ecd82778cf Added beginnings of a new AVRISP-MKII clone project.
16 years ago
Dean Camera 09bedd6555 Added return values to the CDC and MIDI class driver transmit functions.
16 years ago
Dean Camera b71ff7c8cd Added new EVENT_USB_Device_StartOfFrame() event, controlled by the new USB_Device_EnableSOFEvents() and USB_Device_DisableSOFEvents() macros to give bus-synchronised millisecond interrupts when in USB device mode.
16 years ago
Dean Camera df5500e81c Added CDC_Device_Flush() command to the CDC Device mode class driver.
16 years ago
Dean Camera df29aa37c0 Added flag to the HID report parser to indicate if a device has multiple reports.
16 years ago
Dean Camera a7ade9f28d Add CDC Host class driver EVENT_CDC_Host_ControLineStateChanged() event.
16 years ago
Dean Camera abc7dce10c Document CDC Host class driver functions and enums.
16 years ago
Dean Camera c86491af8b Add new functions to the HID host class driver, refine HID interface protocol matching.
16 years ago
Dean Camera a2001ac1cc Fixed swapped paremeters in the HID state memory copy call while processing a HID PUSH item in the HID report parser.
16 years ago
Dean Camera f4814771d2 Completion of initial CDC host mode class driver.
16 years ago
Dean Camera 8711dc7ced Fix issue in CDC device class driver where received data the size of the data endpoint could lock up the driver.
16 years ago
Dean Camera d423090b26 Cleanups to RNDIS device demos. Fix issue in RNDIS demos where the memory would become corrupted due to an incorrect bounds check when iterating over the port state table, causing random resets.
16 years ago
Dean Camera 85c2716f2d Make Benito ping-pong LED code more explicit, using masks of the TX and RX LED masks for ping-pong toggle rather than the ambiguous LED "Busy" mask.
16 years ago
Dean Camera c830fcb0e1 Make Endpoint control transfers more reliable; early-abort when an incomplete packet is sent from the host (indicating end of transfer), add check for control reads to ensure that no more than wLength bytes are read from the interface.
16 years ago
Dean Camera 4421782b7f Make Control Endpoint stream transfers more reliable by adding in early aborts for unexpected new SETUP tokens, or unexpected status stage during control stream writes.
16 years ago
Dean Camera a9d5e129b7 Changed over manual loops waiting for endpoints to be ready to use the library Endpoint_WaitUntilReady() function for robustness. Fixes issues with terminated transfers on the host locking up USB devices.
16 years ago
Dean Camera 4b35dd1670 Commit for 090810rc1 release.
16 years ago
Dean Camera 042d3288ad Fix incorrect Event call name in USBInterrupt.c.
16 years ago
Dean Camera c5038f1bf4 Renamed all library events to properly seperate out Device and Host mode events. Changed the firing conditions for some events to ensure that events are fired by their own USB mode only.
16 years ago
Dean Camera eff07bb877 Fix issue with CDC device demos causing broken communications when the device tries to send data before the host has set the line encoding.
16 years ago
Dean Camera 840d386deb Cleanup and optimization of the internal serial retrieval routines.
16 years ago
Dean Camera 6f4cc344ab Rename TOTAL_NUM_CONFIGURATIONS to FIXED_NUM_CONFIGURATIONS, to match the existing FIXED_CONTROL_ENDPOINT_SIZE compile time option. Add FIXED_NUM_CONFIGURATIONS to the descriptors of each project using the option.
16 years ago
Dean Camera c5eeedd522 Removed interrupt disable/enable from the Device mode control request processing routines, as they can cause problems with user code and can cause infinite spinlocks under some circumstances.
16 years ago
Dean Camera eb41086947 Fix demos based on the device mode HID class driver, as well as the driver itself. Changed HID device class driver to require the user to give a buffer and size to hold the previously generated report, for comparison purposes, and altered the prototype of the CALLBACK_HID_Device_CreateHIDReport() function so that reports can be sent to the host even if there are no apparent changes (useful for relative movements in mice, etc.).
16 years ago
Dean Camera a789619fbe Renamed USB_Device_SetHighSpeed() to USB_Device_SetFullSpeed() so that the correct terminology is used (thanks to Brian Dickman).
16 years ago
Dean Camera 7df6b9563c Add new HID_Device_MillisecondElapsed() function to the HID device Class driver, to move the burden of managing the Idle period of each instance to the library and not the user application.
16 years ago
Dean Camera 7227e133a9 Ensure that the previous HID reports in the HID device class driver are kept per-instance, rather than per-device.
16 years ago
Dean Camera 72932e2780 Fix to HID device mode Class driver, so that new reports are compared against the old, and updated reports made within the idle period are sent immediately to the host.
16 years ago
Dean Camera 41babf1cb7 Fix incorrect configuration in the ClassDriver AudioOutput demo.
16 years ago
Dean Camera ce3ea6fb25 Added standard stream example to the ClassDriver CDC device demo.
16 years ago
Dean Camera 5ca1d7bf8f Fix redefinition warning when USB_DEVICE_ONLY is set on an AVR which does not support USB host mode.
16 years ago
Dean Camera fef185a409 Cleanup USBMode.h to simplify preprocessor logic.
16 years ago
Dean Camera 6928f17b64 Extend the automatic serial number descriptor code to read out and send all 10 bytes (20 characters) of the internal serial number on supported AVRs, rather than just the first 6 bytes (12 characters).
16 years ago
Dean Camera 7f3f39b575 Fixed report data alignment issues in the MouseHostWithParser demo when X and Y movement data size is not a multiple of 8 bits.
16 years ago
Dean Camera e426463355 Better solution - change compile time token names to DEVICE_STATE_AS_GPIOR and HOST_STATE_AS_GPIOR and allow the user to set them to the index of the GPIOR register within the device to use.
16 years ago
Dean Camera c1be307393 Added HOST_STATE_AS_GPIOR1 and DEVICE_STATE_AS_GPIOR0 compile time options, the latter of which is used in the bootloaders, to reduce code size.
16 years ago
Dean Camera 864196c884 State information for class drivers is now zeroed out during enumeration (both in device and host mode) to ensure sane values after each enumeration. User code should no longer explicitly set state information as this is no longer preserved.
16 years ago
Dean Camera b9dd51cd63 Collapse configuration descriptor size retrieval and size testing into a single if statement within the new host mode class driver demos for clarity.
16 years ago
Dean Camera 84c3c4a3d9 Change Host mode class driver Pipe configuration routines -- better to let the application fetch the configuration descriptors once, and then pass them to each class driver in turn.
16 years ago
Dean Camera 5251bc6e4e Add new MouseHost Class Driver demo, unfinished, to allow for better testing of the new prototype Host Mode Class Driver framework. Flesh out start of a HID class Host mode class driver.
16 years ago
Dean Camera 05fa6e0c43 Corrected new Pipe_IsEndpointBound() function.
16 years ago
Dean Camera cbbd3d746a Added new Pipe_BoundEndpointNumber() and Pipe_IsEndpointBound() functions.
16 years ago
Dean Camera 200821fe82 Added new LEDs_ToggleLEDs() function to the Board LEDs driver.
16 years ago
Dean Camera 5dbfdaa17d Ensure that the USB_DeviceState variable is properly set upon wakeup events, to the Addressed or Configured state as needed.
16 years ago
Dean Camera 7a5d045987 Slight changes to TeensyHID bootloader to ensure it builds under the 2KB boundary.
16 years ago
Dean Camera e071f3897a Added new USB_DeviceState variable to keep track of the current Device mode USB state.
16 years ago
Dean Camera d0db78432f Add extra tests to the MassStorage device demo and class driver for validating command blocks from the host.
16 years ago
Dean Camera 67f390fe74 Add explicit guards to all device mode tasks to ensure the device is connected and configured before running the task, to prevent any user tasks from locking up the main USB task if the device has not been properly configured.
16 years ago
Dean Camera 292fc9b65e Move unfinished SideShow source files to nested Lib directory for clarity.
16 years ago