summaryrefslogtreecommitdiff
path: root/src/tusb.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/tusb.c')
-rw-r--r--src/tusb.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/tusb.c b/src/tusb.c
index 5c6adad24..fc1936c3d 100644
--- a/src/tusb.c
+++ b/src/tusb.c
@@ -109,9 +109,9 @@ bool tu_edpt_validate(tusb_desc_endpoint_t const * desc_ep, tusb_speed_t speed)
void tu_edpt_bind_driver(uint8_t ep2drv[][2], tusb_desc_interface_t const* desc_itf, uint16_t desc_len, uint8_t driver_id)
{
uint8_t const* p_desc = (uint8_t const*) desc_itf;
- uint16_t len = 0;
+ uint8_t const* desc_end = p_desc + desc_len;
- while( len < desc_len )
+ while( p_desc < desc_end )
{
if ( TUSB_DESC_ENDPOINT == tu_desc_type(p_desc) )
{
@@ -121,7 +121,6 @@ void tu_edpt_bind_driver(uint8_t ep2drv[][2], tusb_desc_interface_t const* desc_
ep2drv[tu_edpt_number(ep_addr)][tu_edpt_dir(ep_addr)] = driver_id;
}
- len += (uint16_t) tu_desc_len(p_desc);
p_desc = tu_desc_next(p_desc);
}
}