Skip to main content
Visitor II
February 9, 2023
Question

Status: errUNKNOWN, State: dfuERROR - What could this error be referring to?

  • February 9, 2023
  • 3 replies
  • 2375 views

I'm getting these errors on the consoles when FSBL (TF-A) is trying to download SSBL (U-Boot). What could this DFU error be? I've added the following to the U-Boot DTSI file so it ignore USB OTG VBUS and USB OTG ID. I've tried this using Linux and Windows with STProgrammer.

&usbotg_hs {
 	u-boot,force-b-session-valid;
 	dr_mode = "peripheral";
 };

Console Output:
 
NOTICE: CPU: STM32MP157AAA Rev.Z
NOTICE: (a)Model: STMicroelectronics custom STM32CubeMX board - openstlinux-5.15-yocto-kirkstone-mp1-v22. 06.15
NOTICE: board_id = 0
NOTICE: Board: Board ID is zero
NOTICE: Checking fixed regulator register
INFO: fixed_regulator_register() is the problem
INFO: Entering the loop
INFO: register fixed reg regulator-vdd!
INFO: Node: 10728
NOTICE: Calling stm32mp1_syscfg_init()
WARNING: VDD unknown
NOTICE: Watchdog refresh
NOTICE: BSEC read debug configuration
NOTICE: Arch security setup
INFO: Reset reason (0x4):
INFO: Pad Reset from NRST
NOTICE: Syscfg enable IO
INFO: FCONF: Reading TB_FW firmware configuration file from: 0x2ffe2000
INFO: FCONF: Reading firmware configuration information for: stm32mp_io
NOTICE: BL MEM param handling
INFO: Using USB
INFO: Instance 2
INFO: Boot used partition fsbl1
NOTICE: Done with arch setup
NOTICE: BL2: v2.6-stm32mp1-r2.0(debug):()
NOTICE: BL2: Built : 17:01:00, Feb 8 2023
INFO: BL2: Doing platform setup
NOTICE: STM32MP DDR probe
INFO: RAM: DDR3-DDR3L 16bits 532000kHz
NOTICE: stm32mp_ddr_test_addr_bus(size) - size = 536870912
NOTICE: Checking for address bits stuck high
NOTICE: Checking for address bits stuck low
NOTICE: uret Value = 0
INFO: Memory size = 0x20000000 (512 MB)
INFO: DFU USB START LOAD...
INFO: DFU STATE - Phase=3, Address=c7000000, Base=c7000000, Length=16777216
STProgrammer Console Output
 
