Compare commits

...

103 Commits

Author SHA1 Message Date
Dean Camera b6c18b2a7c Update version for the 140302 release. 2014-03-01 21:27:08 +11:00
Dean Camera a80d0c9965 Add Atmel Studio 6.2 compatibility. 2014-03-01 21:09:00 +11:00
Dean Camera fa32989f2e Minor typo corrections. 2014-02-22 17:11:21 +11:00
Dean Camera aaef4fa84c Merge branch 'master' of github.com:abcminiuser/lufa 2014-02-16 17:21:54 +11:00
Dean Camera 9dc7e68d76 Fix incorrect whitespace. 2014-02-16 17:21:37 +11:00
Dean Camera 2141155e9e Update to latest Atmel Studio integration binary. 2014-02-16 17:21:14 +11:00
Dean Camera c49d4af449 Merge pull request #21 from mondalaci/fix-ringbuffer-example
Fix ring buffer example.
2014-02-01 14:30:29 -08:00
László Monda 987cd32f65 Fix ring buffer example. 2014-02-01 20:48:33 +01:00
Dean Camera b095177e20 Fix incorrect descriptor length when using USB_STRING_DESCRIPTOR macros. 2014-01-27 22:28:53 +11:00
Dean Camera c5282637ed Fix documentation: jump address for bootloader should be words, not bytes. 2014-01-13 10:06:27 +11:00
Dean Camera 0d84b65f0b Rename all Doxygen.conf file to doxyfile and distribute them in the Atmel Studio extension. 2014-01-08 21:47:59 +11:00
Dean Camera 5789767889 Fix USB_STRING_DESCRIPTOR() macro reported length to account for the null-terminator. 2014-01-08 10:51:48 +11:00
Dean Camera 32c5c43bf0 Minor documentation improvements. 2014-01-08 10:42:06 +11:00
Dean Camera 8328175482 Add USB_STRING_DESCRIPTOR_ARRAY() macro, update demos where required. 2014-01-08 10:41:16 +11:00
László Monda deb1675f84 Use the new USB_STRING_DESCRIPTOR macro for every string descriptor. 2014-01-08 10:36:19 +11:00
László Monda 28cadf077e Add USB_STRING_DESCRIPTOR and make the Keyboard demo use it. 2014-01-08 10:36:18 +11:00
Dean Camera 2e70de6194 Update to latest Atmel Studio integration binary. 2014-01-07 15:20:04 +11:00
Dean Camera 812114d9c1 Fix broken teensy-ee build rule. 2014-01-07 15:19:53 +11:00
Dean Camera 129824028b Update to latest Atmel Studio integration binary. 2014-01-06 14:52:49 +11:00
Dean Camera 92006938d3 Minor documentation improvements. 2014-01-06 11:38:47 +11:00
Dean Camera 0f6c155a04 Minor documentation improvements. 2014-01-05 11:38:59 +11:00
Dean Camera 161263af47 Merge pull request #19 from mondalaci/attr-no-inline-cleanup
Get rid of the redundant ATTR_NEVER_INLINE macro which translated to the...
2014-01-04 16:31:49 -08:00
László Monda 5cae541545 Get rid of the redundant ATTR_NEVER_INLINE macro which translated to the same as ATTR_NO_INLINE. 2014-01-05 00:33:08 +01:00
Dean Camera e368a89987 Update copyrights for 2014. 2014-01-04 10:45:02 +11:00
Dean Camera 510d29d472 Minor documentation improvements. 2014-01-04 09:56:09 +11:00
Dean Camera ef16683b42 Merge pull request #17 from mondalaci/further-generichid-modemmanager-instructions
Add further instructions regarding the modemmanager suckage.
2014-01-03 14:47:00 -08:00
László Monda 6e0baf4342 Add further instructions regarding the modemmanager suckage. 2014-01-03 23:44:26 +01:00
Dean Camera ccbba9bfe5 Minor documentation improvements. 2013-12-30 17:09:52 +11:00
Dean Camera 92d1d0342b Update VSIX extension manifest description. 2013-12-30 12:39:59 +11:00
Dean Camera 123b5bc47b Minor documentation improvements. 2013-12-27 00:53:12 +11:00
Dean Camera 4c25f212c3 Upgrade Doxygen configuration files to the latest version. 2013-12-26 15:09:58 +11:00
Dean Camera af893c3df6 Update to latest LUFA Atmel Studio integration binary. 2013-12-22 13:40:10 +11:00
Dean Camera 31022dfbe9 Fix incorrect Dataflash header file included for the STK525 inside Atmel Studio. 2013-12-20 20:36:19 +11:00
Dean Camera 1cd0f66347 Merge pull request #15 from mondalaci/limit-control-transfer-size
Add todo item.
2013-12-20 01:18:34 -08:00
Dean Camera d8f0d2709b Minor documentation improvements. 2013-12-20 20:19:33 +11:00
Dean Camera 9965b2ca0a Merge pull request #16 from hansmi/master
AVR8: Add option to keep 3.3V regulator enabled.
2013-12-20 01:11:45 -08:00
Michael Hanselmann 25a02432e7 AVR8: Add option to keep 3.3V regulator enabled
The documentation contains example code[1] on how to restart into the
bootloader. In the process of preparing for the reset, USB is disabled
using “USB_Disable()”. For hardware making use of the AVR8's internal
3.3V regulator that call would also disable the regulator, resetting the
processor immediately rather than setting the boot key and letting the
watchdog reset the processor.

This patch adds a new flag to be given to “USB_Init()” or to be defined
in “USE_STATIC_OPTIONS” telling “USB_Disable()” to keep the regulator
enabled.

On November 1st, 2013 this issue was already mentioned on the mailing
list[2], but no fix came from that discussion.

[1]
<http://www.fourwalledcubicle.com/files/LUFA/Doc/130901/
html/_page__software_bootloader_start.html>

[2]
<https://groups.google.com/d/msg/lufa-support/uwrFpRQpJzU/e9I6UK5jMJQJ>

