31#if !defined(CONFIG_TUSBD_USE_CUSTOM_DESC) 
   33#if !defined(HAVE_TUSBD_ITF_TYPE) 
   35#if CONFIG_TUSBD_CDC_NUMOF > 0 
   39#if CONFIG_TUSBD_CDC_NUMOF > 1 
   43#if CONFIG_TUSBD_DFU_NUMOF 
   46#if CONFIG_TUSBD_DFU_RT_NUMOF 
   49#if CONFIG_TUSBD_HID_NUMOF > 0 
   52#if CONFIG_TUSBD_HID_NUMOF > 1 
   55#if CONFIG_TUSBD_MSC_NUMOF 
   58#if CONFIG_TUSBD_NET_NUMOF 
   62#if CONFIG_TUSBD_VENDOR_NUMOF 
   69#if !defined(HAVE_TUSBD_EP_TYPE) 
   71#if CONFIG_TUSBD_CDC_NUMOF > 0 
   72    TUSBD_EP_CDC_0_NOTIF = TUSBD_ITF_CDC_0 + 0x81,      
 
   73    TUSBD_EP_CDC_0_OUT   = TUSBD_ITF_CDC_0_DATA + 0x01, 
 
   74    TUSBD_EP_CDC_0_IN    = TUSBD_ITF_CDC_0_DATA + 0x81, 
 
   76#if CONFIG_TUSBD_CDC_NUMOF > 1 
   77    TUSBD_EP_CDC_1_NOTIF = TUSBD_ITF_CDC_1 + 0x81,      
 
   78    TUSBD_EP_CDC_1_OUT   = TUSBD_ITF_CDC_1_DATA + 0x01, 
 
   79    TUSBD_EP_CDC_1_IN    = TUSBD_ITF_CDC_1_DATA + 0x81, 
 
   81#if CONFIG_TUSBD_HID_NUMOF > 0 
   82    TUSBD_EP_HID_0_OUT   = TUSBD_ITF_HID_0 + 0x01,      
 
   83    TUSBD_EP_HID_0_IN    = TUSBD_ITF_HID_0 + 0x81,      
 
   85#if CONFIG_TUSBD_HID_NUMOF > 1 
   86    TUSBD_EP_HID_1_OUT   = TUSBD_ITF_HID_1 + 0x01,      
 
   87    TUSBD_EP_HID_1_IN    = TUSBD_ITF_HID_1 + 0x81,      
 
   89#if CONFIG_TUSBD_MSC_NUMOF 
   90    TUSBD_EP_MSC_OUT     = TUSBD_ITF_MSC + 0x01,        
 
   91    TUSBD_EP_MSC_IN      = TUSBD_ITF_MSC + 0x81,        
 
   93#if CONFIG_TUSBD_NET_NUMOF 
   94    TUSBD_EP_NET_NOTIF   = TUSBD_ITF_NET + 0x81,        
 
   95    TUSBD_EP_NET_OUT     = TUSBD_ITF_NET_DATA + 0x01,   
 
   96    TUSBD_EP_NET_IN      = TUSBD_ITF_NET_DATA + 0x81,   
 
   98#if CONFIG_TUSBD_VENDOR_NUMOF 
   99    TUSBD_EP_VENDOR_OUT  = TUSBD_ITF_VENDOR + 0x01,     
 
  100    TUSBD_EP_VENDOR_IN   = TUSBD_ITF_VENDOR + 0x81,     
 
  106#if !defined(HAVE_TUSBD_STR_IDX_TYPE) 
  108    TUSBD_STR_IDX_LANGUAGE = 0,
 
  109    TUSBD_STR_IDX_MANUFACTURER,
 
  110    TUSBD_STR_IDX_PRODUCT,
 
  111    TUSBD_STR_IDX_SERIAL,
 
  112#if CONFIG_TUSBD_CDC_NUMOF > 0 
  115#if CONFIG_TUSBD_CDC_NUMOF > 1 
  118#if CONFIG_TUSBD_DFU_NUMOF 
  119    TUSBD_STR_IDX_DFU_SLOT_0,
 
  120    TUSBD_STR_IDX_DFU_SLOT_1,
 
  122#if CONFIG_TUSBD_DFU_RT_NUMOF 
  123    TUSBD_STR_IDX_DFU_RT,
 
  125#if CONFIG_TUSBD_HID_NUMOF > 0 
  128#if CONFIG_TUSBD_HID_NUMOF > 1 
  131#if CONFIG_TUSBD_MSC_NUMOF 
  135#if CONFIG_TUSBD_NET_NUMOF 
  136#if CONFIG_TUSBD_NET_CDC_ECM 
  137    TUSBD_STR_IDX_NET_CDC_ECM,
 
  139#if CONFIG_TUSBD_NET_CDC_NCM 
  140    TUSBD_STR_IDX_NET_CDC_NCM,
 
  142#if CONFIG_TUSBD_NET_RNDIS 
  143    TUSBD_STR_IDX_NET_RNDIS,
 
  145    TUSBD_STR_IDX_NET_MAC,
 
  148#if CONFIG_TUSBD_VENDOR_NUMOF 
  149    TUSBD_STR_IDX_VENDOR,
 
  156#define CONFIG_TUSBD_DFU_ALT_NUMOF  2 
  158#if !defined(TUSBD_DESC_TOTAL_LEN) 
  160#if CONFIG_TUSBD_NET_CDC_ECM 
  161#define TUSBD_DESC_NET_LEN    TUD_CDC_ECM_DESC_LEN 
  162#elif CONFIG_TUSBD_NET_CDC_NCM 
  163#define TUSBD_DESC_NET_LEN    TUD_CDC_NCM_DESC_LEN 
  164#elif CONFIG_TUSBD_NET_RNDIS 
  165#define TUSBD_DESC_NET_LEN    TUD_RNDIS_DESC_LEN 
  167#define TUSBD_DESC_NET_LEN    0 
  170#define TUSBD_DESC_TOTAL_LEN (TUD_CONFIG_DESC_LEN + \ 
  171                              (CONFIG_TUSBD_CDC_NUMOF * TUD_CDC_DESC_LEN) + \ 
  172                              (CONFIG_TUSBD_DFU_NUMOF * TUD_DFU_DESC_LEN(CONFIG_TUSBD_DFU_ALT_NUMOF)) + \ 
  173                              (CONFIG_TUSBD_DFU_RT_NUMOF * TUD_DFU_RT_DESC_LEN) + \ 
  174                              (CONFIG_TUSBD_HID_NUMOF * TUD_HID_INOUT_DESC_LEN) + \ 
  175                              (CONFIG_TUSBD_MSC_NUMOF * TUD_MSC_DESC_LEN) + \ 
  176                              (CONFIG_TUSBD_VENDOR_NUMOF * TUD_VENDOR_DESC_LEN) + \ 
  185#if CONFIG_TUSBD_NET_CDC_ECM && CONFIG_TUSBD_NET_RNDIS 
  187#define TUSBD_DESC_ALT_NET_LEN    TUD_RNDIS_DESC_LEN 
  189#define TUSBD_DESC_ALT_TOTAL_LEN (TUD_CONFIG_DESC_LEN + \ 
  190                                 (CONFIG_TUSBD_CDC_NUMOF * TUD_CDC_DESC_LEN) + \ 
  191                                 (CONFIG_TUSBD_DFU_NUMOF * TUD_DFU_DESC_LEN(CONFIG_TUSBD_DFU_ALT_NUMOF)) + \ 
  192                                 (CONFIG_TUSBD_DFU_RT_NUMOF * TUD_DFU_RT_DESC_LEN) + \ 
  193                                 (CONFIG_TUSBD_HID_NUMOF * TUD_HID_INOUT_DESC_LEN) + \ 
  194                                 (CONFIG_TUSBD_MSC_NUMOF * TUD_MSC_DESC_LEN) + \ 
  195                                 (CONFIG_TUSBD_VENDOR_NUMOF * TUD_VENDOR_DESC_LEN) + \ 
  196                                 TUSBD_DESC_ALT_NET_LEN) 
TinyUSB default configurations.