aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2009-04-07 04:19:57 +0000
committerDean Camera <dean@fourwalledcubicle.com>2009-04-07 04:19:57 +0000
commitcb7884da506096352ad82a1317b998813b74f4f8 (patch)
tree0ae404bad74a807ee2d3122f0410f414f38c5df9
parent557a945ba1851bc8d1669bd034464047f50b6691 (diff)
downloadlufa-cb7884da506096352ad82a1317b998813b74f4f8.tar.gz
lufa-cb7884da506096352ad82a1317b998813b74f4f8.tar.bz2
lufa-cb7884da506096352ad82a1317b998813b74f4f8.zip
Added preprocessor checks and documentation to the bootloaders giving information about missing SIGNATURE_x defines due to outdated avr-libc versions.
-rw-r--r--Bootloaders/CDC/BootloaderCDC.h5
-rw-r--r--Bootloaders/CDC/BootloaderCDC.txt13
-rw-r--r--Bootloaders/DFU/BootloaderDFU.h7
-rw-r--r--Bootloaders/DFU/BootloaderDFU.txt7
-rw-r--r--Demos/Device/MassStorage/MassStorage.c2
-rw-r--r--Demos/Device/RNDISEthernet/RNDIS.h4
-rw-r--r--Demos/Device/RNDISEthernet/RNDISEthernet.c4
-rw-r--r--LUFA/ChangeLog.txt4
8 files changed, 36 insertions, 10 deletions
diff --git a/Bootloaders/CDC/BootloaderCDC.h b/Bootloaders/CDC/BootloaderCDC.h
index dce84a5f8..7669b836c 100644
--- a/Bootloaders/CDC/BootloaderCDC.h
+++ b/Bootloaders/CDC/BootloaderCDC.h
@@ -48,6 +48,11 @@
#include <LUFA/Drivers/USB/USB.h> // USB Functionality
+ /* Preprocessor Checks: */
+ #if !defined(SIGNATURE_0) || !defined(SIGNATURE_1) || !defined(SIGNATURE_2)
+ #error Device signature byte constants are not defined due to outdated avr-libc version. See demo documentation.
+ #endif
+
/* Macros: */
/** CDC Class Specific request to get the line encoding on a CDC-ACM virtual serial port, including the
* baud rate, parity, stop bits and data bits.
diff --git a/Bootloaders/CDC/BootloaderCDC.txt b/Bootloaders/CDC/BootloaderCDC.txt
index 1f8970d57..1122e73ae 100644
--- a/Bootloaders/CDC/BootloaderCDC.txt
+++ b/Bootloaders/CDC/BootloaderCDC.txt
@@ -50,9 +50,16 @@
*
* <table>
* <tr>
- * <td>
- * None
- * </td>
+ * <td><b>Define Name:</b></td>
+ * <td><b>Location:</b></td>
+ * <td><b>Description:</b></td>
+ * </tr>
+ * <tr>
+ * <td>SIGNATURE_0, SIGNATURE_1, SIGNATURE_2</td>
+ * <td>Makefile CDEFS</td>
+ * <td>AVR part signature bytes. These are normally defined as part of the AVR device header files in recent avr-libc
+ * distributions. If your avr-libc library is out of date and does not define these values, you can define them
+ * manually in the makefile CDEFS.</td>
* </tr>
* </table>
*/ \ No newline at end of file
diff --git a/Bootloaders/DFU/BootloaderDFU.h b/Bootloaders/DFU/BootloaderDFU.h
index d0a825443..e996f2b79 100644
--- a/Bootloaders/DFU/BootloaderDFU.h
+++ b/Bootloaders/DFU/BootloaderDFU.h
@@ -48,7 +48,12 @@
#include "Descriptors.h"
#include <LUFA/Drivers/USB/USB.h> // USB Functionality
-
+
+ /* Preprocessor Checks: */
+ #if !defined(SIGNATURE_0) || !defined(SIGNATURE_1) || !defined(SIGNATURE_2)
+ #error Device signature byte constants are not defined due to outdated avr-libc version. See demo documentation.
+ #endif
+
/* Macros: */
/** Configuration define. Define this token to true to case the bootloader to reject all memory commands
* until a memory erase has been performed. When used in conjunction with the lockbits of the AVR, this
diff --git a/Bootloaders/DFU/BootloaderDFU.txt b/Bootloaders/DFU/BootloaderDFU.txt
index 7107cc123..44158ed07 100644
--- a/Bootloaders/DFU/BootloaderDFU.txt
+++ b/Bootloaders/DFU/BootloaderDFU.txt
@@ -73,5 +73,12 @@
* erase has been perfomed. This can be used in conjunction with the AVR's lockbits to prevent the AVRs firmware from
* being dumped by unauthorized persons.</td>
* </tr>
+ * <tr>
+ * <td>SIGNATURE_0, SIGNATURE_1, SIGNATURE_2</td>
+ * <td>Makefile CDEFS</td>
+ * <td>AVR part signature bytes. These are normally defined as part of the AVR device header files in recent avr-libc
+ * distributions. If your avr-libc library is out of date and does not define these values, you can define them
+ * manually in the makefile CDEFS.</td>
+ * </tr>
* </table>
*/ \ No newline at end of file
diff --git a/Demos/Device/MassStorage/MassStorage.c b/Demos/Device/MassStorage/MassStorage.c
index 403264835..56bc19a94 100644
--- a/Demos/Device/MassStorage/MassStorage.c
+++ b/Demos/Device/MassStorage/MassStorage.c
@@ -386,7 +386,7 @@ STREAM_CALLBACK(AbortOnMassStoreReset)
/** ISR for the general Pipe/Endpoint interrupt vector. This ISR fires when a control request has been issued to the control endpoint,
* so that the request can be processed. As several elements of the Mass Storage implementation require asynchronous control requests
* (such as endpoint stall clearing and Mass Storage Reset requests during data transfers) this is done via interrupts rather than
- * polling.
+ * polling so that they can be processed regardless of the rest of the application's state.
*/
ISR(ENDPOINT_PIPE_vect, ISR_BLOCK)
{
diff --git a/Demos/Device/RNDISEthernet/RNDIS.h b/Demos/Device/RNDISEthernet/RNDIS.h
index 0d240ac4e..88c9a9eb9 100644
--- a/Demos/Device/RNDISEthernet/RNDIS.h
+++ b/Demos/Device/RNDISEthernet/RNDIS.h
@@ -55,10 +55,10 @@
#define REMOTE_NDIS_VERSION_MINOR 0x00
/** RNDIS request to issue a host-to-device NDIS command */
- #define SEND_ENCAPSULATED_COMMAND 0x00
+ #define REQ_SendEncapsulatedCommand 0x00
/** RNDIS request to issue a device-to-host NDIS response */
- #define GET_ENCAPSULATED_RESPONSE 0x01
+ #define REQ_GetEncapsulatedResponse 0x01
/* Enums: */
/** Enum for the possible NDIS adapter states. */
diff --git a/Demos/Device/RNDISEthernet/RNDISEthernet.c b/Demos/Device/RNDISEthernet/RNDISEthernet.c
index 98863a113..78c77c8eb 100644
--- a/Demos/Device/RNDISEthernet/RNDISEthernet.c
+++ b/Demos/Device/RNDISEthernet/RNDISEthernet.c
@@ -158,7 +158,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
/* Process RNDIS class commands */
switch (bRequest)
{
- case SEND_ENCAPSULATED_COMMAND:
+ case REQ_SendEncapsulatedCommand:
if (bmRequestType == (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE))
{
/* Clear the SETUP packet, ready for data transfer */
@@ -175,7 +175,7 @@ EVENT_HANDLER(USB_UnhandledControlPacket)
}
break;
- case GET_ENCAPSULATED_RESPONSE:
+ case REQ_GetEncapsulatedResponse:
if (bmRequestType == (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE))
{
/* Check if a response to the last message is ready */
diff --git a/LUFA/ChangeLog.txt b/LUFA/ChangeLog.txt
index b4ecc8951..0b15df0b2 100644
--- a/LUFA/ChangeLog.txt
+++ b/LUFA/ChangeLog.txt
@@ -17,11 +17,13 @@
* - Added new PIMA_DATA_SIZE() define to the Still Image Host demo
* - Add call to MassStore_WaitForDataReceived() in MassStore_GetReturnedStatus() to ensure that the CSW has been received in the
* extended MSC timeout period before continuing, to prevent long processing delays from causing the MassStore_GetReturnedStatus()
- * to early-abort
+ * to early-abort (thanks to Dmitry Maksimov)
* - Move StdRequestType.h, StreamCallbacks.h, USBMode.h from the LowLevel USB driver directory to the HighLevel USB driver directory,
* where they are more suited
* - Removed all binary constants and replaced with decimal or hexadecimal constants so that unpatched GCC compilers can still build the
* code without having to be itself patched and recompiled first
+ * - Added preprocessor checks and documentation to the bootloaders giving information about missing SIGNATURE_x defines due to
+ * outdated avr-libc versions.
*
* \section Sec_ChangeLog090401 Version 090401
*