DFU State = 5
13:36:57:326 : Segment[0] downloaded successfully
13:36:57:326 : File download complete
13:36:57:326 : Time elapsed during download operation: 00:00:01.406
13:36:57:326 : RUNNING Program ... 
13:36:57:326 : PartID: :0x01 
13:36:57:326 : DFU status = 0
13:36:57:327 : DFU State = 5
13:36:57:327 : sending a dfu end of download request
13:36:57:328 : DFU status = 0
13:36:57:329 : DFU State = 7
13:36:57:476 : DFU status = 0
13:36:57:477 : DFU State = 2
13:36:57:477 : sending a set alternate setting request with index: 5
13:36:57:478 : receiving packet
13:36:57:479 : DFU status = 0
13:36:57:479 : DFU State = 2
13:36:57:479 : UpLoading data
13:36:57:482 : DFU status = 0
13:36:57:482 : DFU State = 2
13:36:57:482 : sending a set alternate setting request with index: 3
13:36:57:482 : Start operation done successfully at partition 0x01
13:36:57:482 : sending a set alternate setting request with index: 5
13:36:57:483 : receiving packet
13:36:57:483 : sending a clear status request
13:36:57:483 : an error occured after sending the clear status request
13:36:57:483 : Status: errUNKNOWN, State: dfuERROR
13:36:57:483 : sending a clear status request
13:36:57:483 : an error occured after sending the clear status request
13:36:57:483 : Status: errUNKNOWN, State: dfuERROR
13:36:57:483 : sending a clear status request
13:36:57:484 : an error occured after sending the clear status request
13:36:57:484 : Status: errUNKNOWN, State: dfuERROR
13:36:57:484 : sending a clear status request
13:36:57:487 : an error occured after sending the clear status request
13:36:57:487 : Status: errUNKNOWN, State: dfuERROR
13:36:57:487 : sending a clear status request
13:36:57:489 : DFU status = 14
13:36:57:489 : DFU State = 10
13:36:57:489 : an error occured after sending the clear status request
13:36:57:491 : Status: errUNKNOWN, State: dfuERROR
13:36:57:491 : sending a clear status request
13:36:57:491 : DFU status = 0
13:36:57:491 : DFU State = 2
13:36:57:491 : UpLoading data
13:36:57:507 : DFU status = 0
13:36:57:507 : DFU State = 2
13:36:57:507 : sending a set alternate setting request with index: 3
13:36:57:507 : Memory Programming ...
13:36:57:507 : Opening and parsing file: fip-stm32mp153a-xpro-mp1-mx-optee.bin
13:36:57:509 : File : fip-stm32mp153a-xpro-mp1-mx-optee.bin
13:36:57:511 : Size : 1.41 MB 
13:36:57:511 : Partition ID : 0x03 
13:36:57:511 : Download in Progress:
13:36:57:512 : Size : 1483254 Bytes
13:36:57:512 : sending packet nbr: 0
13:36:57:512 : Status: 14, State: 10
13:36:57:512 : sending a clear status request
13:36:57:513 : an error occured after sending the clear status request
13:36:57:513 : Status: errUNKNOWN, State: dfuERROR
13:36:57:513 : sending a clear status request
13:36:57:516 : an error occured after sending the clear status request
13:36:57:516 : Status: errUNKNOWN, State: dfuERROR
13:36:57:516 : sending a clear status request
13:36:57:516 : DFU status = 14
13:36:57:516 : DFU State = 10
13:36:57:516 : an error occured after sending the clear status request
13:36:57:516 : Status: errUNKNOWN, State: dfuERROR
13:36:57:517 : sending a clear status request
13:36:57:517 : DFU status = 0
13:36:57:518 : DFU State = 2
13:36:57:519 : DFU status = 0
13:36:57:519 : DFU State = 3
13:36:57:519 : DFU status = 0
13:36:57:519 : DFU State = 5
13:36:57:519 : sending packet nbr: 1
13:36:57:519 : DFU status = 0
13:36:57:519 : DFU State = 5
13:36:57:519 : Status: 0, State: 5
13:36:57:519 : DFU status = 0
13:36:57:519 : DFU State = 3
13:36:57:519 : Error during download get_status
13:36:57:519 : Error: failed to download Segment[0]
13:36:57:519 : Error: failed to download the File
13:36:57:538 : Error: Download partition 0x03 failed
13:36:57:560 : Error: TSV flashing service failed

    This topic has been closed for replies.

    3 replies

    JKell.6Author
    Visitor II
    February 9, 2023

    Is there not a version of this for TF-A? It almost seems like it's waiting for something to happen on the USB/DFU side but it never does. Eventually just times out. Custom target does not use USB OTG VBUS or USB OTG ID.

    &usbotg_hs {
    	u-boot,force-b-session-valid;
    	dr_mode = "peripheral";
    };

    Technical Moderator
    February 10, 2023

    Hi @Community member​ 

    according to https://wiki.st.com/stm32mpu/wiki/OTG_device_tree_configuration#DT_configuration_example_as_high-speed_OTG_in_Host_or_Peripheral_mode-2C_with_micro-B_or_Type-C_connector-2C_and_with_VBUS_and_ID_left_unconnected

    you need to add also:

    usb-role-switch;

    role-switch-default-mode = "peripheral";

    Don't know if the various warning around VDD setting on your TF-A boot log might hurt.

    Btw (maybe not the root cause of error), I see that your TF-A version (v2.6-stm32mp1-r2.0) is maybe not aligned with the Ecocsystem version (openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15)

    Regards

    JKell.6Author
    Visitor II
    February 10, 2023

    Hi Patrick,

    Great catch! That's one Wiki page set I haven't run across. I'll give that a go in the TF-A DTS file.

    As for the VDD warning, that's from my addition to get around my fixed power supply. I found nothing very concise on handling not using a PMIC but found example DTS's and parroted those. Here's how I've done that. Had other regulators listed as well but the compiler didn't like those so removed them.

    regulators {
    	vdd: regulator-vdd {
    		compatible = "regulator-fixed";
    		regulator-name = "vdd";
    		regulator-min-microvolt = <3300000>;
    		regulator-max-microvolt = <3300000>;
    		regulator-always-on;
    	};
    };
     
    &pwr_regulators {
    	pwr-supply = <&vdd>;
    };

    That's weird my TF-A version isn't aligned with my Ecosystem. It should be, it all came together in 4.1.0 recently.

    Technical Moderator
    February 10, 2023

    Did you check for classic pitfalls ?

    https://community.st.com/s/article/FAQ-STM32MP1-Bring-up-procedure

    Regards.

    JKell.6Author
    Visitor II
    February 10, 2023

    Yeah, gone through that several times now.