diff options
Diffstat (limited to 'Demos/Device')
-rw-r--r-- | Demos/Device/ClassDriver/CDC/Descriptors.h | 4 | ||||
-rw-r--r-- | Demos/Device/ClassDriver/DualCDC/Descriptors.h | 4 | ||||
-rw-r--r-- | Demos/Device/ClassDriver/MassStorage/Descriptors.h | 7 | ||||
-rw-r--r-- | Demos/Device/ClassDriver/USBtoSerial/Descriptors.h | 4 | ||||
-rw-r--r-- | Demos/Device/LowLevel/CDC/Descriptors.c | 2 | ||||
-rw-r--r-- | Demos/Device/LowLevel/CDC/Descriptors.h | 4 | ||||
-rw-r--r-- | Demos/Device/LowLevel/DualCDC/Descriptors.c | 2 | ||||
-rw-r--r-- | Demos/Device/LowLevel/DualCDC/Descriptors.h | 4 | ||||
-rw-r--r-- | Demos/Device/LowLevel/MassStorage/Descriptors.c | 20 | ||||
-rw-r--r-- | Demos/Device/LowLevel/MassStorage/Descriptors.h | 4 | ||||
-rw-r--r-- | Demos/Device/LowLevel/USBtoSerial/Descriptors.c | 2 | ||||
-rw-r--r-- | Demos/Device/LowLevel/USBtoSerial/Descriptors.h | 4 |
12 files changed, 38 insertions, 23 deletions
diff --git a/Demos/Device/ClassDriver/CDC/Descriptors.h b/Demos/Device/ClassDriver/CDC/Descriptors.h index 33ceab9c5..a764b2b32 100644 --- a/Demos/Device/ClassDriver/CDC/Descriptors.h +++ b/Demos/Device/ClassDriver/CDC/Descriptors.h @@ -41,6 +41,10 @@ #include <LUFA/Drivers/USB/USB.h>
#include <LUFA/Drivers/USB/Class/CDC.h>
+
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
/* Macros: */
/** Endpoint number of the CDC device-to-host notification IN endpoint. */
diff --git a/Demos/Device/ClassDriver/DualCDC/Descriptors.h b/Demos/Device/ClassDriver/DualCDC/Descriptors.h index 49befad38..739303edd 100644 --- a/Demos/Device/ClassDriver/DualCDC/Descriptors.h +++ b/Demos/Device/ClassDriver/DualCDC/Descriptors.h @@ -42,6 +42,10 @@ #include <LUFA/Drivers/USB/USB.h>
#include <LUFA/Drivers/USB/Class/CDC.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
+
/* Macros: */
/** Endpoint number of the first CDC interface's device-to-host notification IN endpoint. */
#define CDC1_NOTIFICATION_EPNUM 3
diff --git a/Demos/Device/ClassDriver/MassStorage/Descriptors.h b/Demos/Device/ClassDriver/MassStorage/Descriptors.h index 0fa147b75..5cf653a56 100644 --- a/Demos/Device/ClassDriver/MassStorage/Descriptors.h +++ b/Demos/Device/ClassDriver/MassStorage/Descriptors.h @@ -37,9 +37,14 @@ #define _DESCRIPTORS_H_
/* Includes: */
+ #include <avr/pgmspace.h>
+
#include <LUFA/Drivers/USB/USB.h>
+ #include <LUFA/Drivers/USB/Class/MassStorage.h>
- #include <avr/pgmspace.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
/* Macros: */
/** Endpoint number of the Mass Storage device-to-host data IN endpoint. */
diff --git a/Demos/Device/ClassDriver/USBtoSerial/Descriptors.h b/Demos/Device/ClassDriver/USBtoSerial/Descriptors.h index 730acc601..f78f395a3 100644 --- a/Demos/Device/ClassDriver/USBtoSerial/Descriptors.h +++ b/Demos/Device/ClassDriver/USBtoSerial/Descriptors.h @@ -42,6 +42,10 @@ #include <LUFA/Drivers/USB/USB.h>
#include <LUFA/Drivers/USB/Class/CDC.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
+
/* Macros: */
/** Endpoint number of the CDC device-to-host notification IN endpoint. */
#define CDC_NOTIFICATION_EPNUM 2
diff --git a/Demos/Device/LowLevel/CDC/Descriptors.c b/Demos/Device/LowLevel/CDC/Descriptors.c index 03e688277..581c1c407 100644 --- a/Demos/Device/LowLevel/CDC/Descriptors.c +++ b/Demos/Device/LowLevel/CDC/Descriptors.c @@ -59,7 +59,7 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor = .ManufacturerStrIndex = 0x01,
.ProductStrIndex = 0x02,
- .SerialNumStrIndex = NO_DESCRIPTOR,
+ .SerialNumStrIndex = USE_INTERNAL_SERIAL,
.NumberOfConfigurations = 1
};
diff --git a/Demos/Device/LowLevel/CDC/Descriptors.h b/Demos/Device/LowLevel/CDC/Descriptors.h index bf9e7df1d..a3d101e8b 100644 --- a/Demos/Device/LowLevel/CDC/Descriptors.h +++ b/Demos/Device/LowLevel/CDC/Descriptors.h @@ -41,6 +41,10 @@ #include <avr/pgmspace.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
+
/* Macros: */
/** Macro to define a CDC class-specific functional descriptor. CDC functional descriptors have a
* uniform structure but variable sized data payloads, thus cannot be represented accurately by
diff --git a/Demos/Device/LowLevel/DualCDC/Descriptors.c b/Demos/Device/LowLevel/DualCDC/Descriptors.c index 64aed7d5f..d3710c1b4 100644 --- a/Demos/Device/LowLevel/DualCDC/Descriptors.c +++ b/Demos/Device/LowLevel/DualCDC/Descriptors.c @@ -59,7 +59,7 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor = .ManufacturerStrIndex = 0x01,
.ProductStrIndex = 0x02,
- .SerialNumStrIndex = NO_DESCRIPTOR,
+ .SerialNumStrIndex = USE_INTERNAL_SERIAL,
.NumberOfConfigurations = 1
};
diff --git a/Demos/Device/LowLevel/DualCDC/Descriptors.h b/Demos/Device/LowLevel/DualCDC/Descriptors.h index aa95b8a4c..781ba5c31 100644 --- a/Demos/Device/LowLevel/DualCDC/Descriptors.h +++ b/Demos/Device/LowLevel/DualCDC/Descriptors.h @@ -41,6 +41,10 @@ #include <avr/pgmspace.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
+
/* Macros: */
/** Macro to define a CDC class-specific functional descriptor. CDC functional descriptors have a
* uniform structure but variable sized data payloads, thus cannot be represented accurately by
diff --git a/Demos/Device/LowLevel/MassStorage/Descriptors.c b/Demos/Device/LowLevel/MassStorage/Descriptors.c index 6c02a6c55..13d18a69d 100644 --- a/Demos/Device/LowLevel/MassStorage/Descriptors.c +++ b/Demos/Device/LowLevel/MassStorage/Descriptors.c @@ -59,7 +59,7 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor = .ManufacturerStrIndex = 0x01,
.ProductStrIndex = 0x02,
- .SerialNumStrIndex = 0x03,
+ .SerialNumStrIndex = USE_INTERNAL_SERIAL,
.NumberOfConfigurations = 1
};
@@ -156,20 +156,6 @@ USB_Descriptor_String_t PROGMEM ProductString = .UnicodeString = L"LUFA Mass Storage Demo"
};
-/** Serial number descriptor string. This is a Unicode string containing a string of HEX characters at least 12
- * digits in length to uniquely identify a device when concatenated with the device's Vendor and Product IDs. By
- * using the unique serial number string to identify a device, the device drivers do not need to be reinstalled
- * each time the device is inserted into a different USB port on the same system. <b>This should be unique between
- * devices, or conflicts will occur if two devices sharing the same serial number are inserted into the same system
- * at the same time.</b>
- */
-USB_Descriptor_String_t PROGMEM SerialNumberString =
-{
- .Header = {.Size = USB_STRING_LEN(12), .Type = DTYPE_String},
-
- .UnicodeString = L"000000000000"
-};
-
/** 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
* to the USB library. When the device receives a Get Descriptor request on the control endpoint, this function
@@ -209,10 +195,6 @@ uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, Address = (void*)&ProductString;
Size = pgm_read_byte(&ProductString.Header.Size);
break;
- case 0x03:
- Address = (void*)&SerialNumberString;
- Size = pgm_read_byte(&SerialNumberString.Header.Size);
- break;
}
break;
diff --git a/Demos/Device/LowLevel/MassStorage/Descriptors.h b/Demos/Device/LowLevel/MassStorage/Descriptors.h index 0fa147b75..9b9dd7d31 100644 --- a/Demos/Device/LowLevel/MassStorage/Descriptors.h +++ b/Demos/Device/LowLevel/MassStorage/Descriptors.h @@ -41,6 +41,10 @@ #include <avr/pgmspace.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
+
/* Macros: */
/** Endpoint number of the Mass Storage device-to-host data IN endpoint. */
#define MASS_STORAGE_IN_EPNUM 3
diff --git a/Demos/Device/LowLevel/USBtoSerial/Descriptors.c b/Demos/Device/LowLevel/USBtoSerial/Descriptors.c index 088ab5940..c586d68cc 100644 --- a/Demos/Device/LowLevel/USBtoSerial/Descriptors.c +++ b/Demos/Device/LowLevel/USBtoSerial/Descriptors.c @@ -59,7 +59,7 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor = .ManufacturerStrIndex = 0x01,
.ProductStrIndex = 0x02,
- .SerialNumStrIndex = NO_DESCRIPTOR,
+ .SerialNumStrIndex = USE_INTERNAL_SERIAL,
.NumberOfConfigurations = 1
};
diff --git a/Demos/Device/LowLevel/USBtoSerial/Descriptors.h b/Demos/Device/LowLevel/USBtoSerial/Descriptors.h index bf9e7df1d..a3d101e8b 100644 --- a/Demos/Device/LowLevel/USBtoSerial/Descriptors.h +++ b/Demos/Device/LowLevel/USBtoSerial/Descriptors.h @@ -41,6 +41,10 @@ #include <avr/pgmspace.h>
+ #if (USE_INTERNAL_SERIAL == NO_DESCRIPTOR)
+ #warning USE_INTERNAL_SERIAL is not available on this AVR - please manually construct a device serial descriptor.
+ #endif
+
/* Macros: */
/** Macro to define a CDC class-specific functional descriptor. CDC functional descriptors have a
* uniform structure but variable sized data payloads, thus cannot be represented accurately by
|