aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2010-05-30 07:29:18 +0000
committerDean Camera <dean@fourwalledcubicle.com>2010-05-30 07:29:18 +0000
commite95c96ea20117dbf43bd37e4abb5bad974f30816 (patch)
tree70dd194511980da0894818d2c2c79b5cb22983a1 /LUFA/Drivers/USB
parent328ed71ce728de4a6633d981441ac9837c9cd62a (diff)
downloadlufa-e95c96ea20117dbf43bd37e4abb5bad974f30816.tar.gz
lufa-e95c96ea20117dbf43bd37e4abb5bad974f30816.tar.bz2
lufa-e95c96ea20117dbf43bd37e4abb5bad974f30816.zip
Fixed internal device serial not being accessible on the ATMEGAXXU2 AVRs (thanks to Axel Rohde).
Diffstat (limited to 'LUFA/Drivers/USB')
-rw-r--r--LUFA/Drivers/USB/HighLevel/StdDescriptors.h5
-rw-r--r--LUFA/Drivers/USB/LowLevel/DevChapter9.c4
-rw-r--r--LUFA/Drivers/USB/LowLevel/DevChapter9.h2
3 files changed, 7 insertions, 4 deletions
diff --git a/LUFA/Drivers/USB/HighLevel/StdDescriptors.h b/LUFA/Drivers/USB/HighLevel/StdDescriptors.h
index 9764b45ad..db40bc574 100644
--- a/LUFA/Drivers/USB/HighLevel/StdDescriptors.h
+++ b/LUFA/Drivers/USB/HighLevel/StdDescriptors.h
@@ -80,7 +80,10 @@
*/
#define NO_DESCRIPTOR 0
- #if (!defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))) || defined(__DOXYGEN__)
+ #if (!defined(NO_INTERNAL_SERIAL) && \
+ (defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1287__) || \
+ defined(__AVR_ATmega32U6__) || defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) || \
+ defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega8U2__)))
/** String descriptor index for the device's unique serial number string descriptor within the device.
* This unique serial number is used by the host to associate resources to the device (such as drivers or COM port
* number allocations) to a device regardless of the port it is plugged in to on the host. Some USB AVRs contain
diff --git a/LUFA/Drivers/USB/LowLevel/DevChapter9.c b/LUFA/Drivers/USB/LowLevel/DevChapter9.c
index 1529b6f13..544531b8d 100644
--- a/LUFA/Drivers/USB/LowLevel/DevChapter9.c
+++ b/LUFA/Drivers/USB/LowLevel/DevChapter9.c
@@ -208,7 +208,7 @@ void USB_Device_GetConfiguration(void)
Endpoint_ClearStatusStage();
}
-#if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))
+#if !defined(NO_INTERNAL_SERIAL) && (USE_INTERNAL_SERIAL != NO_DESCRIPTOR)
static char USB_Device_NibbleToASCII(uint8_t Nibble)
{
Nibble = ((Nibble & 0x0F) + '0');
@@ -261,7 +261,7 @@ static void USB_Device_GetDescriptor(void)
uint8_t DescriptorAddressSpace;
#endif
- #if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))
+ #if !defined(NO_INTERNAL_SERIAL) && (USE_INTERNAL_SERIAL != NO_DESCRIPTOR)
if (USB_ControlRequest.wValue == ((DTYPE_String << 8) | USE_INTERNAL_SERIAL))
{
USB_Device_GetInternalSerialDescriptor();
diff --git a/LUFA/Drivers/USB/LowLevel/DevChapter9.h b/LUFA/Drivers/USB/LowLevel/DevChapter9.h
index 7bafcbfb3..41246ec38 100644
--- a/LUFA/Drivers/USB/LowLevel/DevChapter9.h
+++ b/LUFA/Drivers/USB/LowLevel/DevChapter9.h
@@ -149,7 +149,7 @@
static void USB_Device_GetStatus(void);
static void USB_Device_ClearSetFeature(void);
- #if !defined(NO_INTERNAL_SERIAL) && (defined(USB_SERIES_6_AVR) || defined(USB_SERIES_7_AVR))
+ #if !defined(NO_INTERNAL_SERIAL) && (USE_INTERNAL_SERIAL != NO_DESCRIPTOR)
static char USB_Device_NibbleToASCII(uint8_t Nibble) ATTR_ALWAYS_INLINE;
static void USB_Device_GetInternalSerialDescriptor(void);
#endif