History log of /rk3399_ARM-atf/plat/st/common/usb_dfu.c (Results 1 – 4 of 4)
Revision Date Author Comments
# c8e1a2d9 29-Oct-2025 Manish V Badarkhe <manish.badarkhe@arm.com>

Merge changes Ic735cd1c,Iba4cdbf5,I0dd74152,I3a051ca2,Ie413233d, ... into integration

* changes:
feat(stm32mp2): add RIFSC/RISAB protection for USB3DR
feat(st-drivers): add RIFSC driver
feat(s

Merge changes Ic735cd1c,Iba4cdbf5,I0dd74152,I3a051ca2,Ie413233d, ... into integration

* changes:
feat(stm32mp2): add RIFSC/RISAB protection for USB3DR
feat(st-drivers): add RIFSC driver
feat(stm32mp2): add STM32MP_USB_PROGRAMMER support
feat(stm32mp2): generate FIP for DDR initialization
feat(stm32mp2): add support for minimal FIP with only DDR FW
fix(st): allow several call of stm32cubeprog_uart_load
feat(st): update stm32cubeprogrammer API
feat(stm32mp1): add stm32_get_uid_otp
feat(st-usb): add USB DWC3 driver
fix(st): replace down counter by a timeout upon dfu detach

show more ...


# f79ca8d8 07-May-2025 Fabrice Gasnier <fabrice.gasnier@foss.st.com>

fix(st): replace down counter by a timeout upon dfu detach

On stm32mp2, DFU detach sometimes makes subsequent usb start to fail.
The core doesn't have the time to properly finalize the last setup
ph

fix(st): replace down counter by a timeout upon dfu detach

On stm32mp2, DFU detach sometimes makes subsequent usb start to fail.
The core doesn't have the time to properly finalize the last setup
phase. This results in error logs seen:
ERROR: dwc3_handle_dev_event: 1688
ERROR: dwc3_handle_dev_event: 1692

Just enabling "DFU USB STOP" message hides the issue, sequentially:
usb_core_start()
...
usb_dfu_loop() // runs until DFU_DETACH command
--> while(it_count != 0U) {
usb_core_handle_it()
if (usb_dfu_detach_req)
it_count--; // down count from 100 to 0
}
...
INFO("DFU USB STOP...\n");
usb_core_stop()

The down-counter (it_count) value doesn't seem to be enough, and seems
not robust against CPU speed. So rather adopt a 100us timeout. It's
determined experimentally (above issue seems to be triggered around
20us to 30us, so keep some margin).

Change-Id: Iac37c346ad938cd917dfbd7e4622546d29ee7517
Signed-off-by: Fabrice Gasnier <fabrice.gasnier@foss.st.com>

show more ...


# 4fcbbb33 29-Oct-2021 Madhukar Pappireddy <madhukar.pappireddy@arm.com>

Merge changes from topic "st_usb" into integration

* changes:
feat(plat/st/stm32mp1): add STM32MP_USB_PROGRAMMER target
feat(plat/st/stm32mp1): add USB DFU support for STM32MP1
feat(plat/st):

Merge changes from topic "st_usb" into integration

* changes:
feat(plat/st/stm32mp1): add STM32MP_USB_PROGRAMMER target
feat(plat/st/stm32mp1): add USB DFU support for STM32MP1
feat(plat/st): add STM32CubeProgrammer support on USB
feat(drivers/st/usb): add device driver for STM32MP1
feat(plat/st): add a USB DFU stack
feat(drivers/usb): add a USB device stack

show more ...


# efbd65fa 14-Sep-2020 Patrick Delaunay <patrick.delaunay@st.com>

feat(plat/st): add a USB DFU stack

Add a stack to support the Universal Serial Bus Device Class
Specification for Device Firmware Upgrade (USB DFU v1.1).

This stack is based on the USB device stack

feat(plat/st): add a USB DFU stack

Add a stack to support the Universal Serial Bus Device Class
Specification for Device Firmware Upgrade (USB DFU v1.1).

This stack is based on the USB device stack (USBD).

Change-Id: I8a56411d184882b6a9e3617c6dfb859086b8f353
Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>

show more ...