diff options
Diffstat (limited to 'usb/device/dfu/dfu_desc.c')
-rw-r--r-- | usb/device/dfu/dfu_desc.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/usb/device/dfu/dfu_desc.c b/usb/device/dfu/dfu_desc.c index 6c27c2e..c428e3a 100644 --- a/usb/device/dfu/dfu_desc.c +++ b/usb/device/dfu/dfu_desc.c @@ -1,4 +1,6 @@ +#include <unistd.h> + #include <usb/common/core/USBGenericDescriptor.h> #include <usb/common/core/USBDeviceDescriptor.h> #include <usb/common/core/USBConfigurationDescriptor.h> @@ -32,7 +34,11 @@ static const USBDeviceDescriptor fsDevice = { .bcdDevice = BOARD_USB_RELEASE, .iManufacturer = STR_MANUF, .iProduct = STR_PROD, +#ifdef BOARD_USB_SERIAL .iSerialNumber = STR_SERIAL, +#else + .iSerialNumber = 0, +#endif .bNumConfigurations = 1, }; @@ -84,9 +90,16 @@ const struct dfu_desc dfu_cfg_descriptor = { static const unsigned char *usb_strings[] = { USB_STRINGS_GENERATED - (const unsigned char *) &string1 +#ifdef BOARD_USB_SERIAL + NULL +#endif }; +void set_usb_serial_str(const uint8_t *serial_usbstr) +{ + usb_strings[STR_SERIAL] = serial_usbstr; +} + const USBDDriverDescriptors dfu_descriptors = { .pFsDevice = &fsDevice, .pFsConfiguration = &dfu_cfg_descriptor.ucfg, |