diff options
| author | hathach <[email protected]> | 2013-05-31 18:21:31 +0700 |
|---|---|---|
| committer | hathach <[email protected]> | 2013-05-31 18:21:31 +0700 |
| commit | 03d85acfc7cb18a5469146f98c210a5747218cb3 (patch) | |
| tree | cf1f4ffac5cf99befadb1ee34f4ada66c78a1504 /tinyusb/device | |
| parent | abf105474529a9831851ea78bcc06d1e5ad4e173 (diff) | |
refractor string descriptors, allow one-stop configure descriptor for
- manufacturer, product etc ... (only english now)
Diffstat (limited to 'tinyusb/device')
| -rw-r--r-- | tinyusb/device/usbd.c | 25 |
1 files changed, 25 insertions, 0 deletions
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; |
