I installed a u-boot.bin
on my boot-parition and adapted everything to make it work and boot the kernel over tftp.
I'm using the current (6709570c) revision from here (Gonzo) and followed the wiki on http://elinux.org/RPi_U-Boot.
I installed a tfpd-server on my host and run the following command on u-boot:
usb start
setenv serverip 192.168.2.1
setenv ipaddr 192.168.2.2
tftpboot uImage
and this is what I get:
## Executing script at 00200000
(Re)start USB...
USB0: Core Release: 2.80a
scanning bus 0 for devices... 3 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
scanning usb for ethernet devices... 1 Ethernet Device(s) found
Waiting for Ethernet connection... done.
Using sms0 device
TFTP from server 192.168.2.1; our IP address is 192.168.2.2
Filename 'uImage'.
Load address: 0x200000
Loading: *
One time I have seen some #
appearing but it stopped after a 8 or 10.
Where is the problem? Can I have more verbose information from u-boot?
EDIT:
In fact it is not a problem of TFTP but a network problem in general in u-boot for RPi. In fact each network command wants to bring up the ethernet and
I can see this message everytime (even in the same session) I do ping
or tftpboot
:
Waiting for Ethernet connection... done.
Using sms0 device
If I do a ping, I'm getting those two lines and then it blocks. Until I ping back the device from the host. It then prints
host 192.168.2.1 is alive
or not alive
- this is not deterministic.
A consecutive tftpboot
works always a little bit. Sometimes it boots and mounts the nfsroot, sometimes it crashes during the tftp-load (where it prints the #
). Somtimes in between.
My current assumption is that the the ethernet driver for the RPi is not yet very stable. Maybe I'm wrong. Does anyone has a clue on this?