diff options
Diffstat (limited to 'LUFA')
-rw-r--r-- | LUFA/CodeTemplates/DeviceTemplate/Descriptors.c | 4 | ||||
-rw-r--r-- | LUFA/Doxygen.conf | 39 | ||||
-rw-r--r-- | LUFA/DoxygenPages/ChangeLog.txt | 6 | ||||
-rw-r--r-- | LUFA/DoxygenPages/FutureChanges.txt | 1 | ||||
-rw-r--r-- | LUFA/DoxygenPages/LUFAPoweredProjects.txt | 5 | ||||
-rw-r--r-- | LUFA/DoxygenPages/MigrationInformation.txt | 4 | ||||
-rw-r--r-- | LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c | 3 | ||||
-rw-r--r-- | LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h | 8 | ||||
-rw-r--r-- | LUFA/Drivers/USB/Core/StdDescriptors.h | 23 | ||||
-rw-r--r-- | LUFA/StudioIntegration/VSIX/LUFA.dll | bin | 745984 -> 745984 bytes | |||
-rw-r--r-- | LUFA/StudioIntegration/VSIX/extension.vsixmanifest | 2 | ||||
-rw-r--r-- | LUFA/StudioIntegration/lufa_drivers_board_names.xml | 9 |
12 files changed, 73 insertions, 31 deletions
diff --git a/LUFA/CodeTemplates/DeviceTemplate/Descriptors.c b/LUFA/CodeTemplates/DeviceTemplate/Descriptors.c index b21b81624..a49fd6f36 100644 --- a/LUFA/CodeTemplates/DeviceTemplate/Descriptors.c +++ b/LUFA/CodeTemplates/DeviceTemplate/Descriptors.c @@ -46,7 +46,7 @@ const USB_Descriptor_Device_t DeviceDescriptor = { .Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device}, - .USBSpecification = VERSION_BCD(02.00), + .USBSpecification = VERSION_BCD(2,0,0), .Class = USB_CSCP_NoDeviceClass, .SubClass = USB_CSCP_NoDeviceSubclass, .Protocol = USB_CSCP_NoDeviceProtocol, @@ -55,7 +55,7 @@ const USB_Descriptor_Device_t DeviceDescriptor = .VendorID = 0x0000, .ProductID = 0x0000, - .ReleaseNumber = VERSION_BCD(00.02), + .ReleaseNumber = VERSION_BCD(0,0,2), .ManufacturerStrIndex = 0x01, .ProductStrIndex = 0x02, diff --git a/LUFA/Doxygen.conf b/LUFA/Doxygen.conf index dab7887f7..f90329370 100644 --- a/LUFA/Doxygen.conf +++ b/LUFA/Doxygen.conf @@ -1,4 +1,4 @@ -# Doxyfile 1.8.5 +# Doxyfile 1.8.6 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project. @@ -73,12 +73,14 @@ CREATE_SUBDIRS = NO # The OUTPUT_LANGUAGE tag is used to specify the language in which all # documentation generated by doxygen is written. Doxygen will use this # information to generate all constant output in the proper language. -# Possible values are: Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese- -# Traditional, Croatian, Czech, Danish, Dutch, English, Esperanto, Farsi, -# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en, -# Korean, Korean-en, Latvian, Norwegian, Macedonian, Persian, Polish, -# Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, -# Turkish, Ukrainian and Vietnamese. +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, +# Ukrainian and Vietnamese. # The default value is: English. OUTPUT_LANGUAGE = English @@ -510,6 +512,13 @@ HIDE_SCOPE_NAMES = NO SHOW_INCLUDE_FILES = YES +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each +# grouped member an include statement to the documentation, telling the reader +# which file to include in order to use the member. +# The default value is: NO. + +SHOW_GROUPED_MEMB_INC = NO + # If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include # files with double quotes in the documentation rather than with sharp brackets. # The default value is: NO. @@ -531,7 +540,8 @@ SORT_MEMBER_DOCS = YES # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief # descriptions of file, namespace and class members alphabetically by member -# name. If set to NO the members will appear in declaration order. +# name. If set to NO the members will appear in declaration order. Note that +# this will also influence the order of the classes in the class list. # The default value is: NO. SORT_BRIEF_DOCS = YES @@ -2056,6 +2066,13 @@ CLASS_DIAGRAMS = NO MSCGEN_PATH = +# You can include diagrams made with dia in doxygen documentation. Doxygen will +# then run dia to produce the diagram and insert it in the documentation. The +# DIA_PATH tag allows you to specify the directory where the dia binary resides. +# If left empty dia is assumed to be found in the default search path. + +DIA_PATH = + # If set to YES, the inheritance and collaboration graphs will hide inheritance # and usage relations if the target is undocumented or is not a class. # The default value is: YES. @@ -2256,6 +2273,12 @@ DOTFILE_DIRS = MSCFILE_DIRS = +# The DIAFILE_DIRS tag can be used to specify one or more directories that +# contain dia files that are included in the documentation (see the \diafile +# command). + +DIAFILE_DIRS = + # The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes # that will be shown in the graph. If the number of nodes in a graph becomes # larger than this value, doxygen will truncate the graph, which is visualized diff --git a/LUFA/DoxygenPages/ChangeLog.txt b/LUFA/DoxygenPages/ChangeLog.txt index 7bd8b2997..01b5a5b10 100644 --- a/LUFA/DoxygenPages/ChangeLog.txt +++ b/LUFA/DoxygenPages/ChangeLog.txt @@ -10,14 +10,16 @@ * <b>New:</b> * - Library Applications: * - Added new Bulk Vendor low level device demo - * - Added new libUSB host Python and NodeJS application examples for the class driver GenericHID demo (thanks to Laszlo Monda) + * - Added new libUSB host Python and NodeJS application examples for the Class driver GenericHID demo (thanks to Laszlo Monda) + * - Added new AVR8 USB option to keep 3.3V regulator enabled (thanks to Michael Hanselmann) * * <b>Changed:</b> * - Library Applications: * - Refactored out USB interface IDs in the demo applications into enums (thanks to Laszlo Monda) * - AVRISP-MKII Clone Project PDI/TPI frequency increased from 250KHz to 2MHz as it is now stable - * - Increased TPI/PDI handshake delay to 1ms from 1us to support targets with high amounts of capacitance on their + * - Increased TPI/PDI handshake delay to 100us from 1us to support targets with high amounts of capacitance on their * /RESET lines (thanks to Paul Duke) + * - Changed the VERSION_BCD() macro to accept the major/minor/revision values as separate parameters * * <b>Fixed:</b> * - Core: diff --git a/LUFA/DoxygenPages/FutureChanges.txt b/LUFA/DoxygenPages/FutureChanges.txt index 18f572810..af1186374 100644 --- a/LUFA/DoxygenPages/FutureChanges.txt +++ b/LUFA/DoxygenPages/FutureChanges.txt @@ -24,6 +24,7 @@ * -# Make HOST_DEVICE_SETTLE_DELAY_MS a global variable that can be changed * -# Add MANDATORY_EVENT_FUNCTIONS compile time option * -# Add watchdog support to the library and apps/bootloaders + * -# Limit the maximum size of control transfers * - Testing/Verification * -# Re-run USBIF test suite on all classes to formally verify operation * -# Implement automated functional testing of all demos diff --git a/LUFA/DoxygenPages/LUFAPoweredProjects.txt b/LUFA/DoxygenPages/LUFAPoweredProjects.txt index ff3b3f42f..2c13e6b4c 100644 --- a/LUFA/DoxygenPages/LUFAPoweredProjects.txt +++ b/LUFA/DoxygenPages/LUFAPoweredProjects.txt @@ -50,6 +50,7 @@ * \li Bluetooth Explorerbot: http://code.google.com/p/bluetooth-explorerbot/ * \li Bus Ninja, an AVR clone of the popular BusPirate project: http://blog.hodgepig.org/busninja/ * \li CAMTRIG, a remote Camera Trigger device: http://code.astraw.com/projects/motmot/camtrig + * \li ChameleonMini, a smart card emulator: https://github.com/skuep/ChameleonMini * \li CD Driver Emulator Dongle for ISO Files: http://cdemu.blogspot.com/ * \li ChipWhisperer, a signal capture device: https://www.assembla.com/spaces/chipwhisperer/wiki/ChipWhisperer_Rev2_Capture_Hardware * \li ClockTamer, a configurable clock generator: http://code.google.com/p/clock-tamer/ @@ -106,6 +107,7 @@ * \li Openkubus, an open source hardware-based authentication dongle: http://code.google.com/p/openkubus/ * \li Orbee, a USB connected RGB Orb for notifications: http://www.franksworkshop.com.au/Electronics/Orbee/Orbee.htm * \li Password keyring: http://owlsan.blogspot.no/2013/06/keyring-project-version-10.html + * \li Picade alternative firmware, a retro Arcade controller/cabinet: https://github.com/rktrlng/picade_lufa * \li PPM signal generator over USB: https://github.com/G33KatWork/USBPPM * \li Programmable keyboard controller: http://41j.com/blog/2011/10/a-programmable-keyboard-controller/ * \li Programmable XBOX controller: http://richard-burke.dyndns.org/wordpress/pan-galactic-gargantuan-gargle-brain-aka-xbox-360-usb-controller/ @@ -114,7 +116,6 @@ * \li PS/2 to USB adapter: https://github.com/makestuff/p2ukbd * \li RaspiFace, an Arduino platform bridge for the Raspberry Pi: http://www.raspiface.com/ * \li Reflow oven controller: http://danstrother.com/2011/01/15/reflow-oven-controller/ - * \li Reprap with LUFA, a LUFA powered 3D printer: http://code.google.com/p/at90usb1287-code-for-arduino-and-eclipse/ * \li RFPirate, a RF experimentation platform: https://github.com/ebuller/RF-Pirate * \li RF Power Meter, based on the AD8307 log amp: https://sites.google.com/site/lofturj/ad8307-power-meter * \li RF Transceiver using the MRF49XA: http://alternet.us.com/?page_id=1494 @@ -161,6 +162,7 @@ * \li Arduino Uno and Leonardo, official Arduino boards: http://www.arduino.cc * \li ARPS Locator: http://la3t.hamradio.no/lab//?id=tracker_en * \li AsTeRICS assistive technologies project, HID actuator: http://www.asterics.eu + * \li BitFury, a Bitcoin ASIC miner: https://github.com/aauer1/LUFA-BitFury/tree/master/Projects/BitfuryBTC * \li Ceberus, a MadCatz Xbox 360 arcade stick modifier: http://www.phreakmods.com/products/cerberus * \li CFFA3000, a CompactFlash interface for the Apple II: http://www.dreher.net/CFforAppleII * \li Digital Survey Instruments Magnetometer and Pointer: http://www.digitalsurveyinstruments.com/ @@ -172,6 +174,7 @@ * \li PhatIO, a filesystem based I/O interface: http://www.phatio.com/ * \li PIR-1, an IR control interface for consumer electronics: http://www.promixis.com/pir-1.php * \li PIR-4, a USB Connected 4 port IR transmitter: http://promixis.com/pir-4.php + * \li PortPilot, a USB device charger with power meter: http://portpilot.net/ * \li KeyGlove, an alternative input system: http://www.keyglove.net/ * \li Many of Busware's Products: http://www.busware.de/ * \li MIDIFighter, a USB-MIDI controller: http://www.midifighter.com/ diff --git a/LUFA/DoxygenPages/MigrationInformation.txt b/LUFA/DoxygenPages/MigrationInformation.txt index a2b2d4dac..25a30c472 100644 --- a/LUFA/DoxygenPages/MigrationInformation.txt +++ b/LUFA/DoxygenPages/MigrationInformation.txt @@ -11,7 +11,9 @@ * areas relevant to making older projects compatible with the API changes of each new release. * * \section Sec_MigrationXXXXXX Migrating from 130901 to XXXXXX - * No migration information. + * <b>USB Core</b> + * - The \c VERSION_BCD() macro has changed from accepting one floating point parameter to taking three distinct major/minor/revision integer parameters, as + * some edge cases caused incorrect parsing of the input float into the final integer BCD encoded value. * * \section Sec_Migration130901 Migrating from 130303 to 130901 * <b>Non-USB Library Components</b> diff --git a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c index 8faec1df0..dc96c0fe7 100644 --- a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c +++ b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.c @@ -112,7 +112,8 @@ void USB_Disable(void) if (!(USB_Options & USB_OPT_MANUAL_PLL)) USB_PLL_Off(); - USB_REG_Off(); + if (!(USB_Options & USB_OPT_REG_KEEP_ENABLED)) + USB_REG_Off(); #if defined(USB_SERIES_4_AVR) || defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR) USB_OTGPAD_Off(); diff --git a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h index 1b72bf13b..fedc04ec1 100644 --- a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h +++ b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h @@ -133,6 +133,14 @@ */ #define USB_OPT_REG_ENABLED (0 << 1) + /** Option mask for \ref USB_Init() to keep regulator enabled at all times. Indicates that \ref USB_Disable() + * should not disable the regulator as it would otherwise. Has no effect if regulator is disabled using + * \ref USB_OPT_REG_DISABLED. + * + * \note See USB AVR data sheet for more information on the internal pad regulator. + */ + #define USB_OPT_REG_KEEP_ENABLED (1 << 3) + /** Manual PLL control option mask for \ref USB_Init(). This indicates to the library that the user application * will take full responsibility for controlling the AVR's PLL (used to generate the high frequency clock * that the USB controller requires) and ensuring that it is locked at the correct frequency for USB operations. diff --git a/LUFA/Drivers/USB/Core/StdDescriptors.h b/LUFA/Drivers/USB/Core/StdDescriptors.h index d7f0ca349..d77acf4e3 100644 --- a/LUFA/Drivers/USB/Core/StdDescriptors.h +++ b/LUFA/Drivers/USB/Core/StdDescriptors.h @@ -85,17 +85,20 @@ */ #define USB_STRING_LEN(UnicodeChars) (sizeof(USB_Descriptor_Header_t) + ((UnicodeChars) << 1)) - /** Macro to encode a given four digit floating point version number (e.g. 01.23) into Binary Coded - * Decimal format for descriptor fields requiring BCD encoding, such as the USB version number in the - * standard device descriptor. + /** Macro to encode a given major/minor/revision version number into Binary Coded Decimal format for descriptor + * fields requiring BCD encoding, such as the USB version number in the standard device descriptor. * * \note This value is automatically converted into Little Endian, suitable for direct use inside device * descriptors on all architectures without endianness conversion macros. * - * \param[in] x Version number to encode as a 16-bit little-endian number, as a floating point number. + * \param[in] Major Major version number to encode. + * \param[in] Minor Minor version number to encode. + * \param[in] Revision Revision version number to encode. */ - #define VERSION_BCD(x) CPU_TO_LE16((VERSION_TENS(x) << 12) | (VERSION_ONES(x) << 8) | \ - (VERSION_TENTHS(x) << 4) | (VERSION_HUNDREDTHS(x) << 0) ) + #define VERSION_BCD(Major, Minor, Revision) \ + CPU_TO_LE16( ((Major & 0xFF) << 8) | \ + ((Minor & 0x0F) << 4) | \ + (Revision & 0x0F) ) /** String language ID for the English language. Should be used in \ref USB_Descriptor_String_t descriptors * to indicate that the English language is supported by the device in its string descriptors. @@ -736,14 +739,6 @@ */ } ATTR_PACKED USB_StdDescriptor_String_t; - /* Private Interface - For use in library only: */ - #if !defined(__DOXYGEN__) - /* Macros: */ - #define VERSION_TENS(x) (int)((int)(x) / 10) - #define VERSION_ONES(x) (int)((int)(x) % 10) - #define VERSION_TENTHS(x) (int)((x - (int)x) * 10) - #define VERSION_HUNDREDTHS(x) (int)((x * 100) - ((int)(x * 10) * 10)) - #endif /* Disable C linkage for C++ Compilers: */ #if defined(__cplusplus) diff --git a/LUFA/StudioIntegration/VSIX/LUFA.dll b/LUFA/StudioIntegration/VSIX/LUFA.dll Binary files differindex 6f749c2c2..9ed4d9040 100644 --- a/LUFA/StudioIntegration/VSIX/LUFA.dll +++ b/LUFA/StudioIntegration/VSIX/LUFA.dll diff --git a/LUFA/StudioIntegration/VSIX/extension.vsixmanifest b/LUFA/StudioIntegration/VSIX/extension.vsixmanifest index 87d4ecc18..afe6a70ec 100644 --- a/LUFA/StudioIntegration/VSIX/extension.vsixmanifest +++ b/LUFA/StudioIntegration/VSIX/extension.vsixmanifest @@ -6,7 +6,7 @@ <Author>Dean Camera</Author>
<Version>0</Version>
<MoreInfoUrl>http://www.lufa-lib.org</MoreInfoUrl>
- <Description xml:space="preserve">LUFA USB Framework</Description>
+ <Description xml:space="preserve">LUFA, the Lightweight USB Framework for AVRs.</Description>
<License>License.txt</License>
<Icon>LUFA_thumb.png</Icon>
diff --git a/LUFA/StudioIntegration/lufa_drivers_board_names.xml b/LUFA/StudioIntegration/lufa_drivers_board_names.xml index d5e40e913..949ca5711 100644 --- a/LUFA/StudioIntegration/lufa_drivers_board_names.xml +++ b/LUFA/StudioIntegration/lufa_drivers_board_names.xml @@ -441,10 +441,13 @@ <module type="driver" id="lufa.drivers.board#stk525" caption="Board Support - STK525">
<build type="doxygen-entry-point" value="Group_BoardInfo_STK525"/>
+ <device-support value="at90usb1287"/>
+ <device-support value="at90usb1286"/>
<device-support value="at90usb647"/>
+ <device-support value="at90usb646"/>
<build type="define" name="BOARD" value="BOARD_STK525"/>
- <require idref="lufa.drivers.misc.at45db642d"/>
+ <require idref="lufa.drivers.misc.at45db321c"/>
<require idref="lufa.drivers.peripheral.spi"/>
<require idref="lufa.drivers.board.buttons"/>
<require idref="lufa.drivers.board.dataflash"/>
@@ -462,6 +465,10 @@ <build type="doxygen-entry-point" value="Group_BoardInfo_STK526"/>
<device-support value="at90usb162"/>
+ <device-support value="at90usb82"/>
+ <device-support value="atmega32u2"/>
+ <device-support value="atmega16u2"/>
+ <device-support value="atmega8u2"/>
<build type="define" name="BOARD" value="BOARD_STK526"/>
<require idref="lufa.drivers.misc.at45db642d"/>
|