diff options
author | Diego Ismirlian <dismirlian (at) google's mail.com> | 2017-06-05 10:18:45 -0300 |
---|---|---|
committer | Diego Ismirlian <dismirlian (at) google's mail.com> | 2017-06-05 10:18:45 -0300 |
commit | 5ecaf7722b5f1f9d0c41213fc5c129b451302f99 (patch) | |
tree | 4a4e2b746d6db725e3aacf8ff87e1a3a88e3dd4e /os/hal/src/usbh/hal_usbh_desciter.c | |
parent | eec17ec12e23b7f647d37a8d70df4df34632f8c1 (diff) | |
download | ChibiOS-Contrib-5ecaf7722b5f1f9d0c41213fc5c129b451302f99.tar.gz ChibiOS-Contrib-5ecaf7722b5f1f9d0c41213fc5c129b451302f99.tar.bz2 ChibiOS-Contrib-5ecaf7722b5f1f9d0c41213fc5c129b451302f99.zip |
USB Host fixes
- Cleaned up alignment macros for GCC & IAR
- Corrected EP halt and Clear halt behaviours
- Initialization of class drivers by USB Host main driver
- Minor cosmetic fixes
- Updated USB_HOST testhal app
Diffstat (limited to 'os/hal/src/usbh/hal_usbh_desciter.c')
-rw-r--r-- | os/hal/src/usbh/hal_usbh_desciter.c | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/os/hal/src/usbh/hal_usbh_desciter.c b/os/hal/src/usbh/hal_usbh_desciter.c index 63137d4..48d9d87 100644 --- a/os/hal/src/usbh/hal_usbh_desciter.c +++ b/os/hal/src/usbh/hal_usbh_desciter.c @@ -134,22 +134,18 @@ void cs_iter_next(generic_iterator_t *ics) { if ((curr[0] < 2) || (rem < 2) || (rem < curr[0])) return; - //for (;;) { - rem -= curr[0]; - curr += curr[0]; + rem -= curr[0]; + curr += curr[0]; - if ((curr[0] < 2) || (rem < 2) || (rem < curr[0])) - return; - - if ((curr[1] == USBH_DT_INTERFACE_ASSOCIATION) - || (curr[1] == USBH_DT_INTERFACE) - || (curr[1] == USBH_DT_CONFIG) - || (curr[1] == USBH_DT_ENDPOINT)) { - return; - } + if ((curr[0] < 2) || (rem < 2) || (rem < curr[0])) + return; - // break; - //} + if ((curr[1] == USBH_DT_INTERFACE_ASSOCIATION) + || (curr[1] == USBH_DT_INTERFACE) + || (curr[1] == USBH_DT_CONFIG) + || (curr[1] == USBH_DT_ENDPOINT)) { + return; + } ics->valid = 1; ics->rem = rem; |