U-boot runupdate problem

Hello everyone,

I have a Colibri T20 target supporting 2.3 BSP.

I used to update the target, set in recovery mode, by means of its USB slave port.

Now I am trying to update the target from 2.3 BSP to 2.8 BSP by means of an USB stick.

The problem is that U-boot provided in 2.3 BSP does not support the setupdate command.

U-Boot 2011.06-svn58-svn26 (Nov 23 2015 - 17:13:54)

TEGRA2

DRAM: 512 MiB

NAND: 1024 MiB

MMC: Tegra2 SD/MMC: 0

Board: Toradex Colibri T20

Net: Net Initialization Skipped

No ethernet found.

Hit any key to stop autoboot: 0

Colibri T20 # run setupdate

Error: “setupdate” not defined

Colibri T20 #

I cannot find setupdate support in the U-Boot sources.

Then, as suggested by Txx Recovery Mode | Toradex Developer Center
I set target RCM in order to transfer and execute 2.8 BSP U-Boot directly on target RAM

Colibri T20 # enterrcm

Entering RCM…

Then in the Linux Host (Fedora 27 KDE) I issued the 2.8 BSP update.sh script with the -d option:

[venturi@localhost Colibri-T20_LXDE-Image_2.8.1]$ ./update.sh -d -m 3 -r 512 -v V1_2

Colibri T20 rootfs specified

bct file: …/colibri-t20_bin/colibri_t20-512-v12-nand.bct

bootloader file: …/colibri-t20_bin/u-boot-dtb-tegra.bin

load addr 0x80108000

entry addr 0x80108000

device id: 0x7820

uid: 0x0428008744411317

RCM version: 2.1

downloading miniloader to target at address 0x40008000 (132976 bytes)…

miniloader downloaded successfully

Chip UID: 0x00000000000000000428008744411317

Chip ID: 0x20

Chip ID Major Version: 0x1

Chip ID Minor Version: 0x3

Chip SKU: 0x8 (t20)

Boot ROM Version: 0x1

Boot Device: 0x1 (NAND)

Operating Mode: 0x3 (developer mode)

Device Config Strap: 0x0

Device Config Fuse: 0x20

SDRAM Config Strap: 0x0

sending file: …/colibri-t20_bin/colibri_t20-512-v12-nand.bct

  • 4080/4080 bytes sent

…/colibri-t20_bin/colibri_t20-512-v12-nand.bct sent successfully

sending file: …/colibri-t20_bin/u-boot-dtb-tegra.bin

/ 725808/725808 bytes sent

…/colibri-t20_bin/u-boot-dtb-tegra.bin sent successfully

[venturi@localhost Colibri-T20_LXDE-Image_2.8.1]$

The problem is that the target simply remains frozen in recovery mode, and U-boot is not run at all.

How to solve such problem ?

Thank you for your attention.

hi,

what do you see, when you restart the module?
Can you go to recovery mode, again?

The module restarts with no software modifications at all.

It is possible to enter RCM again, through U-boot enterrcm command

or through Reset/Recovery buttons as well.


Chip ID Minor Version: 0x3

That really means you are doing this with a rather ancient module, right? As we have been shipping now A4 silicon T20 modules since more than 5 years. Could you please post the serial number? Have you tried the same with a recent module at all?

The problem is that the target simply remains frozen in recovery mode, and U-boot is not run at all.

And you properly hooked up the serial debug console, right?

The Colibri T20 module label says:
Col T20 512 MB
V1.2A
02484598

The EVM target label says:
Col Evaluation
V3.1A
00038272

Please note that the same problem is replied exactly even for a 256 MB module acquired on June 2015.

The Colibri T20 module label says:
Col T20 256 MB
V1.2A
04845443

The serial debug console is properly hooked, infact I execute enterrcm from u-boot console.

The Colibri T20 module label says: Col T20 512 MB V1.2A 02484598

Production Date: 2013-04-02 09:12:41

The EVM target label says: Col Evaluation V3.1A 00038272

Production Date: 2013-01-30 00:00:00

Please note that the same problem is replied exactly even for a 256 MB module acquired on June 2015.

The Colibri T20 module label says: Col T20 256 MB V1.2A 04845443

Production Date: 2014-12-09 12:00:00

The serial debug console is properly hooked, infact I execute enterrcm from u-boot console.

Strange, I just tried it even with a much older module produced more than 6 years ago and it also worked just fine. I really do not know why exactly any of this should not be working for you. I would still suggest trying the same with a completely different carrier bord resp. module. If that still fails you could RMA the failing modules for us to have a closer look.

I tried to transfer and execute U-boot on the target in recovery mode by means of an old update.sh utility provided in BSP V2.3…

The process fails but with different results with respect to NSP V2.8.

venturi@linux2-rs:~/toradex/Colibri_T20_LinuxImageV2.3> ./update.sh -d -r 512 -v V1_2

Colibri T20 rootfs detected

LD_LIBRARY_PATH=…/t20_nvflash …/t20_nvflash

root’s password:

Nvflash version 19.0041 started

rcm version 0X20001

System Information:

chip name: t20

chip id: 0x20 major: 1 minor: 4

chip sku: 0x8

chip uid: 0x112c610642414417

macrovision: disabled

hdcp: enabled

sbk burned: false

dk burned: false

boot device: nand

operating mode: 3

device config strap: 0

device config fuse: 4128

sdram config strap: 0

sending file: ColibriT20_333_512_V1_2_nand.bct

  • 4080/4080 bytes sent

ColibriT20_333_512_V1_2_nand.bct sent successfully

odm data: 0x1

downloading bootloader – load address: 0x108000 entry point: 0x108000

sending file: u-boot.bin

  • 559164/559164 bytes sent

u-boot.bin sent successfully

waiting for bootloader to initialize

usb read error (108): Cannot send after transport endpoint shutdown

bootloader failed NvError 0x0

command failure: bootloader download failed

venturi@linux2-rs:~/toradex/Colibri_T20_LinuxImageV2.3>

But now the target is automatically restarted…!

Please note that such update.sh perfectly updates the NAND modules…

Hope this helps.

Glad you found a work around.

At this point I am really completely missing any explanation why this should (in my case) or should not (in your case) be working.