[U-Boot] u-boot tftp problem

Nikolay Dimitrov picmaster at mail.bg
Wed Feb 18 18:31:03 CET 2015


Hi,

Here's what I think happens:

When working with large TFTP packets (probably 4096 bytes, as set in
your board config file), U-Boot TFTP code sends wrong acknowledges for
the TFTP packets. If the TFTP server implementation is too strict (the
OpenBSD server is a good example), the transfer will inevitably fail
very soon after start. Here's an example:

1. TFTP server sends block 0
2. Board acknowledges block 0
3. TFTP server sends block 1
4. Board acknowledges block 0

At this point you can see either proper or very obscure error messages
in the TFTP server logs, so trust only to network dumps for diagnostics.

What can you do to resolve your issue:

1. Fix the bug in U-Boot tftp networking code and submit a patch.
2. Reduce your TFTP blksize, by commenting CONFIG_TFTPBLOCKSIZE  in
your board config. The default value is 1468, which should work fine.
U-Boot behaves nicer with smaller packets.

Hope this helps. Regards,
Nikolay


More information about the U-Boot mailing list