diff options
author | Sergey Vlasov <sigprof@gmail.com> | 2022-10-22 20:16:09 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-22 18:16:09 +0100 |
commit | 1ea54e5052fdf2ced1e19ff5a5f54a9d25156d1d (patch) | |
tree | 340f660866ca1e7e75de824ddcdcaef24c203589 /lib/arm_atsam | |
parent | 428114fac25dedadfff9fceaf98f3ecd196a469d (diff) |
ChibiOS USB: Add a dummy IN callback to work around LLD bugs (#18811)
In #18631 some IN notification callbacks that were doing nothing were
removed, which should be a valid thing to do (ChibiOS HAL checks the
`in_cb` and `out_cb` pointers for being non-NULL before invoking those
optional callbacks). However, it turned out that some less popular USB
LLDs (KINETIS and MIMXRT1062) have their own checks for those pointers,
and (incorrectly) skip the ChibiOS callback handling when those pointers
are NULL, which breaks the code for the `USB_USE_WAIT` configuration
option (the waiting thread never gets resumed if the corresponding
callback pointer is NULL).
Add those dummy callbacks again (but use a single function for all of
them instead of individual ones for each endpoint); this restores the
KINETIS and MIMXRT1062 boards to the working state while the LLDs are
getting fixed.
Diffstat (limited to 'lib/arm_atsam')
0 files changed, 0 insertions, 0 deletions