@@ -88,24 +88,25 @@ Adafruit_USBD_Device::Adafruit_USBD_Device(void)
88
88
};
89
89
90
90
memcpy (_desc_cfg_buffer, &dev_cfg, sizeof (tusb_desc_configuration_t ));
91
- _desc_cfg = _desc_cfg_buffer;
92
- _desc_cfg_size = sizeof (_desc_cfg_buffer);
93
- _desc_cfglen = sizeof (tusb_desc_configuration_t );
94
- _itf_count = 0 ;
95
- _epin_count = _epout_count = 1 ;
91
+ _desc_cfg = _desc_cfg_buffer;
92
+ _desc_cfg_maxlen = sizeof (_desc_cfg_buffer);
93
+ _desc_cfg_len = sizeof (tusb_desc_configuration_t );
96
94
97
- _language_id = USB_LANGUAGE;
95
+ _itf_count = 0 ;
96
+ _epin_count = _epout_count = 1 ;
97
+
98
+ _language_id = USB_LANGUAGE;
98
99
_manufacturer = USB_MANUFACTURER;
99
- _product = USB_PRODUCT;
100
+ _product = USB_PRODUCT;
100
101
}
101
102
102
103
// Add interface descriptor
103
104
// - Interface number will be updated to match current count
104
105
// - Endpoint number is updated to be unique
105
106
bool Adafruit_USBD_Device::addInterface (Adafruit_USBD_Interface& itf)
106
107
{
107
- uint8_t * desc = _desc_cfg+_desc_cfglen ;
108
- uint16_t const len = itf.getDescriptor (_itf_count, desc, _desc_cfg_size-_desc_cfglen );
108
+ uint8_t * desc = _desc_cfg+_desc_cfg_len ;
109
+ uint16_t const len = itf.getDescriptor (_itf_count, desc, _desc_cfg_maxlen-_desc_cfg_len );
109
110
uint8_t * desc_end = desc+len;
110
111
111
112
if ( !len ) return false ;
@@ -126,29 +127,29 @@ bool Adafruit_USBD_Device::addInterface(Adafruit_USBD_Interface& itf)
126
127
desc += desc[0 ]; // next
127
128
}
128
129
129
- _desc_cfglen += len;
130
+ _desc_cfg_len += len;
130
131
131
132
// Update configuration descriptor
132
133
tusb_desc_configuration_t * config = (tusb_desc_configuration_t *)_desc_cfg;
133
- config->wTotalLength = _desc_cfglen ;
134
+ config->wTotalLength = _desc_cfg_len ;
134
135
config->bNumInterfaces = _itf_count;
135
136
136
137
return true ;
137
138
}
138
139
139
140
void Adafruit_USBD_Device::setDescriptorBuffer (uint8_t * buf, uint32_t buflen)
140
141
{
141
- if (buflen < _desc_cfg_size )
142
+ if (buflen < _desc_cfg_maxlen )
142
143
return ;
143
144
144
- memcpy (buf, _desc_cfg, _desc_cfglen );
145
- _desc_cfg = buf;
146
- _desc_cfg_size = buflen;
145
+ memcpy (buf, _desc_cfg, _desc_cfg_len );
146
+ _desc_cfg = buf;
147
+ _desc_cfg_maxlen = buflen;
147
148
}
148
149
149
150
void Adafruit_USBD_Device::setID (uint16_t vid, uint16_t pid)
150
151
{
151
- _desc_device.idVendor = vid;
152
+ _desc_device.idVendor = vid;
152
153
_desc_device.idProduct = pid;
153
154
}
154
155
@@ -196,7 +197,6 @@ uint8_t const * tud_descriptor_configuration_cb(uint8_t index)
196
197
return USBDevice._desc_cfg ;
197
198
}
198
199
199
-
200
200
static int utf8_to_unichar (const char *str8, int *unicharp)
201
201
{
202
202
int unichar;
0 commit comments