diff options
Diffstat (limited to 'Bootloaders/DFU')
-rw-r--r-- | Bootloaders/DFU/Descriptors.c | 10 | ||||
-rw-r--r-- | Bootloaders/DFU/Descriptors.h | 11 |
2 files changed, 16 insertions, 5 deletions
diff --git a/Bootloaders/DFU/Descriptors.c b/Bootloaders/DFU/Descriptors.c index 3d70cf5a5..5901dad12 100644 --- a/Bootloaders/DFU/Descriptors.c +++ b/Bootloaders/DFU/Descriptors.c @@ -57,8 +57,8 @@ const USB_Descriptor_Device_t DeviceDescriptor = .ProductID = PRODUCT_ID_CODE, .ReleaseNumber = VERSION_BCD(00.00), - .ManufacturerStrIndex = 0x01, - .ProductStrIndex = 0x02, + .ManufacturerStrIndex = STRING_ID_Manufacturer, + .ProductStrIndex = STRING_ID_Product, .SerialNumStrIndex = NO_DESCRIPTOR, .NumberOfConfigurations = FIXED_NUM_CONFIGURATIONS @@ -175,17 +175,17 @@ uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, Size = sizeof(USB_Descriptor_Configuration_t); break; case DTYPE_String: - if (!(DescriptorNumber)) + if (DescriptorNumber == STRING_ID_Language) { Address = &LanguageString; Size = LanguageString.Header.Size; } - else if (DescriptorNumber == 0x01) + else if (DescriptorNumber == STRING_ID_Manufacturer) { Address = &ManufacturerString; Size = ManufacturerString.Header.Size; } - else if (DescriptorNumber == 0x02) + else if (DescriptorNumber == STRING_ID_Product) { Address = &ProductString; Size = ProductString.Header.Size; diff --git a/Bootloaders/DFU/Descriptors.h b/Bootloaders/DFU/Descriptors.h index 71ae30a5a..c33e388c0 100644 --- a/Bootloaders/DFU/Descriptors.h +++ b/Bootloaders/DFU/Descriptors.h @@ -164,6 +164,17 @@ USB_Descriptor_DFU_Functional_t DFU_Functional; } USB_Descriptor_Configuration_t; + /** Enum for the device string descriptor IDs within the device. Each string descriptor should + * have a unique ID index associated with it, which can be used to refer to the string from + * other descriptors. + */ + enum StringDescriptors_t + { + STRING_ID_Language = 0, /**< Supported Languages string descriptor ID (must be zero) */ + STRING_ID_Manufacturer = 1, /**< Manufacturer string ID */ + STRING_ID_Product = 2, /**< Product string ID */ + }; + /* Function Prototypes: */ uint16_t CALLBACK_USB_GetDescriptor(const uint16_t wValue, const uint8_t wIndex, |