Skip to contentSkip to conversation

USB fatload fails to load rootfs

U-Boot Chuck Wical 3 participants 4 messages Aug 28, 2013 – Aug 29, 2013

lore
Share & tools
lore
#0 lore raw

I am trying to load rootfs.ext2.gz.uboot from usb using fatload but when it reaches a point in writing the file to memory a reset occurs of the CPU. If I load this file using tftp it works fine. Here are the commands I am using:

loadaddr=0x21000000

tftp $(loadaddr) rootfs.ext2.gz.uboot

usb start
fatload usb 0 $(loadaddr) rootfs.ext2.gz.uboot

The version of U-Boot used is 2009.11.1 and upgrading at this point may be an issue. Before a bunch of questions are asked I inherited this project, it is mature and works, I have no documentation, and I am simply trying to copy a file from usb to memory. Nothing more, nothing fancy.

My searches on the web have not yielded any possible solutions or good explanations of the usb subsystem in U-Boot so I am hoping someone can provide some possible solutions or information I can read.

Thanks!

Chuck

#1 lore raw
Quoted 17 lines · Chuck Wical

I am trying to load rootfs.ext2.gz.uboot from usb using fatload but when it reaches a point in writing the file to memory a reset occurs of the CPU. If I load this file using tftp it works fine. Here are the commands I am using:

loadaddr=0x21000000

tftp $(loadaddr) rootfs.ext2.gz.uboot

usb start fatload usb 0 $(loadaddr) rootfs.ext2.gz.uboot

The version of U-Boot used is 2009.11.1 and upgrading at this point may be an issue. Before a bunch of questions are asked I inherited this project, it is mature and works, I have no documentation, and I am simply trying to copy a file from usb to memory. Nothing more, nothing fancy.

Quoted 4 lines

My searches on the web have not yielded any possible solutions or good explanations of the usb subsystem in U-Boot so I am hoping someone can provide some possible solutions or information I can read.

The FAT reading code in old versions of U-Boot is quite sensitive to external conditions. In my experience, changing the compiler for a source tree based on the 2007 U-Boot code from GCC 4.3.3 to GCC 4.7.3 produced the same issue as the one you described. Surprisingly, the issue only occurred for the rootfs, and not the kernel, which was a smaller file.

Unfortunately for you, our answer to this issue was the finalization of the porting of our platform to the U-Boot mainline, which does not has those problems.

Best regards,

Signature · 1 line
Romain Izard
#2 lore raw
Quoted 30 lines · Romain Izard <romain.izard.pro <at> gmail.com> writes:
Quoted 17 lines · On 2013-08-28, Chuck Wical <chuck.wical <at> amanomcgann.com> wrote:

I am trying to load rootfs.ext2.gz.uboot from usb using fatload but when it reaches a point in writing the file to memory a reset occurs of the CPU. If I load this file using tftp it works fine. Here are the commands I am using:

loadaddr=0x21000000

tftp $(loadaddr) rootfs.ext2.gz.uboot

usb start fatload usb 0 $(loadaddr) rootfs.ext2.gz.uboot

The version of U-Boot used is 2009.11.1 and upgrading at this point may be an issue. Before a bunch of questions are asked I inherited this project, it is mature and works, I have no documentation, and I am simply trying to copy a file from usb to memory. Nothing more, nothing fancy.

Quoted 4 lines

My searches on the web have not yielded any possible solutions or good explanations of the usb subsystem in U-Boot so I am hoping someone can provide some possible solutions or information I can read.

The FAT reading code in old versions of U-Boot is quite sensitive to external conditions. In my experience, changing the compiler for a source tree based on the 2007 U-Boot code from GCC 4.3.3 to GCC 4.7.3 produced the same issue as the one you described. Surprisingly, the issue only occurred for the rootfs, and not the kernel, which was a smaller file.

Quoted 5 lines

Unfortunately for you, our answer to this issue was the finalization of the porting of our platform to the U-Boot mainline, which does not has those problems.

Best regards,

Thank you Roman for the response. You stated exactly what I am seeing, it is only the rootfs file that fails while the uImage and etc.jffs2 files copy and write to nand with no problem.

You will have to forgive my lack of knowledge on U-Boot since I have only been working on this specific task that involves U-Boot for about a week now so I have been on a steep learning curve. You mentioned U-Boot mainline not having this issue. Could you direct me to where I can find this so I can take a look?

My concern is the cross-compiler that was created by a third party may not be compatible with newer versions of U-Boot and I would need to go through the patches to see if there was anything custom created. As you probably understand this is time consuming work, especially with the learning curve I am on.

Again many thanks for the response!

Chuck

#3 lore raw

Hi Chuck,

Quoted 5 lines · Chuck Wical

My concern is the cross-compiler that was created by a third party may not be compatible with newer versions of U-Boot and I would need to go through the patches to see if there was anything custom created. As you probably understand this is time consuming work, especially with the learning curve I am on.

Do you really need some special cross-compiler ? Which is your platform ? What about, at least to compile u-boot, to take one ready-to-use cross-compiler ?

Best regards,
Stefano Babic

Signature · 5 lines
=====================================================================
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================