X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/c1a1b6eeecb375259968ef6d989833312047f2d8..d26a9ed5fd6fc60a0dfa61d04f5ae2bd7163a85d:/Bootloaders/DFU/Descriptors.h diff --git a/Bootloaders/DFU/Descriptors.h b/Bootloaders/DFU/Descriptors.h index b6d1a2af3..32d58285b 100644 --- a/Bootloaders/DFU/Descriptors.h +++ b/Bootloaders/DFU/Descriptors.h @@ -1,21 +1,21 @@ /* LUFA Library - Copyright (C) Dean Camera, 2009. + Copyright (C) Dean Camera, 2010. dean [at] fourwalledcubicle [dot] com www.fourwalledcubicle.com */ /* - Copyright 2009 Dean Camera (dean [at] fourwalledcubicle [dot] com) - - Permission to use, copy, modify, and distribute this software - and its documentation for any purpose and without fee is hereby - granted, provided that the above copyright notice appear in all - copies and that both that the copyright notice and this - permission notice and warranty disclaimer appear in supporting - documentation, and that the name of the author not be used in - advertising or publicity pertaining to distribution of the + Copyright 2010 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 + without fee, provided that the above copyright notice appear in + all copies and that both that the copyright notice and this + permission notice and warranty disclaimer appear in supporting + documentation, and that the name of the author not be used in + advertising or publicity pertaining to distribution of the software without specific, written prior permission. The author disclaim all warranties with regard to this @@ -44,11 +44,11 @@ #define DTYPE_DFUFunctional 0x21 /** DFU attribute mask, indicating that the DFU device will detach and re-attach when a DFU_DETACH - * command is issued, rather than the host issing a USB Reset. + * command is issued, rather than the host issuing a USB Reset. */ #define ATTR_WILL_DETATCH (1 << 3) - /** DFU attribute mask, indicating that the DFU device can communicate during the manefestation phase + /** DFU attribute mask, indicating that the DFU device can communicate during the manifestation phase * (memory programming phase). */ #define ATTR_MANEFESTATION_TOLLERANT (1 << 2) @@ -63,60 +63,66 @@ */ #define ATTR_CAN_DOWNLOAD (1 << 0) - #if defined(__AVR_AT90USB1286__) + #if defined(__AVR_AT90USB1287__) #define PRODUCT_ID_CODE 0x2FFB - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x97 - #define SIGNATURE_BYTE_3 0x82 - #elif defined(__AVR_AT90USB1287__) + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x97 + #define AVR_SIGNATURE_3 0x82 + #elif defined(__AVR_AT90USB647__) + #define PRODUCT_ID_CODE 0x2FF9 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x96 + #define AVR_SIGNATURE_3 0x82 + #elif defined(__AVR_AT90USB1286__) #define PRODUCT_ID_CODE 0x2FFB - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x97 - #define SIGNATURE_BYTE_3 0x82 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x97 + #define AVR_SIGNATURE_3 0x82 #elif defined(__AVR_AT90USB646__) #define PRODUCT_ID_CODE 0x2FF9 - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x96 - #define SIGNATURE_BYTE_3 0x82 - #elif defined(__AVR_AT90USB647__) - #define PRODUCT_ID_CODE 0x2FF9 - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x96 - #define SIGNATURE_BYTE_3 0x82 - #elif defined(__AVR_AT90USB162__) - #define PRODUCT_ID_CODE 0x2FFA - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x94 - #define SIGNATURE_BYTE_3 0x82 - #elif defined(__AVR_AT90USB82__) - #define PRODUCT_ID_CODE 0x2FF7 - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x94 - #define SIGNATURE_BYTE_3 0x82 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x96 + #define AVR_SIGNATURE_3 0x82 #elif defined(__AVR_ATmega32U6__) #define PRODUCT_ID_CODE 0x2FFB - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x95 - #define SIGNATURE_BYTE_3 0x88 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x95 + #define AVR_SIGNATURE_3 0x88 #elif defined(__AVR_ATmega32U4__) #define PRODUCT_ID_CODE 0x2FF4 - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x95 - #define SIGNATURE_BYTE_3 0x87 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x95 + #define AVR_SIGNATURE_3 0x87 #elif defined(__AVR_ATmega16U4__) #define PRODUCT_ID_CODE 0x2FF3 - - #define SIGNATURE_BYTE_1 0x1E - #define SIGNATURE_BYTE_2 0x94 - #define SIGNATURE_BYTE_3 0x88 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x94 + #define AVR_SIGNATURE_3 0x88 + #elif defined(__AVR_ATmega32U2__) + #define PRODUCT_ID_CODE 0x2FF0 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x94 + #define AVR_SIGNATURE_3 0x82 + #elif defined(__AVR_ATmega16U2__) + #define PRODUCT_ID_CODE 0x2FEF + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x94 + #define AVR_SIGNATURE_3 0x89 + #elif defined(__AVR_AT90USB162__) + #define PRODUCT_ID_CODE 0x2FFA + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x94 + #define AVR_SIGNATURE_3 0x82 + #elif defined(__AVR_ATmega8U2__) + #define PRODUCT_ID_CODE 0x2FF7 + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x93 + #define AVR_SIGNATURE_3 0x82 + #elif defined(__AVR_AT90USB82__) + #define PRODUCT_ID_CODE 0x2FEE + #define AVR_SIGNATURE_1 0x1E + #define AVR_SIGNATURE_2 0x93 + #define AVR_SIGNATURE_3 0x89 #else #error The selected AVR part is not currently supported by this bootloader. #endif @@ -136,7 +142,7 @@ uint8_t Attributes; /**< DFU device attributes, a mask comprising of the * ATTR_* macros listed in this source file */ - uint16_t DetatchTimeout; /**< Timeout in milliseconds between a USB_DETACH + uint16_t DetachTimeout; /**< Timeout in milliseconds between a USB_DETACH * command being issued and the device detaching * from the USB bus */ @@ -160,7 +166,7 @@ } USB_Descriptor_Configuration_t; /* Function Prototypes: */ - uint16_t USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress) - ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3); + uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, void** const DescriptorAddress) + ATTR_WARN_UNUSED_RESULT ATTR_NON_NULL_PTR_ARG(3); #endif