summaryrefslogtreecommitdiff
path: root/tinyusb
diff options
context:
space:
mode:
Diffstat (limited to 'tinyusb')
-rw-r--r--tinyusb/common/errors.h1
-rw-r--r--tinyusb/device/usbd.c25
2 files changed, 26 insertions, 0 deletions
diff --git a/tinyusb/common/errors.h b/tinyusb/common/errors.h
index 061f08ab3..02d9d6824 100644
--- a/tinyusb/common/errors.h
+++ b/tinyusb/common/errors.h
@@ -73,6 +73,7 @@
ENTRY(TUSB_ERROR_OSAL_QUEUE_FAILED )\
ENTRY(TUSB_ERROR_OSAL_SEMAPHORE_FAILED )\
ENTRY(TUSB_ERROR_EHCI_NOT_ENOUGH_QTD )\
+ ENTRY(TUSB_ERROR_USBD_DESCRIPTOR_STRING )\
ENTRY(TUSB_ERROR_FAILED )\
diff --git a/tinyusb/device/usbd.c b/tinyusb/device/usbd.c
index efcf29ced..bed745985 100644
--- a/tinyusb/device/usbd.c
+++ b/tinyusb/device/usbd.c
@@ -46,6 +46,7 @@
// INCLUDE
//--------------------------------------------------------------------+
#include "tusb.h"
+#include "tusb_descriptors.h" // TODO callback include
//--------------------------------------------------------------------+
// MACRO CONSTANT TYPEDEF
@@ -66,6 +67,30 @@
//--------------------------------------------------------------------+
tusb_error_t usbd_init (void)
{
+ ASSERT_INT( USB_STRING_LEN(sizeof(TUSB_CFG_DEVICE_STRING_MANUFACTURER)-1),
+ app_tusb_desc_strings.manufacturer.bLength, TUSB_ERROR_USBD_DESCRIPTOR_STRING);
+
+ ASSERT_INT( USB_STRING_LEN(sizeof(TUSB_CFG_DEVICE_STRING_PRODUCT)-1) ,
+ app_tusb_desc_strings.product.bLength , TUSB_ERROR_USBD_DESCRIPTOR_STRING);
+
+ ASSERT_INT( USB_STRING_LEN(sizeof(TUSB_CFG_DEVICE_STRING_SERIAL)-1) ,
+ app_tusb_desc_strings.serial.bLength , TUSB_ERROR_USBD_DESCRIPTOR_STRING);
+
+ for(uint32_t i=0; i < sizeof(TUSB_CFG_DEVICE_STRING_MANUFACTURER)-1; i++)
+ {
+ app_tusb_desc_strings.manufacturer.unicode_string[i] = TUSB_CFG_DEVICE_STRING_MANUFACTURER[i];
+ }
+
+ for(uint32_t i=0; i < sizeof(TUSB_CFG_DEVICE_STRING_PRODUCT)-1; i++)
+ {
+ app_tusb_desc_strings.product.unicode_string[i] = TUSB_CFG_DEVICE_STRING_PRODUCT[i];
+ }
+
+ for(uint32_t i=0; i < sizeof(TUSB_CFG_DEVICE_STRING_SERIAL)-1; i++)
+ {
+ app_tusb_desc_strings.serial.unicode_string[i] = TUSB_CFG_DEVICE_STRING_SERIAL[i];
+ }
+
ASSERT_STATUS ( dcd_init() );
return TUSB_ERROR_NONE;