Signed-off-by: Michael Hanselmann <public@hansmi.ch>
2013-12-20 00:04:51 +01:00
László Monda a359a266df Add todo item. 2013-12-18 18:55:47 +01:00
Dean Camera 70a726b5aa Fix STK525 and STK526 device support in the Atmel Studio extension. 2013-12-14 22:46:05 +11:00
Dean Camera e3cb0f48ef Use new VERSION_BCD() macro with explicit int arguments to fix edge cases with the previous floating point macro version. 2013-11-21 19:19:45 +01:00
Dean Camera 52c69331ec Reduce PDI/TPI reset hold period from 1ms to 100us, as the former caused sporadic session issues. 2013-11-21 18:41:17 +01:00
Dean Camera 52a5016576 Exclude all host application directories from the Doxygen configuration files. 2013-11-20 20:25:15 +01:00
Dean Camera 8edd561948 Fix incorrect status constants in the AVRISP-MKII Clone project. 2013-11-20 20:20:22 +01:00
Dean Camera 32013ebffb Add Documentation output directories to the .gitignore list. 2013-11-20 20:18:28 +01:00
Dean Camera 6eba84bf4b Fixed MIDI device class driver MIDI_Device_ReceiveEventPacket() for the XMEGA architecture. 2013-11-05 22:16:15 +01:00
Dean Camera 16c4f1d43c Increase AVRISP-MKII Clone PDI/TPI handshake to 1ms from 1us for targets with high /RESET line capacitance. 2013-11-04 17:09:21 +01:00
Dean Camera 4b6049bb59 Minor documentation improvements. 2013-11-03 22:21:50 +01:00
Dean Camera d251ef6bed Merge pull request #12 from mondalaci/generichid-node-libusb-script
Add node.js libusb GenericHID test script.
2013-11-03 13:16:28 -08:00
László Monda 9d6303cead Add node.js libusb GenericHID test script. 2013-11-03 19:13:20 +01:00
Dean Camera 90c7491e51 Minor documentation improvements. 2013-11-03 15:47:58 +01:00
Dean Camera d2eaf94dbb Merge pull request #11 from mondalaci/generichid-libusb-scripts
Add libusb GenericHID Python test script.
2013-11-03 06:41:56 -08:00
Dean Camera 6b214472b7 Fix signature bytes in the DFU class bootloader. 2013-11-03 15:44:55 +01:00
László Monda d31e0a4d37 Add libusb GenericHID Python test script. 2013-11-02 18:56:37 +01:00
Dean Camera bcd07f4f8a AVRISP-MKII Clone Project PDI/TPI frequency increased from 250KHz to 2MHz as it is now stable. 2013-11-02 12:17:31 +01:00
Dean Camera 94323fadd1 Minor documentation improvements. 2013-10-30 19:36:55 +01:00
Dean Camera b7b6f212e9 Add new Bulk Vendor device demo application. 2013-10-30 19:34:31 +01:00
Dean Camera 14e44b626f Add Python host test application for the low level GenericHID demo. 2013-10-30 18:56:02 +01:00
Dean Camera 814d0b9098 Minor documentation fixes. 2013-10-27 23:15:20 +01:00
Dean Camera 85141b37f9 Use non-abbreviated XPROG/PDI/TPI constant names. 2013-10-27 22:36:02 +01:00
Dean Camera 560e5f75fb Refactor AVRISP MKII Clone PDI/TPI command constants to simplify the driver code. 2013-10-27 21:34:44 +01:00
Dean Camera e1b19e4e10 More minor speedups to the AVRISP-MKII clone programmer PDI memory reading code. 2013-10-27 18:26:11 +01:00
Dean Camera 13b3014db4 Merge branch 'master' of github.com:abcminiuser/lufa 2013-10-27 18:25:30 +01:00
Dean Camera 3fc75f130b Minor documentation improvements. 2013-10-27 18:16:07 +01:00
Dean Camera cf41d16bc7 Only issue the REPEAT instruction in the clone programmer if needed to reduce protocol overhead. 2013-10-27 18:15:03 +01:00
Dean Camera e7a8fd6033 Merge pull request #10 from mondalaci/replace-audio-interface-numbers-with-enums
Replace remaining MIDI interface numbers with enums.
2013-10-12 02:15:50 -07:00
László Monda cb10891bd6 Replace remaining MIDI interface numbers with enums. 2013-10-12 00:44:50 +02:00
Dean Camera 7024bb4c79 Merge pull request #9 from mondalaci/replace-remaining-interface-numbers-with-enums
Replace CDC interface numbers with enums.
2013-10-11 12:50:01 -07:00
László Monda 352152c664 Replace CDC interface numbers with enums. 2013-10-10 00:32:35 +02:00
Dean Camera ab238601b9 Minor documentation corrections. 2013-10-06 22:33:32 +02:00
Dean Camera 7ce4d35c39 Merge pull request #8 from mondalaci/extract-interface-numbers
Extract interface numbers into enums.
2013-10-06 13:22:23 -07:00
László Monda 9ef29ea229 Extract interface numbers into enums. 2013-10-06 22:16:20 +02:00
Dean Camera 8e2476a125 Merge pull request #7 from mondalaci/hidclassdevice_whitespaces
Use spaces instead of tabs where necessary to fix indentation.
2013-09-27 09:48:42 -07:00
Dean Camera 8026bee8d6 Merge branch 'mondalaci-avr910_typos' 2013-09-27 18:51:41 +02:00
Dean Camera b6bf314d50 Minor formatting fixes. 2013-09-27 18:50:34 +02:00
László Monda ef1a4b750b Use spaces instead of tabs wherever necessary to fix indentation. 2013-09-24 11:19:42 +02:00
László Monda c41512c1e8 Use spaces instead of tabs where necessary to fix indentation. 2013-09-24 11:09:36 +02:00
László Monda 75419b4d97 Fix "AVR910" typos to "AVR109". 2013-09-24 02:16:04 +02:00
Dean Camera cd3aae87da Add missing AppConfig.h reference in the Mass Storage class bootloader when used in Atmel Studio. 2013-09-16 18:45:32 +02:00
Dean Camera d6be06ea6a Remove style override that conflicts with the latest MSHelp branding package from Atmel. 2013-09-05 17:55:48 +02:00
Dean Camera 716f356b21 Minor code style fix. 2013-09-05 17:44:57 +02:00
Dean Camera b229aef6f7 Reset version information following the 130901 release. 2013-09-01 14:12:29 +02:00
Dean Camera 012c565609 Version for the 130901 release. 2013-09-01 14:09:21 +02:00
Dean Camera dbad27dd6d Minor documentation improvements. 2013-09-01 13:25:43 +02:00
Dean Camera 53f7499009 Minor documentation improvements. 2013-09-01 12:05:47 +02:00
Dean Camera 96f2634770 Oops - use unique section names for the board driver stubs in the documentation. 2013-09-01 12:03:55 +02:00
Dean Camera c18283a275 Add user board driver stub code to the documentation. 2013-09-01 12:02:13 +02:00
Dean Camera 14ba7a7047 Fix outdated filename references in the LUFA documentation. 2013-09-01 11:34:38 +02:00
Dean Camera adb61c7b29 Add security warnings to the documentation of bootloaders without secure writes. 2013-09-01 11:14:28 +02:00
Dean Camera 2ba22d5571 Fix outdated Benito project ASF XML. 2013-08-31 12:57:47 +02:00
Dean Camera a8d907d704 Add DefaultInstall section to all INF driver files for easier installation. 2013-08-31 11:23:41 +02:00
Dean Camera 6216a71e1c Update Atmel Studio integration blob with better online documentation links and Getting Started graphics. 2013-08-31 00:34:20 +02:00
Dean Camera ce546b43cc Add Atmel Studio integration known issues. 2013-08-31 00:31:19 +02:00
Dean Camera af0adbcb36 Minor documentation improvements. 2013-08-25 00:36:09 +02:00
Dean Camera e5bee74fca Update Atmel Studio binary blob; update help when the extension is updated, add additional Getting Started information. 2013-08-24 16:01:40 +02:00
Dean Camera 8cd0b383c5 Fix double-spaced code samples in the Docbook transform output. 2013-08-23 23:27:09 +02:00
Dean Camera fbe2982858 Update to latest Doxygen configurations, patch Doxygen->Docbook transform due to changes in the code fragment output in the Doxygen XML. 2013-08-23 23:04:31 +02:00
Dean Camera aded8373cc Fixed error receiving PIMA events via the Still Image Host class driver. 2013-08-23 22:59:58 +02:00
Dean Camera 44bc433fb0 Fix code style in the HID parser module. 2013-08-23 21:42:51 +02:00
Dean Camera 46621b7a11 Add missing Known Issue entry for a previous LUFA release. 2013-08-19 20:23:48 +02:00
Dean Camera 41046f2354 Remove incorrect entry from the Known Issues list. 2013-08-19 20:22:29 +02:00
Dean Camera 179e18cf58 Prevent accessing past the UsageList bounds in the HID parser when dequeueing a usage. 2013-08-19 20:20:44 +02:00
Dean Camera cba09e323d Remove outdated known issue from the Known Issues list of the documentation. 2013-08-19 19:54:15 +02:00
Dean Camera 03ce1bc503 Bump AVRISP-MKII version number to be compatible with Atmel Studio 6.1 SP2. 2013-08-19 18:30:00 +02:00
1270 changed files with 190827 additions and 153732 deletions
+1
View File
@@ -9,5 +9,6 @@
*.map
*.bak
*.class
Documentation/
LUFA/StudioIntegration/ProjectGenerator/*
LUFA/StudioIntegration/DocBook/*
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -44,7 +44,7 @@
#include <LUFA/Common/Common.h>
#include "Config/AppConfig.h"
/* Function Prototypes: */
void BootloaderAPI_ErasePage(const uint32_t Address);
void BootloaderAPI_WritePage(const uint32_t Address);
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2011 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+5 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -236,9 +236,9 @@ void EVENT_USB_Device_ControlRequest(void)
#if !defined(NO_BLOCK_SUPPORT)
/** Reads or writes a block of EEPROM or FLASH memory to or from the appropriate CDC data endpoint, depending
* on the AVR910 protocol command issued.
* on the AVR109 protocol command issued.
*
* \param[in] Command Single character AVR910 protocol command indicating what memory operation to perform
* \param[in] Command Single character AVR109 protocol command indicating what memory operation to perform
*/
static void ReadWriteMemoryBlock(const uint8_t Command)
{
@@ -402,7 +402,7 @@ static void WriteNextResponseByte(const uint8_t Response)
Endpoint_Write_8(Response);
}
/** Task to read in AVR910 commands from the CDC data OUT endpoint, process them, perform the required actions
/** Task to read in AVR109 commands from the CDC data OUT endpoint, process them, perform the required actions
* and send the appropriate response back to the host.
*/
static void CDC_Task(void)
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+5
View File
@@ -54,6 +54,9 @@
* When the bootloader is running, the board's LED(s) will flash at regular intervals to distinguish the
* bootloader from the normal user application.
*
* \warning <b>THIS BOOTLOADER IS NOT SECURE.</b> Malicious entities can recover written data, even if the device
* lockbits are set.
*
* \section Sec_Installation Driver Installation
*
* After running this bootloader for the first time on a new computer, you will need to supply the .INF
@@ -168,6 +171,8 @@
* this module to try to take control over inserted CDC devices, corrupting the
* datastream. A UDEV rule is required to prevent this.
* See <a href=https://groups.google.com/d/msg/lufa-support/CP9cy2bc8yo/kBqsOu-RBeMJ>here</a> for resolution steps.
* If the issue still persists then uninstall modemmanager by executing <tt>sudo apt-get remove modemmanager</tt>, or
* the equivalent using your chosen distribution's package manager.
*
* \par On Linux machines, the CDC bootloader is inaccessible.
* On many Linux systems, non-root users do not have automatic access to newly
+4 -4
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -35,7 +35,7 @@
* compile time options, as an alternative to the compile time
* constants supplied through a makefile.
*
* For information on what each token does, refer to the
* For information on what each token does, refer to the
* \ref Sec_Options section of the application documentation.
*/
@@ -47,4 +47,4 @@
// #define NO_FLASH_BYTE_SUPPORT
// #define NO_LOCK_BYTE_WRITE_SUPPORT
#endif
#endif
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+12 -27
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -46,7 +46,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},
.USBSpecification = VERSION_BCD(01.10),
.USBSpecification = VERSION_BCD(1,1,0),
.Class = CDC_CSCP_CDCClass,
.SubClass = CDC_CSCP_NoSpecificSubclass,
.Protocol = CDC_CSCP_NoSpecificProtocol,
@@ -55,7 +55,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
.VendorID = 0x03EB,
.ProductID = 0x204A,
.ReleaseNumber = VERSION_BCD(01.00),
.ReleaseNumber = VERSION_BCD(1,0,0),
.ManufacturerStrIndex = STRING_ID_Manufacturer,
.ProductStrIndex = STRING_ID_Product,
@@ -90,7 +90,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_CDC_CCI,
.AlternateSetting = 0,
.TotalEndpoints = 1,
@@ -107,7 +107,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
.Header = {.Size = sizeof(USB_CDC_Descriptor_FunctionalHeader_t), .Type = DTYPE_CSInterface},
.Subtype = 0x00,
.CDCSpecification = VERSION_BCD(01.10),
.CDCSpecification = VERSION_BCD(1,1,0),
},
.CDC_Functional_ACM =
@@ -123,8 +123,8 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
.Header = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
.Subtype = 0x06,
.MasterInterfaceNumber = 0,
.SlaveInterfaceNumber = 1,
.MasterInterfaceNumber = INTERFACE_ID_CDC_CCI,
.SlaveInterfaceNumber = INTERFACE_ID_CDC_DCI,
},
.CDC_NotificationEndpoint =
@@ -141,7 +141,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 1,
.InterfaceNumber = INTERFACE_ID_CDC_DCI,
.AlternateSetting = 0,
.TotalEndpoints = 2,
@@ -178,34 +178,19 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
* the string descriptor with index 0 (the first index). It is actually an array of 16-bit integers, which indicate
* via the language ID table available at USB.org what languages the device supports for its string descriptors.
*/
const USB_Descriptor_String_t LanguageString =
{
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},
.UnicodeString = {LANGUAGE_ID_ENG}
};
const USB_Descriptor_String_t LanguageString = USB_STRING_DESCRIPTOR_ARRAY(LANGUAGE_ID_ENG);
/** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable
* form, and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t ManufacturerString =
{
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},
.UnicodeString = L"Dean Camera"
};
const USB_Descriptor_String_t ManufacturerString = USB_STRING_DESCRIPTOR(L"Dean Camera");
/** Product descriptor string. This is a Unicode string containing the product's details in human readable form,
* and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t ProductString =
{
.Header = {.Size = USB_STRING_LEN(8), .Type = DTYPE_String},
.UnicodeString = L"LUFA CDC"
};
const USB_Descriptor_String_t ProductString = USB_STRING_DESCRIPTOR(L"LUFA CDC");
/** This function is called by the library when in device mode, and must be overridden (see LUFA library "USB Descriptors"
* documentation) by the application code so that the address and size of a requested descriptor can be given
+15 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -127,15 +127,25 @@
USB_Descriptor_Endpoint_t CDC_DataInEndpoint;
} USB_Descriptor_Configuration_t;
/** Enum for the device interface descriptor IDs within the device. Each interface descriptor
* should have a unique ID index associated with it, which can be used to refer to the
* interface from other descriptors.
*/
enum InterfaceDescriptors_t
{
INTERFACE_ID_CDC_CCI = 0, /**< CDC CCI interface descriptor ID */
INTERFACE_ID_CDC_DCI = 1, /**< CDC DCI interface descriptor ID */
};
/** Enum for the device string descriptor IDs within the device. Each string descriptor should
* have a unique ID index associated with it, which can be used to refer to the string from
* other descriptors.
*/
enum StringDescriptors_t
{
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
};
/* Function Prototypes: */
File diff suppressed because it is too large Load Diff
+4 -1
View File
@@ -3,6 +3,9 @@
; Copyright (c) 2000 Microsoft Corporation
;************************************************************
[DefaultInstall]
CopyINF="LUFA CDC Bootloader.inf"
[Version]
Signature="$Windows NT$"
Class=Ports
@@ -60,4 +63,4 @@ HKR,,EnumPropPages32,,"msports.dll,SerialPortPropPageProvider"
;------------------------------------------------------------------------------
[Strings]
MFGNAME="http://www.lufa-lib.org"
DESCRIPTION="LUFA CDC Class Bootloader"
DESCRIPTION="LUFA CDC Class Bootloader"
+1
View File
@@ -148,6 +148,7 @@
<build type="header-file" value="Config/LUFAConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="BootloaderCDC.txt"/>
<build type="distribute" subtype="user-file" value="LUFA CDC Bootloader.inf"/>
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2011.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+13 -6
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -785,13 +785,20 @@ static void ProcessWriteCommand(void)
static void ProcessReadCommand(void)
{
const uint8_t BootloaderInfo[3] = {BOOTLOADER_VERSION, BOOTLOADER_ID_BYTE1, BOOTLOADER_ID_BYTE2};
const uint8_t SignatureInfo[3] = {AVR_SIGNATURE_1, AVR_SIGNATURE_2, AVR_SIGNATURE_3};
const uint8_t SignatureInfo[4] = {0x58, AVR_SIGNATURE_1, AVR_SIGNATURE_2, AVR_SIGNATURE_3};
uint8_t DataIndexToRead = SentCommand.Data[1];
if (IS_ONEBYTE_COMMAND(SentCommand.Data, 0x00)) // Read bootloader info
ResponseByte = BootloaderInfo[DataIndexToRead];
if (IS_ONEBYTE_COMMAND(SentCommand.Data, 0x00)) // Read bootloader info
{
ResponseByte = BootloaderInfo[DataIndexToRead];
}
else if (IS_ONEBYTE_COMMAND(SentCommand.Data, 0x01)) // Read signature byte
ResponseByte = SignatureInfo[DataIndexToRead - 0x30];
{
if (DataIndexToRead < 0x60)
ResponseByte = SignatureInfo[DataIndexToRead - 0x30];
else
ResponseByte = SignatureInfo[DataIndexToRead - 0x60 + 3];
}
}
+5 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -68,7 +68,7 @@
#define BOOTLOADER_VERSION_REV 0
/** Magic bootloader key to unlock forced application start mode. */
#define MAGIC_BOOT_KEY 0xDC42
#define MAGIC_BOOT_KEY 0xDC42
/** Complete bootloader version number expressed as a packed byte, constructed from the
* two individual bootloader version macros.
@@ -170,7 +170,7 @@
dfuMANIFEST = 7,
dfuMANIFEST_WAIT_RESET = 8,
dfuUPLOAD_IDLE = 9,
dfuERROR = 10
dfuERROR = 10
};
/** DFU command status error codes. Refer to the DFU class specification for information on each error code. */
@@ -191,7 +191,7 @@
errUSBR = 12,
errPOR = 13,
errUNKNOWN = 14,
errSTALLEDPKT = 15
errSTALLEDPKT = 15
};
/* Function Prototypes: */
+5 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -33,10 +33,10 @@
*
* This is a header file which is be used to configure some of
* the application's compile time options, as an alternative to
* specifying the compile time constants supplied through a
* specifying the compile time constants supplied through a
* makefile or build system.
*
* For information on what each token does, refer to the
* For information on what each token does, refer to the
* \ref Sec_Options section of the application documentation.
*/
@@ -45,4 +45,4 @@
#define SECURE_MODE false
#endif
#endif
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+9 -24
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -46,7 +46,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},
.USBSpecification = VERSION_BCD(01.10),
.USBSpecification = VERSION_BCD(1,1,0),
.Class = USB_CSCP_NoDeviceClass,
.SubClass = USB_CSCP_NoDeviceSubclass,
.Protocol = USB_CSCP_NoDeviceProtocol,
@@ -55,7 +55,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
.VendorID = 0x03EB,
.ProductID = PRODUCT_ID_CODE,
.ReleaseNumber = VERSION_BCD(00.00),
.ReleaseNumber = VERSION_BCD(0,0,0),
.ManufacturerStrIndex = STRING_ID_Manufacturer,
.ProductStrIndex = STRING_ID_Product,
@@ -90,7 +90,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_DFU,
.AlternateSetting = 0,
.TotalEndpoints = 0,
@@ -111,7 +111,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
.DetachTimeout = 0x0000,
.TransferSize = 0x0C00,
.DFUSpecification = VERSION_BCD(01.10)
.DFUSpecification = VERSION_BCD(1,1,0)
}
};
@@ -119,34 +119,19 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
* the string descriptor with index 0 (the first index). It is actually an array of 16-bit integers, which indicate
* via the language ID table available at USB.org what languages the device supports for its string descriptors.
*/
const USB_Descriptor_String_t LanguageString =
{
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},
.UnicodeString = {LANGUAGE_ID_ENG}
};
const USB_Descriptor_String_t LanguageString = USB_STRING_DESCRIPTOR_ARRAY(LANGUAGE_ID_ENG);
/** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable
* form, and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t ManufacturerString =
{
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},
.UnicodeString = L"Dean Camera"
};
const USB_Descriptor_String_t ManufacturerString = USB_STRING_DESCRIPTOR(L"Dean Camera");
/** Product descriptor string. This is a Unicode string containing the product's details in human readable form,
* and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t ProductString =
{
.Header = {.Size = USB_STRING_LEN(8), .Type = DTYPE_String},
.UnicodeString = L"LUFA DFU"
};
const USB_Descriptor_String_t ProductString = USB_STRING_DESCRIPTOR(L"LUFA DFU");
/** This function is called by the library when in device mode, and must be overridden (see library "USB Descriptors"
* documentation) by the application code so that the address and size of a requested descriptor can be given
+14 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -164,15 +164,24 @@
USB_Descriptor_DFU_Functional_t DFU_Functional;
} USB_Descriptor_Configuration_t;
/** Enum for the device interface descriptor IDs within the device. Each interface descriptor
* should have a unique ID index associated with it, which can be used to refer to the
* interface from other descriptors.
*/
enum InterfaceDescriptors_t
{
INTERFACE_ID_DFU = 0, /**< DFU interface descriptor ID */
};
/** Enum for the device string descriptor IDs within the device. Each string descriptor should
* have a unique ID index associated with it, which can be used to refer to the string from
* other descriptors.
*/
enum StringDescriptors_t
{
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
};
/* Function Prototypes: */
File diff suppressed because it is too large Load Diff
+1
View File
@@ -144,6 +144,7 @@
<build type="header-file" value="Config/LUFAConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="BootloaderDFU.txt"/>
<require idref="lufa.common"/>
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -59,7 +59,7 @@ void Application_Jump_Check(void)
if ((MCUSR & (1 << WDRF)) && (MagicBootKey == MAGIC_BOOT_KEY))
{
MagicBootKey = 0;
// cppcheck-suppress constStatement
((void (*)(void))0x0000)();
}
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+4 -1
View File
@@ -48,7 +48,7 @@
*
* This bootloader enumerates to the host as a HID Class device, allowing for device FLASH programming through
* the supplied command line software, which is a modified version of Paul's TeensyHID Command Line loader code
* from PJRC (used with permission). This bootloader is deliberatley non-compatible with the properietary PJRC
* from PJRC (used with permission). This bootloader is deliberately non-compatible with the proprietary PJRC
* HalfKay bootloader GUI; only the command line interface software accompanying this bootloader will work with it.
*
* Out of the box this bootloader builds for the AT90USB1287 with an 8KB bootloader section size, and will fit
@@ -56,6 +56,9 @@
* all other models. If you wish to alter this size and/or change the AVR model, you will need to edit the MCU,
* FLASH_SIZE_KB and BOOT_SECTION_SIZE_KB values in the accompanying makefile.
*
* \warning <b>THIS BOOTLOADER IS NOT SECURE.</b> Malicious entities can recover written data, even if the device
* lockbits are set.
*
* \section Sec_Installation Driver Installation
*
* This bootloader uses the HID class driver inbuilt into all modern operating systems, thus no additional drivers
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+12 -12
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -48,12 +48,12 @@ const USB_Descriptor_HIDReport_Datatype_t HIDReport[] =
HID_RI_USAGE_PAGE(16, 0xFFDC), /* Vendor Page 0xDC */
HID_RI_USAGE(8, 0xFB), /* Vendor Usage 0xFB */
HID_RI_COLLECTION(8, 0x01), /* Vendor Usage 1 */
HID_RI_USAGE(8, 0x02), /* Vendor Usage 2 */
HID_RI_LOGICAL_MINIMUM(8, 0x00),
HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
HID_RI_REPORT_SIZE(8, 0x08),
HID_RI_REPORT_COUNT(16, (sizeof(uint16_t) + SPM_PAGESIZE)),
HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_USAGE(8, 0x02), /* Vendor Usage 2 */
HID_RI_LOGICAL_MINIMUM(8, 0x00),
HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
HID_RI_REPORT_SIZE(8, 0x08),
HID_RI_REPORT_COUNT(16, (sizeof(uint16_t) + SPM_PAGESIZE)),
HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
HID_RI_END_COLLECTION(0),
};
@@ -66,7 +66,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},
.USBSpecification = VERSION_BCD(01.10),
.USBSpecification = VERSION_BCD(1,1,0),
.Class = USB_CSCP_NoDeviceClass,
.SubClass = USB_CSCP_NoDeviceSubclass,
.Protocol = USB_CSCP_NoDeviceProtocol,
@@ -75,7 +75,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
.VendorID = 0x03EB,
.ProductID = 0x2067,
.ReleaseNumber = VERSION_BCD(00.01),
.ReleaseNumber = VERSION_BCD(0,0,1),
.ManufacturerStrIndex = NO_DESCRIPTOR,
.ProductStrIndex = NO_DESCRIPTOR,
@@ -110,7 +110,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 0x00,
.InterfaceNumber = INTERFACE_ID_Printer,
.AlternateSetting = 0x00,
.TotalEndpoints = 1,
@@ -126,7 +126,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_HID_Descriptor_HID_t), .Type = HID_DTYPE_HID},
.HIDSpec = VERSION_BCD(01.11),
.HIDSpec = VERSION_BCD(1,1,1),
.CountryCode = 0x00,
.TotalReportDescriptors = 1,
.HIDReportType = HID_DTYPE_Report,
+12 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -51,9 +51,18 @@
// Generic HID Interface
USB_Descriptor_Interface_t HID_Interface;
USB_HID_Descriptor_HID_t HID_VendorHID;
USB_Descriptor_Endpoint_t HID_ReportINEndpoint;
USB_Descriptor_Endpoint_t HID_ReportINEndpoint;
} USB_Descriptor_Configuration_t;
/** Enum for the device interface descriptor IDs within the device. Each interface descriptor
* should have a unique ID index associated with it, which can be used to refer to the
* interface from other descriptors.
*/
enum InterfaceDescriptors_t
{
INTERFACE_ID_Printer = 0, /**< Printer interface descriptor ID */
};
/* Macros: */
/** Endpoint address of the HID data IN endpoint. */
#define HID_IN_EPADDR (ENDPOINT_DIR_IN | 1)
File diff suppressed because it is too large Load Diff
@@ -1,6 +1,6 @@
"""
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
+1
View File
@@ -109,6 +109,7 @@
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="BootloaderHID.txt"/>
<build type="distribute" subtype="directory" value="HostLoaderApp"/>
<build type="distribute" subtype="directory" value="HostLoaderApp_Python"/>
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2011.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -44,7 +44,7 @@ USB_ClassInfo_MS_Device_t Disk_MS_Interface =
{
.Config =
{
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_MassStorage,
.DataINEndpoint =
{
.Address = MASS_STORAGE_IN_EPADDR,
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -57,6 +57,9 @@
* When the bootloader is running, the board's LED(s) will flash at regular intervals to distinguish the
* bootloader from the normal user application.
*
* \warning <b>THIS BOOTLOADER IS NOT SECURE.</b> Malicious entities can recover written data, even if the device
* lockbits are set.
*
* \section Sec_Installation Driver Installation
*
* This bootloader uses the Mass Storage drivers inbuilt into all modern operating systems, thus no additional
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+5 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -47,7 +47,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},
.USBSpecification = VERSION_BCD(01.10),
.USBSpecification = VERSION_BCD(1,1,0),
.Class = USB_CSCP_NoDeviceClass,
.SubClass = USB_CSCP_NoDeviceSubclass,
.Protocol = USB_CSCP_NoDeviceProtocol,
@@ -56,7 +56,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
.VendorID = 0x03EB,
.ProductID = 0x2045,
.ReleaseNumber = VERSION_BCD(00.01),
.ReleaseNumber = VERSION_BCD(0,0,1),
.ManufacturerStrIndex = NO_DESCRIPTOR,
.ProductStrIndex = NO_DESCRIPTOR,
@@ -91,7 +91,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_MassStorage,
.AlternateSetting = 0,
.TotalEndpoints = 2,
+12 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -68,6 +68,16 @@
USB_Descriptor_Endpoint_t MS_DataOutEndpoint;
} USB_Descriptor_Configuration_t;
/** Enum for the device interface descriptor IDs within the device. Each interface descriptor
* should have a unique ID index associated with it, which can be used to refer to the
* interface from other descriptors.
*/
enum InterfaceDescriptors_t
{
INTERFACE_ID_MassStorage = 0, /**< Mass storage interface descriptor ID */
};
/* Function Prototypes: */
uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue,
const uint8_t wIndex,
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+4 -4
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -274,10 +274,10 @@
/* Function Prototypes: */
#if defined(INCLUDE_FROM_VIRTUAL_FAT_C)
static uint8_t ReadEEPROMByte(const uint8_t* const Address) ATTR_NEVER_INLINE;
static uint8_t ReadEEPROMByte(const uint8_t* const Address) ATTR_NO_INLINE;
static void WriteEEPROMByte(uint8_t* const Address,
const uint8_t Data) ATTR_NEVER_INLINE;
const uint8_t Data) ATTR_NO_INLINE;
static void UpdateFAT12ClusterEntry(uint8_t* const FATTable,
const uint16_t Index,
+2
View File
@@ -136,6 +136,7 @@
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<build type="header-file" value="Config/AppConfig.h"/>
<build type="include-path" value="Lib"/>
<build type="header-file" value="Lib/VirtualFAT.h"/>
@@ -143,6 +144,7 @@
<build type="header-file" value="Lib/SCSI.h"/>
<build type="c-source" value="Lib/SCSI.c"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="BootloaderMassStorage.txt"/>
<require idref="lufa.common"/>
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2011 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -43,7 +43,7 @@ USB_ClassInfo_PRNT_Device_t TextOnly_Printer_Interface =
{
.Config =
{
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_Printer,
.DataINEndpoint =
{
.Address = PRINTER_IN_EPADDR,
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+8 -23
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -47,7 +47,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},
.USBSpecification = VERSION_BCD(01.10),
.USBSpecification = VERSION_BCD(1,1,0),
.Class = USB_CSCP_NoDeviceClass,
.SubClass = USB_CSCP_NoDeviceSubclass,
.Protocol = USB_CSCP_NoDeviceProtocol,
@@ -56,7 +56,7 @@ const USB_Descriptor_Device_t DeviceDescriptor =
.VendorID = 0x03EB,
.ProductID = 0x206B,
.ReleaseNumber = VERSION_BCD(00.01),
.ReleaseNumber = VERSION_BCD(0,0,1),
.ManufacturerStrIndex = STRING_ID_Manufacturer,
.ProductStrIndex = STRING_ID_Product,
@@ -91,7 +91,7 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_Printer,
.AlternateSetting = 0,
.TotalEndpoints = 2,
@@ -128,34 +128,19 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
* the string descriptor with index 0 (the first index). It is actually an array of 16-bit integers, which indicate
* via the language ID table available at USB.org what languages the device supports for its string descriptors.
*/
const USB_Descriptor_String_t LanguageString =
{
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},
.UnicodeString = {LANGUAGE_ID_ENG}
};
const USB_Descriptor_String_t LanguageString = USB_STRING_DESCRIPTOR_ARRAY(LANGUAGE_ID_ENG);
/** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable
* form, and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t ManufacturerString =
{
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},
.UnicodeString = L"Dean Camera"
};
const USB_Descriptor_String_t ManufacturerString = USB_STRING_DESCRIPTOR(L"Dean Camera");
/** Product descriptor string. This is a Unicode string containing the product's details in human readable form,
* and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t ProductString =
{
.Header = {.Size = USB_STRING_LEN(23), .Type = DTYPE_String},
.UnicodeString = L"LUFA Printer Bootloader"
};
const USB_Descriptor_String_t ProductString = USB_STRING_DESCRIPTOR(L"LUFA Printer Bootloader");
/** This function is called by the library when in device mode, and must be overridden (see library "USB Descriptors"
* documentation) by the application code so that the address and size of a requested descriptor can be given
+14 -5
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -66,15 +66,24 @@
USB_Descriptor_Endpoint_t Printer_DataOutEndpoint;
} USB_Descriptor_Configuration_t;
/** Enum for the device interface descriptor IDs within the device. Each string descriptor
* should have a unique ID index associated with it, which can be used to refer to the
* interface from other descriptors.
*/
enum InterfaceDescriptors_t
{
INTERFACE_ID_Printer = 0, /**< Printer interface descriptor ID */
};
/** Enum for the device string descriptor IDs within the device. Each string descriptor should
* have a unique ID index associated with it, which can be used to refer to the string from
* other descriptors.
*/
enum StringDescriptors_t
{
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
};
/* Function Prototypes: */
File diff suppressed because it is too large Load Diff
+1
View File
@@ -147,6 +147,7 @@
<build type="module-config" subtype="path" value="Config"/>
<build type="header-file" value="Config/LUFAConfig.h"/>
<build type="distribute" subtype="user-file" value="doxyfile"/>
<build type="distribute" subtype="user-file" value="BootloaderPrinter.txt"/>
<require idref="lufa.common"/>
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+4 -4
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -24,13 +24,13 @@ endif
# Need to special-case building without a per-project object directory
ifeq ($(OBJDIR),)
# If no target specified, force "clean all" and disallow parallel build
# If no target specified, force "clean all" and disallow parallel build
ifeq ($(MAKECMDGOALS),)
MAKECMDGOALS := clean all
.NOTPARALLEL:
endif
# If one of the targets is to build, force "clean" beforehand and disallow parallel build
# If one of the targets is to build, force "clean" beforehand and disallow parallel build
ifneq ($(findstring all, $(MAKECMDGOALS)),)
MAKECMDGOALS := clean $(MAKECMDGOALS)
.NOTPARALLEL:
@@ -42,5 +42,5 @@ endif
$(PROJECT_DIRECTORIES):
@$(MAKE) -C $@ $(MAKECMDGOALS)
.PHONY: $(PROJECT_DIRECTORIES)
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+4 -4
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -29,10 +29,10 @@ end:
makeboardlist:
@grep "BOARD_" $(patsubst %/,%,$(LUFA_PATH))/Common/BoardTypes.h | cut -d'#' -f2 | cut -d' ' -f2 | grep "BOARD_" > BoardList.txt
testboards:
@echo "buildtest:" > BuildMakefile
@while read line; \
do \
build_cfg=`grep "$$line " BoardDeviceMap.cfg | grep -v "#" | cut -d'=' -f2- | sed 's/ //g'`; \
@@ -50,7 +50,7 @@ testboards:
printf "\t$(MAKE) -f makefile.test clean elf MCU=%s ARCH=%s BOARD=%s\n\n" $$build_mcu $$build_arch $$build_board >> BuildMakefile; \
fi; \
done < BoardList.txt
$(MAKE) -f BuildMakefile buildtest
clean:
+5 -5
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -11,9 +11,9 @@
# Run "make help" for target help.
MCU =
ARCH =
BOARD =
MCU =
ARCH =
BOARD =
F_CPU = $(F_USB)
F_USB = 8000000
OPTIMIZATION = 1
@@ -24,4 +24,4 @@ CC_FLAGS = -Werror
DEBUG_LEVEL = 0
# Include LUFA build script makefiles
include $(LUFA_PATH)/Build/lufa_build.mk
include $(LUFA_PATH)/Build/lufa_build.mk
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+4 -4
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -25,10 +25,10 @@ begin:
end:
@echo Build test "BootloaderTest" complete.
@echo
testbootloaders:
@echo "buildtest:" > BuildMakefile
@while read line; \
do \
build_cfg=`echo $$line | grep -v "#" | sed 's/ //g'`; \
@@ -50,7 +50,7 @@ testbootloaders:
printf "\t$(MAKE) -C $(patsubst %/,%,$(LUFA_PATH))/../Bootloaders/%s/ clean elf ARCH=%s MCU=%s BOARD=%s FLASH_SIZE_KB=%s BOOT_SECTION_SIZE_KB=%s F_USB=%s000000 DEBUG_LEVEL=0\n\n" $$build_bootloader $$build_arch $$build_mcu $$build_board $$build_flashsize $$build_bootsize $$build_fusb >> BuildMakefile; \
fi; \
done < BootloaderDeviceMap.cfg
$(MAKE) -f BuildMakefile buildtest
clean:
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -35,7 +35,7 @@
.global main
main:
# Mandatory callback needed for base compile of the USB driver
.global CALLBACK_USB_GetDescriptor
CALLBACK_USB_GetDescriptor:
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -28,4 +28,4 @@
this software.
*/
#include "Modules.h"
#include "Modules.h"
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -28,4 +28,4 @@
this software.
*/
#include "Modules.h"
#include "Modules.h"
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+1 -1
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
+3 -3
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -36,7 +36,7 @@
main:
# Force code generation of the base USB stack
call USB_Init
# Mandatory callback needed for base compile of the USB driver
.global CALLBACK_USB_GetDescriptor
CALLBACK_USB_GetDescriptor:
+2 -2
View File
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
+2 -2
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -36,7 +36,7 @@ compile:
@echo Building SingleUSBModeTest for ARCH=XMEGA in device only mode...
$(MAKE) -f makefile.test clean elf ARCH=XMEGA MCU=atxmega128a1u CC_FLAGS='-D USB_DEVICE_ONLY'
@echo Building SingleUSBModeTest for ARCH=UC3 in device only mode...
$(MAKE) -f makefile.test clean elf ARCH=UC3 MCU=uc3a0256 CC_FLAGS='-D USB_DEVICE_ONLY'
+4 -4
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -11,8 +11,8 @@
# Run "make help" for target help.
MCU =
ARCH =
MCU =
ARCH =
BOARD = NONE
F_CPU = $(F_USB)
DEBUG_LEVEL = 0
@@ -66,4 +66,4 @@ C_FLAGS += -Wnested-externs
# Include LUFA build script makefiles
include $(LUFA_PATH)/Build/lufa_sources.mk
include $(LUFA_PATH)/Build/lufa_build.mk
include $(LUFA_PATH)/Build/lufa_build.mk
+3 -3
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -38,10 +38,10 @@ end:
@echo
%:
.PHONY: all begin end
# Include LUFA build script makefiles
include $(LUFA_PATH)/Build/lufa_core.mk
include $(LUFA_PATH)/Build/lufa_cppcheck.mk
include $(LUFA_PATH)/Build/lufa_cppcheck.mk
+2 -2
View File
@@ -1,6 +1,6 @@
#
# LUFA Library
# Copyright (C) Dean Camera, 2013.
# Copyright (C) Dean Camera, 2014.
#
# dean [at] fourwalledcubicle [dot] com
# www.lufa-lib.org
@@ -21,4 +21,4 @@ all:
$(MAKE) -C SingleUSBModeTest $@
$(MAKE) -C StaticAnalysisTest $@
@echo
@echo LUFA build test \"make $@\" operation complete.
@echo LUFA build test \"make $@\" operation complete.
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -44,8 +44,8 @@ USB_ClassInfo_Audio_Device_t Microphone_Audio_Interface =
{
.Config =
{
.ControlInterfaceNumber = 0,
.StreamingInterfaceNumber = 1,
.ControlInterfaceNumber = INTERFACE_ID_AudioControl,
.StreamingInterfaceNumber = INTERFACE_ID_AudioStream,
.DataINEndpoint =
{
.Address = AUDIO_STREAM_EPADDR,
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -33,10 +33,10 @@
*
* This is a header file which is be used to configure some of
* the application's compile time options, as an alternative to
* specifying the compile time constants supplied through a
* specifying the compile time constants supplied through a
* makefile or build system.
*
* For information on what each token does, refer to the
* For information on what each token does, refer to the
* \ref Sec_Options section of the application documentation.
*/
@@ -48,4 +48,4 @@
#define MICROPHONE_BIASED_TO_HALF_RAIL
#define USE_TEST_TONE
#endif
#endif
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -46,7 +46,7 @@ const USB_Descriptor_Device_t PROGMEM 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 PROGMEM DeviceDescriptor =
.VendorID = 0x03EB,
.ProductID = 0x2047,
.ReleaseNumber = VERSION_BCD(00.02),
.ReleaseNumber = VERSION_BCD(0,0,2),
.ManufacturerStrIndex = STRING_ID_Manufacturer,
.ProductStrIndex = STRING_ID_Product,
@@ -90,7 +90,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 0,
.InterfaceNumber = INTERFACE_ID_AudioControl,
.AlternateSetting = 0,
.TotalEndpoints = 0,
@@ -107,13 +107,13 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
.Header = {.Size = sizeof(USB_Audio_Descriptor_Interface_AC_t), .Type = DTYPE_CSInterface},
.Subtype = AUDIO_DSUBTYPE_CSInterface_Header,
.ACSpecification = VERSION_BCD(01.00),
.ACSpecification = VERSION_BCD(1,0,0),
.TotalLength = (sizeof(USB_Audio_Descriptor_Interface_AC_t) +
sizeof(USB_Audio_Descriptor_InputTerminal_t) +
sizeof(USB_Audio_Descriptor_OutputTerminal_t)),
.InCollection = 1,
.InterfaceNumber = 1,
.InterfaceNumber = INTERFACE_ID_AudioStream,
},
.Audio_InputTerminal =
@@ -150,7 +150,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 1,
.InterfaceNumber = INTERFACE_ID_AudioStream,
.AlternateSetting = 0,
.TotalEndpoints = 0,
@@ -166,7 +166,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
{
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},
.InterfaceNumber = 1,
.InterfaceNumber = INTERFACE_ID_AudioStream,
.AlternateSetting = 1,
.TotalEndpoints = 1,
@@ -246,34 +246,19 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
* the string descriptor with index 0 (the first index). It is actually an array of 16-bit integers, which indicate
* via the language ID table available at USB.org what languages the device supports for its string descriptors.
*/
const USB_Descriptor_String_t PROGMEM LanguageString =
{
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},
.UnicodeString = {LANGUAGE_ID_ENG}
};
const USB_Descriptor_String_t PROGMEM LanguageString = USB_STRING_DESCRIPTOR_ARRAY(LANGUAGE_ID_ENG);
/** Manufacturer descriptor string. This is a Unicode string containing the manufacturer's details in human readable
* form, and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t PROGMEM ManufacturerString =
{
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},
.UnicodeString = L"Dean Camera"
};
const USB_Descriptor_String_t PROGMEM ManufacturerString = USB_STRING_DESCRIPTOR(L"Dean Camera");
/** Product descriptor string. This is a Unicode string containing the product's details in human readable form,
* and is read out upon request by the host when the appropriate string ID is requested, listed in the Device
* Descriptor.
*/
const USB_Descriptor_String_t PROGMEM ProductString =
{
.Header = {.Size = USB_STRING_LEN(18), .Type = DTYPE_String},
.UnicodeString = L"LUFA Audio In Demo"
};
const USB_Descriptor_String_t PROGMEM ProductString = USB_STRING_DESCRIPTOR(L"LUFA Audio In Demo");
/** This function is called by the library when in device mode, and must be overridden (see library "USB Descriptors"
* documentation) by the application code so that the address and size of a requested descriptor can be given
@@ -1,13 +1,13 @@
/*
LUFA Library
Copyright (C) Dean Camera, 2013.
Copyright (C) Dean Camera, 2014.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
Copyright 2013 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Copyright 2014 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@ -75,15 +75,25 @@
USB_Audio_Descriptor_StreamEndpoint_Spc_t Audio_StreamEndpoint_SPC;
} USB_Descriptor_Configuration_t;
/** Enum for the device interface descriptor IDs within the device. Each interface descriptor
* should have a unique ID index associated with it, which can be used to refer to the
* interface from other descriptors.
*/
enum InterfaceDescriptors_t
{
INTERFACE_ID_AudioControl = 0, /**< Audio control interface descriptor ID */
INTERFACE_ID_AudioStream = 1, /**< Audio stream interface descriptor ID */
};
/** Enum for the device string descriptor IDs within the device. Each string descriptor should
* have a unique ID index associated with it, which can be used to refer to the string from
* other descriptors.
*/
enum StringDescriptors_t
{
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */
STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */
STRING_ID_Product = 2, /**< Product string ID */
};
/* Function Prototypes: */

Some files were not shown because too many files have changed in this diff Show More