-
Notifications
You must be signed in to change notification settings - Fork 6.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
USB do not works if bootloader badly use the device before #34134
Comments
Are you enabling |
I guess it is Zephyr OS with USB device stack, CDC-ACM class support and MCUboot as application? |
@carlescufi I have made a test with the |
@jfischer-no I have test the Logs and console output (Board) Logs and console output (Linux host) |
@wysman can you please check STM32 relevant release-notes-2.5. Maybe your issue is related to pinmux changes, "STM32 pinmux driver has been reworked to allow pin configuration using devicetree definitions. The previous C macros are now deprecated." |
Exactly which board supported by Zephyr OS can be used to reproduce this problem? |
@jfischer-no I have test the sample on our custom board with your custom DTS. We have migrated the pinmux stuff during our 2.4 to 2.5 migration, and USB is working with the older mcuboot. Our custom board are based on STM32F412RG. |
I've just had a try using
|
@erwango did you use MCUboot? Because this is the issue here. |
@carlescuffi This was an observation vs following message:
|
@wysman is this still an issue? If not please close it. |
Close it since there is no answer and issue is not reproducible. |
@wysman |
Describe the bug
From the version 2.5 of zephyr-os, the USB-ACM of mcuboot is not working anymore, but the chain loading of the application slot is working. My application is using USB too. I think the previous failed init of USB from MCUBoot prevent the zephyr-os usb init to works.
Work around
Related issue (mcuboot)
mcu-tools/mcuboot#972
To Reproduce
Get a STM3F4 dev board
Use MCUBoot as bootloader with USB-ACM enabled.
Use
samples/subsys/usb/hid
as applicationExpected behavior
Zephyr must do a more complete cleanup of the USB device to ensure a correct working state.
Impact
We can not use USB in the zephyr-os based application.
Logs and console output (Board)
usb_enable() works fine, no error
Logs and console output (Linux host)
avril 08 13:33:40 cortex kernel: usb 1-3: new full-speed USB device number 90 using xhci_hcd
avril 08 13:33:40 cortex kernel: usb 1-3: device descriptor read/64, error -71
avril 08 13:33:40 cortex kernel: usb 1-3: device descriptor read/64, error -71
avril 08 13:33:40 cortex kernel: usb 1-3: new full-speed USB device number 91 using xhci_hcd
avril 08 13:33:41 cortex kernel: usb 1-3: device descriptor read/64, error -71
avril 08 13:33:41 cortex kernel: usb 1-3: device descriptor read/64, error -71
avril 08 13:33:41 cortex kernel: usb usb1-port3: attempt power cycle
avril 08 13:33:42 cortex kernel: usb 1-3: new full-speed USB device number 92 using xhci_hcd
avril 08 13:33:42 cortex kernel: usb 1-3: Device not responding to setup address.
avril 08 13:33:42 cortex kernel: usb 1-3: Device not responding to setup address.
avril 08 13:33:42 cortex kernel: usb 1-3: device not accepting address 92, error -71
avril 08 13:33:42 cortex kernel: usb 1-3: new full-speed USB device number 93 using xhci_hcd
avril 08 13:33:42 cortex kernel: usb 1-3: Device not responding to setup address.
avril 08 13:33:42 cortex kernel: usb 1-3: Device not responding to setup address.
avril 08 13:33:43 cortex kernel: usb 1-3: device not accepting address 93, error -71
avril 08 13:33:43 cortex kernel: usb usb1-port3: unable to enumerate USB device
Environment (please complete the following information):
The text was updated successfully, but these errors were encountered: