This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMDS64GPEVM: How to flash eMMC using dfu-util ?

Part Number: TMDS64GPEVM

Hello,

I'm trying to flash the eMCC of the TMDS64GPEVM board using USB dfu-util.

I have started here: https://software-dl.ti.com/processor-sdk-linux/esd/AM64X/08_01_00_39/exports/docs/linux/Foundational_Components/U-Boot/UG-DFU.html and get the u-boot prompt properly on the serial console.

Then, how to flash the eMCC using the dfu-util USB connection ?

Basically I'm blocked at the dfu command in u-boot : I d'ont know what should be the value of dfu_alt_info and which exact command I should execute in u-boot ("dfu 0 mmc 0" fails).

Once dfu is started in u-boot I should be able to load everything.

I have tried to follow https://software-dl.ti.com/processor-sdk-linux/esd/AM64X/08_01_00_39/exports/docs/linux/Foundational_Components/U-Boot/UG-Memory.html, adaptations are required, but i do not succeeds to get something working.

Is there a tutorial for that for this specific evaluation board ? What should I do ? Which information may I provide to help here ?

Thanks and Regards,

Joel

  • Hi Joel,
    Device Firmware Update (DFU) is supported in AM64x bootrom, and u-boot using USB as transport link between host and target.
    1. When booting from DFU boot mode, "dfu-util" running on host communicates with bootrom via USB link, and transmits binary from host to target board in this order: tiboot3.bin -> tispl.bin -> u-boot.img. Refer to the link for details:
    software-dl.ti.com/.../UG-DFU.html
    2. After u-boot starts to run on target, running the following u-boot cmds:
    => env default -f -a
    => setenv dfu_alt_info ${dfu_alt_info_emmc}
    => dfu 0 mmc 0
    This enable u-boot ready for flashing eMMC with binary transmitted from host via USB link.
    I'm attaching two log files for eMMC DFU-flashing u-boot binary (tiboot3.bin/tispl.bin/u-boot.img) with Linux SDK 8.1 on AM64x EVM for your reference:
    - am6_8.1_dfu_emmc_host.txt: "dfu-util" log on host
    - am6_8.1_dfu_emmc_target.txt: log on target
    Best,
    -Hong

    am6_8.1_dfu_emmc_target.txt
    U-Boot SPL 2021.01-g15769936a5 (Jan 17 2022 - 20:40:34 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0015 '21.9.1--v2021.09a (Terrific Lla')
    SPL initial stack usage: 13392 bytes
    Trying to boot from DFU
    ####################################DOWNLOAD ... OK
    Ctrl+C to exit ...
    init_env from device 10 not supported!
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.5(release):08.01.00.006-dirty
    NOTICE:  BL31: Built : 20:34:54, Jan 17 2022
    
    U-Boot SPL 2021.01-g15769936a5 (Jan 17 2022 - 20:39:22 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0015 '21.9.1--v2021.09a (Terrific Lla')
    Trying to boot from DFU
    ####DOWNLOAD ... OK
    Ctrl+C to exit ...
    
    
    U-Boot 2021.01-g15769936a5 (Jan 17 2022 - 20:39:22 +0000)
    
    SoC:   AM64X SR1.0
    Model: Texas Instruments AM642 EVM
    Board: AM64-GPEVM rev E2
    DRAM:  2 GiB
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Reading daughtercard EEPROM at 0x52 failed -1
    Net:   eth0: ethernet@8000000
    Hit any key to stop autoboot:  2  1  0 
    => env default p -f -a
    ## Resetting to default environment
    => setenv dfu_alt_info ${dfu_alt_info_emmc}
    => pri dfu_alt_info
    dfu_alt_info=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x400 mmcpart 1;tispl.bin.raw raw 0x400 0x1000 mmcpart 1;u-boot.img.raw raw 0x1400 0x2000 mmcpart 1;u-env.raw raw 0x3400 0x100 mmcpart 1;sysfw.itb.raw raw 0x3600 0x800 mmcpart 1
    => dfu 0 mmc 0
    ##DOWNLOAD ... OK
    Ctrl+C to exit ...
    ###DOWNLOAD ... OK
    Ctrl+C to exit ...
    ####DOWNLOAD ... OK
    Ctrl+C to exit ...
    

    am6_8.1_dfu_emmc_host.txt
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -l
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    Found DFU: [0451:6165] ver=0200, devnum=5, cfg=1, intf=0, alt=1, name="SocId", serial="01.00.00.00"
    Found DFU: [0451:6165] ver=0200, devnum=5, cfg=1, intf=0, alt=0, name="bootloader", serial="01.00.00.00"
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -R -a bootloader -D tiboot3.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #0 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 512
    Copying data from PC to DFU device
    Download	[=========================] 100%       475298 bytes
    Download done.
    state(6) = dfuMANIFEST-SYNC, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    dfu-util: can't detach
    Resetting USB to switch back to runtime mode
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -R -a tispl.bin -D tispl.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #0 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       728724 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    Resetting USB to switch back to runtime mode
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -R  -a u-boot.img -D u-boot-am64xx-evm.img
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #1 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%      1015340 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    Resetting USB to switch back to runtime mode
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -l
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=6, name="sysfw.itb.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=5, name="u-env.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=4, name="u-boot.img.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=3, name="tispl.bin.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=2, name="tiboot3.bin.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=1, name="rootfs", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=8, cfg=1, intf=0, alt=0, name="rawemmc", serial="0000000000000136"
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -a tiboot3.bin.raw -D tiboot3.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #2 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       475298 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -a tispl.bin.raw -D tispl.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #3 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       728724 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ sudo dfu-util -a u-boot.img.raw -D u-boot-am64xx-evm.img
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #4 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%      1015340 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.1.0.39_gp/board-support/prebuilt-images$ 
    
    

  • Hello

    Thanks for the reply, this look closed to what I was doing, I'm not totally mad !!

    Something is different in my default u-boot env:

    dfu_alt_info_emmc is "rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1"

    If I'm following the exact procedure you have given, I'm not able to start the dfu (screenshot is attached).

    So I have done:

    setenv dfu_alt_info "rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1;sysfw.itb.raw raw 0x4000 0x800 mmcpart 1"

    then: "dfu 0 mmc 0"

    And at this time dfu is available, dfu-util shows the emcc partitions properly => Now what next ? I have tried to flash with dfu-util but I don't succeed.

    Thanks and regards,

    Joel

  • Hi Joel,
    I tested USB-DFU eMMC flashing using SDK 8.1, and it worked as in my last reply.
    I took a closer look at your latest log, and ran some test using SDK 8.2 today.
    It seems there's an issue on USB-DFU eMMC flashing with SDK 8.2.
    After u-boot starts to run on target, can we run test as listed below on your setup?

    >>>> run cmds @u-boot prompt
    env default -f -a
    pri dfu_alt_info_emmc		// "rawemmc raw 0 ...... mmcpart 1;" //
    editenv dfu_alt_info_emmc	// remove the tailing ";" //
    pri dfu_alt_info_emmc		// "rawemmc raw 0 ...... mmcpart 1" //
    setenv dfu_alt_info ${dfu_alt_info_emmc}
    pri dfu_alt_info
    dfu 0 mmc 0
    
    >>>> run cmds on host
    sudo dfu-util -l
    sudo dfu-util -a tiboot3.bin.raw -D tiboot3.bin
    sudo dfu-util -a tispl.bin.raw -D tispl.bin
    sudo dfu-util -a u-boot.img.raw -D u-boot-am64xx-evm.img

    I'm attaching two log files for eMMC DFU-flashing u-boot binary (tiboot3.bin/tispl.bin/u-boot.img) with Linux SDK 8.2 on AM64x EVM:
    - am6_8.2_dfu_emmc_host.txt: "dfu-util" log on host
    - am6_8.2_dfu_emmc_target.txt: log on target

    Best,
    -Hong

    am6_8.2_dfu_emmc_host.txt
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -l
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    Found DFU: [0451:6165] ver=0200, devnum=63, cfg=1, intf=0, alt=1, name="SocId", serial="01.00.00.00"
    Found DFU: [0451:6165] ver=0200, devnum=63, cfg=1, intf=0, alt=0, name="bootloader", serial="01.00.00.00"
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -R -a bootloader -D tiboot3.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #0 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 512
    Copying data from PC to DFU device
    Download	[=========================] 100%       569866 bytes
    Download done.
    state(6) = dfuMANIFEST-SYNC, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    dfu-util: can't detach
    Resetting USB to switch back to runtime mode
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -R -a tispl.bin -D tispl.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #0 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       848243 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    Resetting USB to switch back to runtime mode
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -R -a u-boot.img -D u-boot-am64xx-evm.img
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #1 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%      1116639 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    Resetting USB to switch back to runtime mode
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -l
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    Found DFU: [0451:6165] ver=0224, devnum=66, cfg=1, intf=0, alt=5, name="u-env.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=66, cfg=1, intf=0, alt=4, name="u-boot.img.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=66, cfg=1, intf=0, alt=3, name="tispl.bin.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=66, cfg=1, intf=0, alt=2, name="tiboot3.bin.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=66, cfg=1, intf=0, alt=1, name="rootfs", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=66, cfg=1, intf=0, alt=0, name="rawemmc", serial="0000000000000136"
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a tiboot3.bin.raw -D tiboot3.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #2 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       569866 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a tispl.bin.raw -D tispl.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #3 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       848243 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a u-boot.img.raw -D u-boot-am64xx-evm.img
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #4 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%      1116639 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ 
    
    

    am6_8.2_dfu_emmc_target.txt
    U-Boot SPL 2021.01-g44a87e3ab8 (Mar 30 2022 - 16:29:38 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    SPL initial stack usage: 13392 bytes
    Reading daughtercard EEPROM at 0x52 failed -1
    Trying to boot from DFU
    ##########################################DOWNLOAD ... OK
    Ctrl+C to exit ...
    init_env from device 10 not supported!
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.5(release):08.01.00.006-dirty
    NOTICE:  BL31: Built : 16:24:35, Mar 30 2022
    
    U-Boot SPL 2021.01-g44a87e3ab8 (Mar 30 2022 - 16:28:20 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    Reading daughtercard EEPROM at 0x52 failed -1
    Trying to boot from DFU
    #####DOWNLOAD ... OK
    Ctrl+C to exit ...
    
    
    U-Boot 2021.01-g44a87e3ab8 (Mar 30 2022 - 16:28:20 +0000)
    
    SoC:   AM64X SR1.0
    Model: Texas Instruments AM642 EVM
    Board: AM64-GPEVM rev E2
    DRAM:  2 GiB
    NAND:  1024 MiB
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Reading daughtercard EEPROM at 0x52 failed -1
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  2  1  0 
    => env default -f -a
    ## Resetting to default environment
    => pri dfu_alt_info_emmc
    dfu_alt_info_emmc=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1;
    => editenv dfu_alt_info_emmc
    edit: rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1; 
    => pri dfu_alt_info_emmc
    dfu_alt_info_emmc=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1
    => setenv dfu_alt_info ${dfu_alt_info_emmc}
    => pri dfu_alt_info
    dfu_alt_info=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1
    => dfu 0 mmc 0
    ###DOWNLOAD ... OK
    Ctrl+C to exit ...
    ####DOWNLOAD ... OK
    Ctrl+C to exit ...
    #####DOWNLOAD ... OK
    Ctrl+C to exit ...
    

  • Hello

    Thanks for the update. Yes seems there is an issue with this release.

    I have done the commands you provided to remove the semicolon at the end, looks it's working, log file below for uboot and then dfu-util list looks great.

    log_uboot.txt
    U-Boot 2021.01-g2de57d278b (May 20 2022 - 15:11:26 +0000)
    
    SoC:   AM64X SR1.0
    Model: Texas Instruments AM642 EVM
    Board: AM64-GPEVM rev A
    DRAM:  2 GiB
    NAND:  0 MiB
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from FAT... Card did not respond to voltage select! : -110
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0
    => env default -f -a
    ## Resetting to default environment
    => pri dfu_alt_info_emmc
    dfu_alt_info_emmc=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1;
    => editenv dfu_alt_info_emmc
    edit: rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1
    => pri dfu_alt_info_emmc
    dfu_alt_info_emmc=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1
    => setenv dfu_alt_info ${dfu_alt_info_emmc}
    => pri dfu_alt_info
    dfu_alt_info=rawemmc raw 0 0x800000 mmcpart 1;rootfs part 0 1 mmcpart 0;tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;tispl.bin.raw raw 0x800 0x1000 mmcpart 1;u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;u-env.raw raw 0x3800 0x100 mmcpart 1
    => dfu 0 mmc 0

    dfu_util.txt
    sudo dfu-util -l
    dfu-util 0.9
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2016 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
    
    Found DFU: [0451:6165] ver=0224, devnum=5, cfg=1, intf=0, path="1-1", alt=5, name="u-env.raw", serial="0000000000000170"
    Found DFU: [0451:6165] ver=0224, devnum=5, cfg=1, intf=0, path="1-1", alt=4, name="u-boot.img.raw", serial="0000000000000170"
    Found DFU: [0451:6165] ver=0224, devnum=5, cfg=1, intf=0, path="1-1", alt=3, name="tispl.bin.raw", serial="0000000000000170"
    Found DFU: [0451:6165] ver=0224, devnum=5, cfg=1, intf=0, path="1-1", alt=2, name="tiboot3.bin.raw", serial="0000000000000170"
    Found DFU: [0451:6165] ver=0224, devnum=5, cfg=1, intf=0, path="1-1", alt=1, name="rootfs", serial="0000000000000170"
    Found DFU: [0451:6165] ver=0224, devnum=5, cfg=1, intf=0, path="1-1", alt=0, name="rawemmc", serial="0000000000000170"

    Do you know  when a new release with this fix can be done by TI ? This is really annoying.

    Finally, can you indicate at this point what are the EXACT commands YOU are using to flash the eMMC : rootfs, kernel, device tree etc ?

    Thanks a lot for the help on this topic,

    Joel

  • Hi Joel,
    It is good to know you were able to eMMC flashing u-boot binary using USB dfu-util on your setup.
    I'll report the issue to TI Linux SW team, and keep you posted.
    At the same time, please use one of options listed below as a workaround:
    a). modify u-boot environment variable "dfu_alt_info_emmc" by removing the trailing semicolon @u-boot prompt as you had tested.
    b). rebuild u-boot by modifying "include/environment/ti/k3_dfu.h" as listed below:

    -	"u-env.raw raw 0x3800 0x100 mmcpart 1;\0"
    +	"u-env.raw raw 0x3800 0x100 mmcpart 1\0"

    How to eMMC flashing rootfs (including kernel/DTBs) using USB dft-util:
    1. create EXT4 rootfs on host: The below steps is used to create a EXT4 rootfs from TISDK "filesystem/tisdk-base-image-am64xx-evm.tar.xz", where "bs=1M seek=300" is used to create "tisdk-base.ext4" = 300M as an example:

    dd if=/dev/null of=tisdk-base.ext4 bs=1M seek=300
    mkfs.ext4 -F tisdk-base.ext4
    mkdir mnt_fs
    sudo mount -t ext4 tisdk-base.ext4 mnt_fs
    cd mnt_fs
    sudo tar xvf ../tisdk-base-image-am64xx-evm.tar.xz
    cd ..
    sudo umount mnt_fs

    2. eMMC flashing (continued after u-boot binary eMMC flashing steps) from host

    sudo dfu-util -a rootfs -D tisdk-base.ext4

    I'm attaching three log files in attachments for your reference:
    - am6_8.2_dfu_emmc_fs_host.txt: eMMC flashing "dfu-util" log on host
    - am6_8.2_dfu_emmc_fs_target.txt: eMMC flashing log on target
    - am6_8.2_emmc_full_boot.txt: eMMC boot log on target

    Best,
    -Hong

    am6_8.2_dfu_emmc_fs_host.txt
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -l
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    Found DFU: [0451:6165] ver=0224, devnum=72, cfg=1, intf=0, alt=5, name="u-env.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=72, cfg=1, intf=0, alt=4, name="u-boot.img.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=72, cfg=1, intf=0, alt=3, name="tispl.bin.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=72, cfg=1, intf=0, alt=2, name="tiboot3.bin.raw", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=72, cfg=1, intf=0, alt=1, name="rootfs", serial="0000000000000136"
    Found DFU: [0451:6165] ver=0224, devnum=72, cfg=1, intf=0, alt=0, name="rawemmc", serial="0000000000000136"
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a tiboot3.bin.raw -D tiboot3.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #2 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       569866 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a tispl.bin.raw -D tispl.bin
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #3 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%       848243 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a u-boot.img.raw -D u-boot-am64xx-evm.img
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #4 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%      1116639 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ sudo dfu-util -a rootfs -D tisdk-base.ext4
    dfu-util 0.8
    
    Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
    Copyright 2010-2014 Tormod Volden and Stefan Schmidt
    This program is Free Software and has ABSOLUTELY NO WARRANTY
    Please report bugs to dfu-util@lists.gnumonks.org
    
    dfu-util: Invalid DFU suffix signature
    dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
    Opening DFU capable USB device...
    ID 0451:6165
    Run-time device DFU version 0110
    Claiming USB DFU Interface...
    Setting Alternate Setting #1 ...
    Determining device status: state = dfuIDLE, status = 0
    dfuIDLE, continuing
    DFU mode device DFU version 0110
    Device returned transfer size 4096
    Copying data from PC to DFU device
    Download	[=========================] 100%    314572800 bytes
    Download done.
    state(7) = dfuMANIFEST, status(0) = No error condition is present
    state(2) = dfuIDLE, status(0) = No error condition is present
    Done!
    sitara@sitara-Latitude-E6410:~/am6/sdk8.2.0.10_gp/board-support/prebuilt-images$ 
    
    

    am6_8.2_dfu_emmc_fs_target.txt
    ###DOWNLOAD ... OK
    Ctrl+C to exit ...
    ####DOWNLOAD ... OK
    Ctrl+C to exit ...
    #####DOWNLOAD ... OK
    Ctrl+C to exit ...
    ################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################################DOWNLOAD ... OK
    Ctrl+C to exit ...

    am6_8.2_emmc_full_boot.txt
    U-Boot SPL 2021.01-g44a87e3ab8 (Mar 30 2022 - 16:29:38 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    SPL initial stack usage: 13392 bytes
    Reading daughtercard EEPROM at 0x52 failed -1
    Trying to boot from MMC1
    init_env from device 9 not supported!
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.5(release):08.01.00.006-dirty
    NOTICE:  BL31: Built : 16:24:35, Mar 30 2022
    
    U-Boot SPL 2021.01-g44a87e3ab8 (Mar 30 2022 - 16:28:20 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    Reading daughtercard EEPROM at 0x52 failed -1
    Trying to boot from MMC1
    
    
    U-Boot 2021.01-g44a87e3ab8 (Mar 30 2022 - 16:28:20 +0000)
    
    SoC:   AM64X SR1.0
    Model: Texas Instruments AM642 EVM
    Board: AM64-GPEVM rev E2
    DRAM:  2 GiB
    NAND:  1024 MiB
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    In:    serial@2800000
    Out:   serial@2800000
    Err:   serial@2800000
    Reading daughtercard EEPROM at 0x52 failed -1
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  2  0 
    => setenv mmcdev 0
    => setenv bootpart 0
    => boot
    switch to partitions #0, OK
    mmc0(part 0) is current device
    SD/MMC found on device 0
    Failed to load 'boot.scr'
    ** Unrecognized filesystem type **
    19276288 bytes read in 69 ms (266.4 MiB/s)
    54787 bytes read in 4 ms (13.1 MiB/s)
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
       Loading Device Tree to 000000008ffef000, end 000000008ffff602 ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 5.10.100-g7a7a3af903 (oe-user@oe-host) (aarch64-none-linux-gnu-gcc (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025, GNU ld (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 2.33.1.20191209) #1 SMP PREEMPT Wed Mar 30 16:32:32 UTC 2022
    [    0.000000] Machine model: Texas Instruments AM642 EVM
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a1000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a1100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a2000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a2000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a2100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a2100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a3000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a3100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a4000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-dma-memory@a4000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a4100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-memory@a4100000, compatible id shared-dma-pool
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009e7fffff]
    [    0.000000]   node   0: [mem 0x000000009e800000-0x00000000a57fffff]
    [    0.000000]   node   0: [mem 0x00000000a5800000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] cma: Reserved 512 MiB at 0x00000000c0000000
    [    0.000000] psci: probing for conduit method from DT.
    [    0.000000] psci: PSCIv1.1 detected in firmware.
    [    0.000000] psci: Using standard PSCI v0.2 function IDs
    [    0.000000] psci: Trusted OS migration not required
    [    0.000000] psci: SMC Calling Convention v1.2
    [    0.000000] percpu: Embedded 2 pages/cpu s49880 r8192 d73000 u131072
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] Built 1 zonelists, mobility grouping off.  Total pages: 32736
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=fc40000.spi.0:1m(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),57088k@8m(ospi.rootfs),256k(ospi.phypattern) root=PARTUUID=324d6ebf-ccc2-4d67-b291-805f3849d626 rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 262144 (order: 5, 2097152 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 131072 (order: 4, 1048576 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] Memory: 1432320K/2097152K available (10880K kernel code, 1288K rwdata, 4352K rodata, 1856K init, 751K bss, 140544K reserved, 524288K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu: 	RCU event tracing is enabled.
    [    0.000000] rcu: 	RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
    [    0.000000] 	Trampoline variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 256 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] GICv3: Distributor has no Range Selector support
    [    0.000000] GICv3: 16 PPIs implemented
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001840000
    [    0.000000] ITS [mem 0x01820000-0x0182ffff]
    [    0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
    [    0.000000] ITS@0x0000000001820000: allocated 1048576 Devices @a6000000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x00000000a58c0000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x00000000a58d0000
    [    0.000000] random: get_random_bytes called from start_kernel+0x31c/0x4c4 with crng_init=0
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000005] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.008532] Console: colour dummy device 80x25
    [    0.013120] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.023795] pid_max: default: 32768 minimum: 301
    [    0.028600] LSM: Security Framework initializing
    [    0.033405] Mount-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.040996] Mountpoint-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.051330] rcu: Hierarchical SRCU implementation.
    [    0.056593] Platform MSI: msi-controller@1820000 domain created
    [    0.062973] PCI/MSI: /bus@f4000/interrupt-controller@1800000/msi-controller@1820000 domain created
    [    0.072262] EFI services will not be available.
    [    0.077273] smp: Bringing up secondary CPUs ...
    [    0.082979] Detected VIPT I-cache on CPU1
    [    0.083020] GICv3: CPU1: found redistributor 1 region 0:0x0000000001860000
    [    0.083035] GICv3: CPU1: using allocated LPI pending table @0x00000000a58e0000
    [    0.083101] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.083233] smp: Brought up 1 node, 2 CPUs
    [    0.112623] SMP: Total of 2 processors activated.
    [    0.117434] CPU features: detected: 32-bit EL0 Support
    [    0.122708] CPU features: detected: CRC32 instructions
    [    0.136023] CPU: All CPU(s) started at EL2
    [    0.140227] alternatives: patching kernel code
    [    0.145999] devtmpfs: initialized
    [    0.157523] KASLR disabled due to lack of seed
    [    0.162373] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.172343] futex hash table entries: 512 (order: -1, 32768 bytes, linear)
    [    0.181288] pinctrl core: initialized pinctrl subsystem
    [    0.187289] DMI not present or invalid.
    [    0.191889] NET: Registered protocol family 16
    [    0.204213] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.211884] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.219908] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.228645] thermal_sys: Registered thermal governor 'step_wise'
    [    0.228652] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.235328] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.249029] ASID allocator initialised with 65536 entries
    [    0.284348] HugeTLB registered 16.0 GiB page size, pre-allocated 0 pages
    [    0.291229] HugeTLB registered 512 MiB page size, pre-allocated 0 pages
    [    0.297990] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.306859] cryptd: max_cpu_qlen set to 1000
    [    0.315143] k3-chipinfo 43000014.chipid: Family:AM64X rev:SR1.0 JTAGID[0x0bb3802f] Detected
    [    0.324395] vsys_5v0: supplied by evm_12v0
    [    0.329277] vsys_3v3: supplied by evm_12v0
    [    0.334025] vddb_3v3_display: supplied by vsys_3v3
    [    0.340336] iommu: Default domain type: Translated 
    [    0.345738] SCSI subsystem initialized
    [    0.350315] mc: Linux media interface: v0.10
    [    0.354716] videodev: Linux video capture interface: v2.00
    [    0.360418] pps_core: LinuxPPS API ver. 1 registered
    [    0.365493] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.374837] PTP clock support registered
    [    0.378878] EDAC MC: Ver: 3.0.0
    [    0.382924] omap-mailbox 29020000.mailbox: omap mailbox rev 0x66fc9100
    [    0.389832] omap-mailbox 29040000.mailbox: omap mailbox rev 0x66fc9100
    [    0.396639] omap-mailbox 29060000.mailbox: omap mailbox rev 0x66fc9100
    [    0.404149] FPGA manager framework
    [    0.407747] Advanced Linux Sound Architecture Driver Initialized.
    [    0.415190] clocksource: Switched to clocksource arch_sys_counter
    [    0.421959] VFS: Disk quotas dquot_6.6.0
    [    0.426111] VFS: Dquot-cache hash table entries: 8192 (order 0, 65536 bytes)
    [    0.439796] NET: Registered protocol family 2
    [    0.444517] IP idents hash table entries: 32768 (order: 2, 262144 bytes, linear)
    [    0.453627] tcp_listen_portaddr_hash hash table entries: 4096 (order: 0, 65536 bytes, linear)
    [    0.462482] TCP established hash table entries: 16384 (order: 1, 131072 bytes, linear)
    [    0.470702] TCP bind hash table entries: 16384 (order: 2, 262144 bytes, linear)
    [    0.478427] TCP: Hash tables configured (established 16384 bind 16384)
    [    0.485333] UDP hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.492272] UDP-Lite hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.499800] NET: Registered protocol family 1
    [    0.504882] RPC: Registered named UNIX socket transport module.
    [    0.510961] RPC: Registered udp transport module.
    [    0.515773] RPC: Registered tcp transport module.
    [    0.520586] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.527179] PCI: CLS 0 bytes, default 64
    [    0.532001] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
    [    0.545382] Initialise system trusted keyrings
    [    0.550238] workingset: timestamp_bits=46 max_order=15 bucket_order=0
    [    0.561784] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.568530] NFS: Registering the id_resolver key type
    [    0.573759] Key type id_resolver registered
    [    0.578059] Key type id_legacy registered
    [    0.582235] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.589087] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.596880] 9p: Installing v9fs 9p2000 file system support
    [    0.646324] Key type asymmetric registered
    [    0.650525] Asymmetric key parser 'x509' registered
    [    0.655569] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
    [    0.663140] io scheduler mq-deadline registered
    [    0.667775] io scheduler kyber registered
    [    0.674426] pinctrl-single f4000.pinctrl: 180 pins, size 720
    [    0.681478] pinctrl-single a40000.timesync-router: 512 pins, size 2048
    [    0.698203] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.722368] brd: module loaded
    [    0.733752] loop: module loaded
    [    0.737917] megasas: 07.714.04.00-rc1
    [    0.746313] tun: Universal TUN/TAP device driver, 1.6
    [    0.752291] igbvf: Intel(R) Gigabit Virtual Function Network Driver
    [    0.758719] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.764834] sky2: driver version 1.30
    [    0.769834] VFIO - User Level meta-driver version: 0.3
    [    0.776238] i2c /dev entries driver
    [    0.781053] sdhci: Secure Digital Host Controller Interface driver
    [    0.787393] sdhci: Copyright(c) Pierre Ossman
    [    0.792580] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.799767] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.806374] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    0.814381] optee: probing for conduit method.
    [    0.819008] optee: revision 3.12 (3d47a131)
    [    0.819681] optee: initialized driver
    [    0.830292] NET: Registered protocol family 17
    [    0.835039] 9pnet: Installing 9P2000 support
    [    0.839476] Key type dns_resolver registered
    [    0.844086] Loading compiled-in X.509 certificates
    [    0.864535] ti-sci 44043000.dmsc: ABI: 3.1 (firmware rev 0x0016 '22.1.1--v2022.01 (Terrific Llam')
    [    0.929367] random: fast init done
    [    0.939105] omap-gpmc 3b000000.memory-controller: GPMC revision 6.0
    [    0.945603] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000
    [    0.954119] omap_i2c 20000000.i2c: bus 0 rev0.12 at 100 kHz
    [    0.961947] pca953x 1-0022: supply vcc not found, using dummy regulator
    [    0.968902] pca953x 1-0022: using AI
    [    1.024766] Console: switching to mono frame buffer device 12x2
    [    1.059623] ssd1307fb 1-003c: fb0: Solomon SSD1307 framebuffer device registered, using 192 bytes of video memory
    [    1.070328] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz
    [    1.077624] omap_i2c 20020000.i2c: bus 2 rev0.12 at 100 kHz
    [    1.084686] omap_i2c 20030000.i2c: bus 3 rev0.12 at 100 kHz
    [    1.090984] ti-sci-intr bus@f4000:bus@4000000:interrupt-controller1: Interrupt Router 5 domain created
    [    1.100951] ti-sci-intr bus@f4000:interrupt-controller0: Interrupt Router 3 domain created
    [    1.109805] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
    [    1.131508] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges:
    [    1.139143] j721e-pcie f102000.pcie:       IO 0x0068001000..0x0068010fff -> 0x0068001000
    [    1.147431] j721e-pcie f102000.pcie:      MEM 0x0068011000..0x006fffffff -> 0x0068011000
    [    1.155718] j721e-pcie f102000.pcie:   IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000
    [    2.167960] j721e-pcie f102000.pcie: PCI host bridge to bus 0000:00
    [    2.174403] pci_bus 0000:00: root bus resource [bus 00-ff]
    [    2.180015] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0x68001000-0x68010fff])
    [    2.189704] pci_bus 0000:00: root bus resource [mem 0x68011000-0x6fffffff]
    [    2.196773] pci 0000:00:00.0: [104c:b010] type 01 class 0x060400
    [    2.202930] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0xfffffffff 64bit pref]
    [    2.210480] pci 0000:00:00.0: supports D1
    [    2.214579] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [    2.223124] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
    [    2.233801] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
    [    2.240629] pci 0000:00:00.0: BAR 0: no space for [mem size 0x1000000000 64bit pref]
    [    2.248551] pci 0000:00:00.0: BAR 0: failed to assign [mem size 0x1000000000 64bit pref]
    [    2.256827] pci 0000:00:00.0: PCI bridge to [bus 01]
    [    2.262450] pcieport 0000:00:00.0: PME: Signaling with IRQ 44
    [    2.269130] ti-bcdma 485c0100.dma-controller: Number of rings: 68
    [    2.276797] ti-bcdma 485c0100.dma-controller: Channels: 24 (bchan: 12, tchan: 6, rchan: 6)
    [    2.287131] ti-pktdma 485c0000.dma-controller: Number of rings: 288
    [    2.302163] ti-pktdma 485c0000.dma-controller: Channels: 44 (tchan: 29, rchan: 15)
    [    2.313495] printk: console [ttyS2] disabled
    [    2.317960] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 16, base_baud = 3000000) is a 8250
    [    2.326727] printk: console [ttyS2] enabled
    [    2.326727] printk: console [ttyS2] enabled
    [    2.335175] printk: bootconsole [ns16550a0] disabled
    [    2.335175] printk: bootconsole [ns16550a0] disabled
    [    2.350445] spi-nor spi0.0: s28hs512t (65536 Kbytes)
    [    2.355472] 7 cmdlinepart partitions found on MTD device fc40000.spi.0
    [    2.361992] Creating 7 MTD partitions on "fc40000.spi.0":
    [    2.367390] 0x000000000000-0x000000100000 : "ospi.tiboot3"
    [    2.374294] 0x000000100000-0x000000300000 : "ospi.tispl"
    [    2.380890] 0x000000300000-0x000000700000 : "ospi.u-boot"
    [    2.387636] 0x000000700000-0x000000740000 : "ospi.env"
    [    2.393996] 0x000000740000-0x000000780000 : "ospi.env.backup"
    [    2.401017] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
    [    2.407805] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
    [    2.471199] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    2.481075] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
    [    2.489316] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002
    [    2.502720] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 16
    [    2.509557] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4
    [    2.516707] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
    [    2.523487] pps pps0: new PPS source ptp0
    [    2.527907] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
    [    2.541244] am65-cpts 39000000.cpts: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0
    [    2.551751] mmc0: CQHCI version 5.10
    [    2.556786] gpio-mux mux-controller: 2-way mux-controller registered
    [    2.571973] vdd_mmc1: supplied by vsys_3v3
    [    2.586314] mmc1: CQHCI version 5.10
    [    2.586448] debugfs: Directory 'pd:114' with parent 'pm_genpd' already present!
    [    2.597334] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
    [    2.620029] ALSA device list:
    [    2.623005]   No soundcards found.
    [    2.693237] mmc0: Command Queue Engine enabled
    [    2.697711] mmc0: new HS400 MMC card at address 0001
    [    2.703465] mmcblk0: mmc0:0001 S0J56X 14.8 GiB 
    [    2.708217] mmcblk0boot0: mmc0:0001 S0J56X partition 1 31.5 MiB
    [    2.714330] mmcblk0boot1: mmc0:0001 S0J56X partition 2 31.5 MiB
    [    2.720487] mmcblk0rpmb: mmc0:0001 S0J56X partition 3 4.00 MiB, chardev (237:0)
    [    2.730365]  mmcblk0: p1
    [    4.112544] sdhci-am654 fa00000.mmc: Power on failed
    [    4.148254] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [    4.233320] EXT4-fs (mmcblk0p1): recovery complete
    [    4.239501] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: (null)
    [    4.247682] VFS: Mounted root (ext4 filesystem) on device 179:1.
    [    4.254340] devtmpfs: mounted
    [    4.258284] Freeing unused kernel memory: 1856K
    [    4.262855] Run /sbin/init as init process
    [    4.330434] systemd[1]: System time before build time, advancing clock.
    [    4.369030] NET: Registered protocol family 10
    [    4.374725] Segment Routing with IPv6
    [    4.390368] systemd[1]: systemd 244.5+ running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR -SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=hybrid)
    [    4.412669] systemd[1]: Detected architecture arm64.
    
    Welcome to Arago 2021.09!
    
    [    4.456069] systemd[1]: Set hostname to <am64xx-evm>.
    [    4.857392] random: systemd: uninitialized urandom read (16 bytes read)
    [    4.864358] systemd[1]: system-getty.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
    [    4.876730] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
    [    4.888741] systemd[1]: Created slice system-getty.slice.
    [  OK  ] Created slice system-getty.slice.
    [    4.915420] random: systemd: uninitialized urandom read (16 bytes read)
    [    4.923622] systemd[1]: Created slice system-serial\x2dgetty.slice.
    [  OK  ] Created slice system-serial\x2dgetty.slice.
    [    4.947438] random: systemd: uninitialized urandom read (16 bytes read)
    [    4.955611] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    [    4.979824] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password �ts to Console Directory Watch.
    [    5.003739] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password R�uests to Wall Directory Watch.
    [    5.027592] systemd[1]: Reached target Paths.
    [  OK  ] Reached target Paths.
    [    5.043503] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    5.063460] systemd[1]: Reached target Slices.
    [  OK  ] Reached target Slices.
    [    5.079491] systemd[1]: Reached target Swap.
    [  OK  ] Reached target Swap.
    [    5.099974] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    [    5.123521] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    [    5.149052] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    [    5.171863] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    [    5.204302] systemd[1]: Condition check resulted in Journal Audit Socket being skipped.
    [    5.213288] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    5.236154] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    [    5.252406] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    [    5.276156] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    [    5.299992] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [    5.329564] systemd[1]: Mounting Huge Pages File System...
             Mounting Huge Pages File System...
    [    5.353253] systemd[1]: Mounting POSIX Message Queue File System...
             Mounting POSIX Message Queue File System...
    [    5.385352] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    [    5.411452] systemd[1]: Mounting Temporary Directory (/tmp)...
             Mounting Temporary Directory (/tmp)...
    [    5.433552] systemd[1]: Starting Create list of static device nodes for the current kernel...
             Starting Create list of st�odes for the current kernel...
    [    5.465186] systemd[1]: Starting Start psplash boot splash screen...
             Starting Start psplash boot splash screen...
    [    5.498398] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    [    5.523611] systemd[1]: Condition check resulted in File System Check on Root Device being skipped.
    [    5.539642] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    [    5.567083] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    [    5.593795] cryptodev: loading out-of-tree module taints kernel.
    [    5.606178] systemd[1]: Starting Remount Root and Kernel File Systems...
    [    5.615869] cryptodev: driver 1.10 loaded.
             Starting Remount Root and Kernel File Systems...
    [    5.637767] systemd[1]: Starting udev Coldplug all Devices...
             Starting udev Coldplug all Devices...
    [    5.681372] systemd[1]: Started Start psplash boot splash screen.
    [  OK  ] Started Start psplash boot splash s[    5.702093] EXT4-fs (mmcblk0p1): re-mounted. Opts: (null)
    creen.
    [    5.713408] ext4 filesystem being remounted at / supports timestamps until 2038 (0x7fffffff)
    [    5.725579] systemd[1]: Started RPC Bind.
    [  OK  ] Started RPC Bind.
    [    5.740479] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    [  OK  ] Mounted Huge Pages File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [  OK  ] Mounted Kernel Debug File System.
    [  OK  ] Mounted Temporary Directory (/tmp).
    [  OK  ] Started Create list of sta� nodes for the current kernel.
    [  OK  ] Started Load Kernel Modules.
    [  OK  ] Started Remount Root and Kernel File Systems.
             Mounting Kernel Configuration File System...
    [  OK  ] Started Start psplash-syst�progress communication helper.
             Starting Flush Journal to Persistent Storage...
             Starting Apply Kernel Variables...
    [    5.973790] systemd-journald[160]: Received client request to flush runtime journal.
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Started Flush Journal to Persistent Storage.
    [  OK  ] Started Apply Kernel Variables.
    [  OK  ] Started Create Static Device Nodes in /dev.
    [  OK  ] Reached target Local File Systems (Pre).
             Mounting /media/ram...
             Mounting /var/volatile...
             Starting udev Kernel Device Manager...
    [  OK  ] Mounted /media/ram.
    [  OK  ] Mounted /var/volatile.
             Starting Load/Save Random Seed...
    [  OK  ] Reached target Local File Systems.
             Starting Create Volatile Files and Directories...
    [  OK  ] Started udev Kernel Device Manager.
    [  OK  ] Started Create Volatile Files and Directories.
             Starting Network Time Synchronization...
             Starting Update UTMP about System Boot/Shutdown...
    [  OK  ] Started udev Coldplug all Devices.
    [  OK  ] Started Update UTMP about System Boot/Shutdown.
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Reached target System Initialization.
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    [  OK  ] Reached target System Time Set.
    [  OK  ] Reached target System Time Synchronized.
    [  OK  ] Reached target Timers.
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    [  OK  ] Listening on D-Bus System Message Bus Socket.
    [  OK  ] Listening on dropbear.socket.
    [  OK  ] Reached target Sockets.
    [  OK  ] Reached target Basic System.
    [  OK  ] Started D-Bus System Message Bus.
             Starting Print notice about GPLv3 packages...
             Starting IPv6 Packet Filtering Framework...
             Starting IPv4 Packet Filtering Framework...
             Starting Login Service...
    [  OK  ] Started TEE Supplicant.
             Starting telnetd.service...
    [  OK  ] Started IPv6 Packet Filtering Framework.
    [  OK  ] Started IPv4 Packet Filtering Framework.
    [  OK  ] Started telnetd.service.
    [    7.268147] CAN device driver interface
    [  OK  ] Reached target Network (Pre).
             Starting Network Service...
    [  OK  ] Started Network Service.
             Starting Wait for Network to be Configured...
             Starting Network Name Resolution...
    [  OK  ] Started Login Service.
    [    8.047355] 93xx46 spi1.0: 16-bit eeprom 
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPLv3 packages:
    	bash
    	cifs-utils
    	dosfstools
    	less
    	libdw1
    	libelf1
    	libreadline8
    	parted
    
    If you do not wish to distribute GPLv3 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above
    
    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************
    ***************************************************************
    [  OK  ] Started Print notice about GPLv3 packages.
    [    8.535286] random: crng init done
    [    8.538724] random: 7 urandom warning(s) missed due to ratelimiting
    [  OK  ] Created slice system-systemd\x2dbacklight.slice.
             Starting Load/Save Screen �ess of backlight:ssd1307fb0...
    [  OK  ] Started Network Name Resolution.
    [  OK  ] Started Load/Save Random Seed.
    [  OK  ] Started Load/Save Screen B�tness of backlight:ssd1307fb0.
    [  OK  ] Reached target Network.
    [  OK  ] Reached target Host and Network Name Lookups.
             Starting Avahi mDNS/DNS-SD Stack...
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..
             Starting Permit User Sessions...
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    [  OK  ] Started Permit User Sessions.
    [    8.831346] davinci_mdio 300b2400.mdio: davinci mdio revision 1.7, bus freq 1000000
    [  OK  ] Started Getty on tty1.
    [  OK  ] Started Serial Getty on ttyS1.
    [  OK  ] Started Serial Getty on ttyS2.
    [  OK  ] Reached target Login Prompts.[    8.919126] davinci_mdio 300b2400.mdio: phy[15]: device 300b2400.mdio:0f, driver TI DP83869
    
             Starting Synchronize System and HW clocks...
    [    8.987964] k3-m4-rproc 5000000.m4fss: assigned reserved memory node m4f-dma-memory@a4000000
    [FAILED] Failed to start Synchronize System and HW clocks.
    See 'systemctl status sync-clocks.service' for details.
    [    9.040522] platform 78000000.r5f: configured R5F for remoteproc mode
    [    9.092360] k3-m4-rproc 5000000.m4fss: configured M4 for remoteproc mode
    [    9.121754] platform 78000000.r5f: assigned reserved memory node r5f-dma-memory@a0000000
    [    9.141487] k3-m4-rproc 5000000.m4fss: local reset is deasserted for device
    [    9.198423] remoteproc remoteproc1: 78000000.r5f is available
    [    9.217680] remoteproc remoteproc0: 5000000.m4fss is available
    [    9.252385] remoteproc remoteproc1: Direct firmware load for am64-main-r5f0_0-fw failed with error -2
    [    9.263283] platform 78200000.r5f: configured R5F for remoteproc mode
    [    9.266644] remoteproc remoteproc1: powering up 78000000.r5f
    [    9.283402] remoteproc remoteproc1: Direct firmware load for am64-main-r5f0_0-fw failed with error -2
    [    9.294257] remoteproc remoteproc0: Direct firmware load for am64-mcu-m4f0_0-fw failed with error -2
    [    9.299217] remoteproc remoteproc1: request_firmware failed: -2
    [    9.307323] remoteproc remoteproc0: powering up 5000000.m4fss
    [    9.321962] remoteproc remoteproc0: Direct firmware load for am64-mcu-m4f0_0-fw failed with error -2
    [    9.338829] remoteproc remoteproc0: request_firmware failed: -2
    [    9.343329] platform 78200000.r5f: assigned reserved memory node r5f-dma-memory@a1000000
    [    9.364449] remoteproc remoteproc2: 78200000.r5f is available
    [    9.377977] remoteproc remoteproc2: Direct firmware load for am64-main-r5f0_1-fw failed with error -2
    [    9.391364] remoteproc remoteproc2: powering up 78200000.r5f
    [    9.415323] remoteproc remoteproc2: Direct firmware load for am64-main-r5f0_1-fw failed with error -2
    [    9.427320] remoteproc remoteproc2: request_firmware failed: -2
    [    9.441534] platform 78400000.r5f: configured R5F for remoteproc mode
    [    9.458136] TI DP83867 8000f00.mdio:00: attached PHY driver [TI DP83867] (mii_bus:phy_addr=8000f00.mdio:00, irq=POLL)
    [    9.460451] platform 78400000.r5f: assigned reserved memory node r5f-dma-memory@a2000000
    [    9.482342] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down
    [    9.508824] remoteproc remoteproc3: 78400000.r5f is available
    [    9.522435] remoteproc remoteproc3: Direct firmware load for am64-main-r5f1_0-fw failed with error -2
    [    9.538543] remoteproc remoteproc3: powering up 78400000.r5f
    [    9.546362] platform 78600000.r5f: configured R5F for remoteproc mode
    [    9.553020] remoteproc remoteproc3: Direct firmware load for am64-main-r5f1_0-fw failed with error -2
    [    9.558515] TI DP83869 0.1:03: attached PHY driver [TI DP83869] (mii_bus:phy_addr=0.1:03, irq=POLL)
    [    9.567238] remoteproc remoteproc3: request_firmware failed: -2
    [    9.590854] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down
    [    9.603601] m_can_platform 20701000.can: m_can device registered (irq=36, version=32)
    [    9.639561] platform 78600000.r5f: assigned reserved memory node r5f-dma-memory@a3000000
    [    9.641992] m_can_platform 20711000.can: m_can device registered (irq=38, version=32)
    [    9.744748] remoteproc remoteproc4: 78600000.r5f is available
    [    9.757691] remoteproc remoteproc4: Direct firmware load for am64-main-r5f1_1-fw failed with error -2
    [    9.770140] remoteproc remoteproc4: powering up 78600000.r5f
    [    9.775980] remoteproc remoteproc4: Direct firmware load for am64-main-r5f1_1-fw failed with error -2
    [    9.791296] remoteproc remoteproc4: request_firmware failed: -2
    [    9.901613] remoteproc remoteproc5: 30034000.pru is available
    [    9.960982] remoteproc remoteproc6: 30004000.rtu is available
    [   10.042916] remoteproc remoteproc7: 3000a000.txpru is available
    [   10.116081] remoteproc remoteproc8: 30038000.pru is available
    [   10.174050] remoteproc remoteproc9: 30006000.rtu is available
    [   10.204491] remoteproc remoteproc10: 3000c000.txpru is available
    [   10.222351] remoteproc remoteproc11: 300b4000.pru is available
    [   10.229231] remoteproc remoteproc12: 30084000.rtu is available
    [   10.243029] remoteproc remoteproc13: 3008a000.txpru is available
    [   10.288335] remoteproc remoteproc14: 300b8000.pru is available
    [   10.339808] remoteproc remoteproc15: 30086000.rtu is available
    [   10.361619] remoteproc remoteproc16: 3008c000.txpru is available
    [   11.980566] icssg-prueth icssg1-eth: TI PRU ethernet driver initialized: single EMAC mode
    [   12.027319] omap_rng 40910000.rng: Random Number Generator ver. 241b34c
    [   12.333876] usbcore: registered new interface driver usbfs
    [   12.352422] usbcore: registered new interface driver hub
    [   12.358041] usbcore: registered new device driver usb
    [   12.609037] remoteproc remoteproc11: powering up 300b4000.pru
    [   12.620377] remoteproc remoteproc11: Booting fw image ti-pruss/am65x-sr2-pru0-prueth-fw.elf, size 37264
    [   12.629890] remoteproc remoteproc11: unsupported resource 5
    [   12.635612] remoteproc remoteproc11: remote processor 300b4000.pru is now up
    [   12.642743] remoteproc remoteproc12: powering up 30084000.rtu
    [   12.649497] remoteproc remoteproc12: Booting fw image ti-pruss/am65x-sr2-rtu0-prueth-fw.elf, size 30832
    [   12.659004] remoteproc remoteproc12: remote processor 30084000.rtu is now up
    [   12.666106] remoteproc remoteproc13: powering up 3008a000.txpru
    [   12.672928] remoteproc remoteproc13: Booting fw image ti-pruss/am65x-sr2-txpru0-prueth-fw.elf, size 36656
    [   12.682591] remoteproc remoteproc13: remote processor 3008a000.txpru is now up
    [   12.691385] pps pps1: new PPS source ptp2
    [   12.739056] TI DP83869 300b2400.mdio:0f: attached PHY driver [TI DP83869] (mii_bus:phy_addr=300b2400.mdio:0f, irq=POLL)
    [   12.750100] net eth2: started
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project http://arago-project.org am64xx-evm ttyS2
    
    Arago 2021.09 am64xx-evm ttyS2
    
    am64xx-evm login: root
    root@am64xx-evm:~# uname -a
    Linux am64xx-evm 5.10.100-g7a7a3af903 #1 SMP PREEMPT Wed Mar 30 16:32:32 UTC 2022 aarch64 GNU/Linux
    root@am64xx-evm:~# 

  • Hello

    Thanks a lot for sharing these logs, this is really helpful and now I have full flashing of the eMMC. Thank you very much !

    Some feedbacks for TI:

    - u-boot configuration of the AM64XX EVM should be fixed in the next releases, this is really annoying. please check bellow the patch fixing dfu, mmcdev and bootpart

    - I have just checked and checked again the documentation, I have found nowhere the instructions to flash the eMCC with the commands you provided. I don't understand why it's not available in the documentation and it's clearly something that need to be added !!! i have provided my complete procedure just below - when we start on an evaluation board this is basic stuff and losing time at this step is really irritating

    - Finally, i suggest IMAGE_FSTYPES += "ext4" should be added in the definition of the TI machine. This permit easily to create the ext4 file system in the deploy directory without creating manually. The above procedure assumes this is done this way and ext4 is generated in the deploy directory.

    ---

    For remembering and future readers, I'm posting here the complete solution for my problem.

    I'm using Processor SDK V08.02.00.17 for the AM64XX EVM board. Documentation is at https://software-dl.ti.com/processor-sdk-linux/esd/AM64X/08_02_00_17/exports/docs/devices/AM64X/Overview.html.

    I have created my own meta-layer and added the following u-boot patch to fix the u-boot configuration for use with eMMC:

    0001-fix-u-boot-config.patch.txt
    diff -Naur a/include/configs/am64x_evm.h b/include/configs/am64x_evm.h
    --- a/include/configs/am64x_evm.h	2022-06-01 12:09:37.762031918 +0200
    +++ b/include/configs/am64x_evm.h	2022-06-01 12:10:02.706498329 +0200
    @@ -121,8 +121,8 @@
     /* U-Boot MMC-specific configuration */
     #define EXTRA_ENV_AM642_BOARD_SETTINGS_MMC				\
     	"boot=mmc\0"							\
    -	"mmcdev=1\0"							\
    -	"bootpart=1:2\0"						\
    +	"mmcdev=0\0"							\
    +	"bootpart=0\0"						\
     	"bootdir=/boot\0"						\
     	"rd_spec=-\0"							\
     	"init_mmc=run args_all args_mmc\0"				\
    diff -Naur a/include/environment/ti/k3_dfu.h b/include/environment/ti/k3_dfu.h
    --- a/include/environment/ti/k3_dfu.h	2022-06-01 12:07:57.431890274 +0200
    +++ b/include/environment/ti/k3_dfu.h	2022-06-01 12:08:28.003168775 +0200
    @@ -36,7 +36,7 @@
     	"tiboot3.bin.raw raw 0x0 0x800 mmcpart 1;" \
     	"tispl.bin.raw raw 0x800 0x1000 mmcpart 1;" \
     	"u-boot.img.raw raw 0x1800 0x2000 mmcpart 1;" \
    -	"u-env.raw raw 0x3800 0x100 mmcpart 1;\0"
    +	"u-env.raw raw 0x3800 0x100 mmcpart 1\0"
     
     #define DFU_ALT_INFO_OSPI \
     	"dfu_alt_info_ospi=" \
    

    I have also added the following in my local.conf file to generate the wanted rootfs: IMAGE_FSTYPES += "ext4"

    Then building the Yocto image as usual (see documentation).

    Once building is completed, I'm following the above procedure to flash the eMMC using dfu-util (over USB link):

    1/ Connect USB OTG port and console terminal of the AM64xx EVM to your computer

    2/ Move boot switches to the following: SW2[1:8] = 11001010 and SW3[1:8] = 00000000

    3/ Switch ON power supply of the board

    4/ Execute the following on your computer (files from the Yocto deploy directory):

    sudo dfu-util -R -a bootloader -D tiboot3.bin
    sudo dfu-util -R -a tispl.bin -D tispl.bin
    sudo dfu-util -R -a u-boot.img -D u-boot-am64xx-evm.img

    5/ Execute the following in the uboot console on the board:

    setenv dfu_alt_info ${dfu_alt_info_emmc}
    dfu 0 mmc 0

    6/ Execute the following on your computer (files from the Yocto deploy directory):

    sudo dfu-util -a tiboot3.bin.raw -D tiboot3.bin
    sudo dfu-util -a tispl.bin.raw -D tispl.bin
    sudo dfu-util -a u-boot.img.raw -D u-boot-am64xx-evm.img
    sudo dfu-util -a rootfs -D tisdk-base-image-am64xx-evm.ext4

    7/ Switch OFF power supply of the board

    8/ Move boot switches to the following: SW2[1:8] = 11010010 and SW3[1:8] = 00000000

    9/ Switch ON power supply of the board, this is booting on eMMC and terminal is displayed (user is root with no password)

    Quick and simple, vote up is this is useful for you !!

    Joel

  • Hi Joel,
    It is good to know the full Linux eMMC flashing with USB dfu-util works now on your setup.
    Thank you for your feedback on how to improve TI SDK documentations, and I'll share your valuable input with TI SW teams.
    Your summary of eMMC flashing steps will be helpful to other users as well.
    Best,
    -Hong