diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2009-11-02 22:32:22 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2009-11-02 22:32:22 +0000 |
commit | f04bc06e98febf39134e8800e18ccb382093a7de (patch) | |
tree | 9083bca5947cae3ff18a93997723a0314b04e1aa | |
parent | a1128ded94a01c3fa57a39fd7eb13cbde58e60f8 (diff) | |
download | px4-nuttx-f04bc06e98febf39134e8800e18ccb382093a7de.tar.gz px4-nuttx-f04bc06e98febf39134e8800e18ccb382093a7de.tar.bz2 px4-nuttx-f04bc06e98febf39134e8800e18ccb382093a7de.zip |
Non-standard requests handled by class caused controller errors
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2214 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r-- | nuttx/arch/arm/src/stm32/stm32_usbdev.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/nuttx/arch/arm/src/stm32/stm32_usbdev.c b/nuttx/arch/arm/src/stm32/stm32_usbdev.c index 4ac47358a..dbc0ce5a6 100644 --- a/nuttx/arch/arm/src/stm32/stm32_usbdev.c +++ b/nuttx/arch/arm/src/stm32/stm32_usbdev.c @@ -1572,7 +1572,7 @@ static void stm32_ep0setup(struct stm32_usbdev_s *priv) /* Let the class implementation handle all non-standar requests */ stm32_dispatchrequest(priv); - handled = TRUE; + return; } /* Handle standard request. Pick off the things of interest to the @@ -1920,6 +1920,10 @@ static void stm32_ep0setup(struct stm32_usbdev_s *priv) * 3. An error was detected in either the above logic or by the class implementation * logic. In either case, priv->state will be set DEVSTATE_STALLED * to indicate this case. + * + * NOTE: Non-standard requests are a special case. They are handled by the + * class implementation and this function returned early above, skipping this + * logic altogether. */ if (priv->devstate != DEVSTATE_STALLED && !handled) |