Como "wmill" corretamente comentou em sua resposta que a maioria dos servidores tftp irá escrever para o arquivo somente se ele existir. No meu caso também foi o mesmo problema. O tftpput do u-boot funciona bem. Eu instalei o tftpd-hpa e configurei-o da seguinte forma para criar um arquivo. edite / etc / default / tftpd-hpa da seguinte forma,
# /etc/default/tftpd-hpa
TFTP_USERNAME="root"
TFTP_DIRECTORY="/home/ankur/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-c --secure"
E a configuração do tftp em /etc/xinet.d/tftp deve ser a seguinte,
service tftp
{
protocol = udp port = 69
socket_type = dgram
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -c -s /home/ankur/tftpboot
disable = no
}
Com a configuração acima quando executei o comando
tftpput 0x80200000 0x500000 192.168.1.3:uImage
Eu sou capaz de enviar arquivos para o PC host.