Dean Camera
18cbd31605
Added new USB_Device_GetFrameNumber() and USB_Host_GetFrameNumber() 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.
14 years ago
Dean Camera
0174d8ea70
Reduced HOST_DEVICE_SETTLE_DELAY_MS to 1000ms down from 1500ms to improve device compatibility while in USB Host mode, as some devices will drop off the USB bus if no connection is made within a timeout period.
14 years ago
Dean Camera
b369aa2cc6
Added board hardware driver support for the Olimex AVR-USB-162 development board (thanks to Steve Fawcett).
14 years ago
Dean Camera
cd4c10fefa
Better documentation for the Endpoint_ConfigureEndpoint() and Pipe_ConfigurePipe() functions.
14 years ago
Dean Camera
092f82e06f
Changed the signature of the CALLBACK_USB_GetDescriptor() callback function so that the descriptor pointer is const, to remove the need for extra casting inside the callback (thanks to Jonathan Kollasch).
14 years ago
Dean Camera
ed8ad18f26
Fix Doxygen typos in Device.h.
14 years ago
Dean Camera
f6e1eaba75
Optimise Endpoint_ConfigureEndpoint_Prv() function to produce smaller code when CONTROL_ONLY_DEVICE compile time token is defined.
14 years ago
Dean Camera
e72f424f64
Split out endpoint and pipe stream functions into new EndpointStream.c/.h and PipeStream.c/.h files.
14 years ago
Dean Camera
81998ce297
Added compile time error to the AVRISP-MKII project when built for the U4 chips, as the default VTARGET detection ADC channel does not exist on these chips (thanks to Marco).
14 years ago
Dean Camera
95079868bb
Fixed critical pipe/endpoint memory allocation issue where the bank memory address space could be silently overlapped in the USB controller if the endpoints or pipes were allocated in anything other than ascending order (thanks to Martin Degelsegger).
14 years ago
Dean Camera
508e905d8d
Removed complicated logic for the Endpoint_ConfigureEndpoint() function to use inlined or function called versions depending of if the given bank size is a compile time constant, as the compiler does a better job of optimizing with basic code.
...
Changed over all device demos to use a clearer algorithm for the configuring of the application's endpoints.
14 years ago
Dean Camera
0f45b9c8e0
More spell checking of all source files -- correct missed errors, switch to EN-GB spelling dictionary.
14 years ago
Dean Camera
059307d89c
Use static inline intermediatary functions in Endpoint.h to handle the masking for the private endpoint configuration routine, instead of performing the masking in the Endpoint_ConfigureEndpoint() macro.
14 years ago
Dean Camera
be2a7d4598
Move over message ID specific header data to unions inside the standard TMC header structure, so that all header data is read in one chunk in the incomplete TMC demo.
14 years ago
Dean Camera
eb8a708b53
Update size of compiled Mouse demo in documentation, fix indenting in Device.h.
15 years ago
Dean Camera
9b0e4b8356
Convert over internal pseudo-function macros to true inline functions for added type-safety and compile-checking.
15 years ago
Dean Camera
83e293a6ec
Replace internal Pipe_BytesToEPSizeMask() routine with a new version which results in smaller code.
15 years ago
Dean Camera
97143bf814
Add missing const qualifiers to class drivers.
...
Indent core library function parameters so that there is only one parameter per line, to increase readability.
15 years ago
Dean Camera
99d8a39363
Move and rename DevChaper9.c/.h and HostChapter9.c/.h to the HighLevel 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.
15 years ago
Dean Camera
f4710f6f86
Removed the automated checking of event names in the demo, project and bootloader makefiles due to inconsistancies between the behaviour of the command line tools used to perform the check on each platform.
...
Removed the internal endpoint and pipe memory allocation macros, as this is already performed directly in the code. Simplify the endpoint and pipe reset procedure.
15 years ago
Dean Camera
1167b69943
Add missing eol-style properties to new source files.
15 years ago
Dean Camera
8b053d6ba5
Added new Drivers/USB/LowLevel/Device.c file to house Device mode specific functions that are more complicated than simple macros. Moved USB_Device_SendRemoteWakeup() to the new Device.c source file and corrected it to unfreeze and restart the USB controller clock before issuing a Remote Wakeup request.
...
Removed the USB_Device_IsRemoteWakeupSent() and USB_Device_IsUSBSuspended() macros, as they are now obsolete.
15 years ago
Dean Camera
deed746d37
Renamed SERIAL_STREAM_ASSERT() macro to STDOUT_ASSERT().
...
Minor tweaks to the library documentation.
15 years ago
Dean Camera
711542ee89
Spell check code and manual pages. Remove custom Doxygen CSS stylesheet, as the new 1.7 Doxygen's default stylesheet is much better.
15 years ago
Dean Camera
a14ece5f57
Change over Doxygen \note documentation to \pre where applicable.
15 years ago
Dean Camera
75d440ace3
Speed up calls to Pipe_IsPipeBound() by immediately skipping unconfigured pipes, rather than performing token check first.
15 years ago
Dean Camera
6d53cdba83
More documentation fixes.
15 years ago
Dean Camera
e95c96ea20
Fixed internal device serial not being accessible on the ATMEGAXXU2 AVRs (thanks to Axel Rohde).
15 years ago
Dean Camera
328ed71ce7
Fix spacing of the function parameter descriptions in the Doxygen documentation.
15 years ago
Dean Camera
670413603f
The EEPROM stream read/write functions now use eeprom_update_byte() instead of eeprom_write_byte(), so that only changed bytes are written to EEPROM to preserve its lifespan.
...
Changed over the AVRISP-MKII and TemperatureDataLogger projects to use eeprom_update_byte() when writing non-volatile parameters to EEPROM to preserve its lifespan.
15 years ago
Dean Camera
34047efc7e
Remove incorrect check for the current device state in the Set Configuration request handler of DevChapter9, which broke Set Configuration requests to the device under most circumstances.
...
Move out the SPI prescaler list to a PROGMEM module-level variable in ISPTarget.c.
15 years ago
Dean Camera
1331cce08a
Fixed possible device lockup when INTERRUPT_CONTROL_ENDPOINT is enabled and the control endpoint is not properly selected when the ISR completes.
15 years ago
Dean Camera
ee5ea4ce2b
Fix nasty bug in USBInterrupt.c which would cause a lockup if the control endpoint was not selected at the point the USB endpoint interrupt fires when INTERRUPT_CONTROL_ENDPOINT is defined.
15 years ago
Dean Camera
071e02c6b6
Add svn:eol-style property to source files, so that the line endings are correctly converted to the target system's native end of line style.
15 years ago
Dean Camera
708a1c6166
Fixed INTERRUPT_CONTROL_ENDPOINT compile time option preventing other interrupts from occuring while the control endpoint request is being processed, causing possible lockups if a USB interrupt occurs during a transfer.
15 years ago
Dean Camera
27f0ba6fc3
Fixed device state not being reset back to the default state if the host sets the address to 0x00.
...
Fixed Set Configuration requests not being stalled until the host has set the device's address.
Fixed possibility of internal signature retrieval being corrupted if an interrupt occurs during a signature byte read (thanks to Andrei Krainev).
15 years ago
Dean Camera
eed7d4df6a
Added new ENDPOINT_*_BusSuspended error code to the Endpoint function, so that the stream functions early-abort if the bus is suspended before or during a transfer.
15 years ago
Dean Camera
0063f72117
Oops - relocated USBInterrupt.h header file requires adjusted include paths for the other USB driver header files.
15 years ago
Dean Camera
e977774d4e
Relocate USBInterrupt.c/.h from the HighLevel USB driver directory to the LowLevel directory as it is hardware-dependent.
15 years ago
Dean Camera
59c4871f80
USB_Init() no longer calls sei() to enable global interrupts - this must now be done in the user application once all init code has run.
15 years ago
Dean Camera
5e14c194c9
Fixed Set/Clear Feature requests directed to a non-configured endpoint not returning a stall to the host.
...
Make TeensyHID bootloader use an 8 byte control endpoint to match the official Teensy, just in case Paul decides to authenticate on that attribute in the future.
15 years ago
Dean Camera
7b79325aa0
Removed two-step endpoint/pipe bank clear and switch sequence for smaller, faster endpoint/pipe code.
...
Added spacing between multiple paragraphs in Doxygen \note sections.
Removed call to the clock prescaler reset function in the Teensy bootloader to save space - the user application is accessed via a watchdog reset anyway, so the prescale reset would only affect the speed of the bootloader itself.
15 years ago
Dean Camera
0557676013
Add file-level brief documentation.
...
Remove accidentally duplicated model-specific peripheral driver files.
15 years ago
Dean Camera
9a5ae36a4f
Software PDI mode breaks unless the software USART has 100 cycles between bits.
15 years ago
Dean Camera
92418433a5
Fix incorrect LED mask name in the Webserver project.
...
Fix missing text from the Host Mode States enum documentation.
15 years ago
Dean Camera
14a5a94084
Fix incorrect error when directly including the LUFA internal USB library components.
15 years ago
Dean Camera
071fd8ce53
Revert changes made for the partial port to the AVR32 architecture.
15 years ago
Dean Camera
a7aaa45ec4
More AVR32 achitecture ports.
15 years ago
Dean Camera
3702ba1fb3
More porting of the USB core to the AVR32.
15 years ago
Dean Camera
0e6d5cf5b4
Start porting the USB core to the AVR32 UC3B.
15 years ago