/*\r
LUFA Library\r
- Copyright (C) Dean Camera, 2009.\r
+ Copyright (C) Dean Camera, 2010.\r
\r
dean [at] fourwalledcubicle [dot] com\r
www.fourwalledcubicle.com\r
*/\r
\r
/*\r
- Copyright 2009 Dean Camera (dean [at] fourwalledcubicle [dot] com)\r
-\r
- Permission to use, copy, modify, and distribute this software\r
- and its documentation for any purpose and without fee is hereby\r
- granted, provided that the above copyright notice appear in all\r
- copies and that both that the copyright notice and this\r
- permission notice and warranty disclaimer appear in supporting\r
- documentation, and that the name of the author not be used in\r
- advertising or publicity pertaining to distribution of the\r
+ Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com)\r
+\r
+ Permission to use, copy, modify, distribute, and sell this \r
+ software and its documentation for any purpose is hereby granted\r
+ without fee, provided that the above copyright notice appear in \r
+ all copies and that both that the copyright notice and this\r
+ permission notice and warranty disclaimer appear in supporting \r
+ documentation, and that the name of the author not be used in \r
+ advertising or publicity pertaining to distribution of the \r
software without specific, written prior permission.\r
\r
The author disclaim all warranties with regard to this\r
#include <LUFA/Drivers/USB/USB.h>\r
\r
/* Macros: */\r
+ #if defined(__AVR_AT90USB1287__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x97\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_AT90USB647__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x96\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_AT90USB1286__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x97\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_AT90USB646__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x96\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_ATmega32U6__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x95\r
+ #define AVR_SIGNATURE_3 0x88\r
+ #elif defined(__AVR_ATmega32U4__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x95\r
+ #define AVR_SIGNATURE_3 0x87\r
+ #elif defined(__AVR_ATmega16U4__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x94\r
+ #define AVR_SIGNATURE_3 0x88\r
+ #elif defined(__AVR_ATmega32U2__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x94\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_ATmega16U2__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x94\r
+ #define AVR_SIGNATURE_3 0x89\r
+ #elif defined(__AVR_AT90USB162__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x94\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_ATmega8U2__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x93\r
+ #define AVR_SIGNATURE_3 0x82\r
+ #elif defined(__AVR_AT90USB82__)\r
+ #define AVR_SIGNATURE_1 0x1E\r
+ #define AVR_SIGNATURE_2 0x93\r
+ #define AVR_SIGNATURE_3 0x89\r
+ #else\r
+ #error The selected AVR part is not currently supported by this bootloader.\r
+ #endif\r
+\r
/** Structure for a CDC class Functional descriptor, with a given data size. This is used instead of a\r
* type define so that the same macro can be used for functional descriptors of varying data lengths,\r
* while allowing the sizeof() operator to return correct results.\r
*\r
- * \param DataSize Size of the functional descriptor's data payload, in bytes\r
+ * \param[in] DataSize Size of the functional descriptor's data payload, in bytes\r
*/\r
#define CDC_FUNCTIONAL_DESCRIPTOR(DataSize) \\r
struct \\r
} USB_Descriptor_Configuration_t;\r
\r
/* Function Prototypes: */\r
- uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress)\r
- ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3);\r
+ uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress)\r
+ ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3);\r
\r
#endif\r