Tue May 19 19:36:38 CEST 2009

Done compiling

Next step is to netboot it.


Net-booting your device

This is a more complex procedure that will allow you to run your
device from your PC, allowing to edit in real time files in the device
file system without need to reboot, or try new kernels without the
need to flash them.

1. You first need to setup a TFTP server on your host
   machine. Instructions on how to do this are the same as for OSD1,
   so i'll just link you to the TFTP setup chapter. The only
   difference is that you want to point your TFTP root to ##BASEDIR

2. Then you need to setup NFS on your host machine. Again, the NFS
   setup chapter in there is what you need. The only difference for
   the NFS setup is that when you edit /etc/exports you should only
   add this line:

   ##BASEDIR/rootfs/nfs-rootfs network-acl(rw,sync,no_root_squash,subtree_check)

3. Then you need to install the rootfs in a way that can be booted. To
   do this, you need to be able to gain root privilege, since we will
   need to install some files as root (you may be asked for password
   when you run the command below):

   make -C rootfs install-nfs

4. The above command will create a directory named rootfs/nfs-rootfs
   which is the directory that the OSD2 kernel will try to mount with
   NFS. Each time you do a modification that affect the rootfs, you
   run again the above command to transfer it to the live rootfs (and
   of course you can also manually edit files in nfs-rootfs, but be
   aware that they may be over-written by further runs of the
5. Force NFS server to reload the configuration. In debian and ubuntu
   it's the following command. But may be different for your

   /etc/init.d/nfs-kernel-server reload

6. Now we need to configure OSD2 to pick kernel and rootfs and use
   them to boot. To do this you need to access uboot console via
   serial port. If you have a bare board, the connector is labeled J14
   (left-most when facing the side, see also pictures on OSD2 HW
   page). It should be labeled on the outside of the case if you have
   the mini-ITX case version. Once it's connected, follow the Serial
   setup chapter on OSD1 setup guide to know about adapter cable and
   terminal parameters.
7. When serial setup is done, reboot the OSD2 and at the uboot timeout
   press any key in serial console to stop it and access uboot
   prompt. Then type the following commands:

   setenv bootcmd run devkernel
   setenv ipaddr ##YOUR_OSD2_IP
   setenv serverip ##YOUR_HOST_IP
   setenv tftp_root /images
   setenv nfs_root ##BASEDIR/rootfs/nfs-rootfs
   run update-locs
   run update-ipstatic

I get this:

TFTP from server; our IP address is
Filename '/tftpboot/uImage'.
Load address: 0x82000000
TFTP error: 'File not found' (1)
Starting again

So where is uImage ?

Ok, i understand.
I put the image in /tftpboot/neuros/uImage on the server, then use

setenv tftp_root /neuros

Ok. This does it. I'm in!

Let's see if it works with a plain link too..  No. It needs to reside
in the directory, no symlinks allowed outside apparently.

My config with the boot image on the server in /tftpboot/neuros/uImage
and the root directory copyied from ~/src/neuros/rootfs/nfs-rootfs and
chown -R root:root.

setenv bootcmd run devkernel
setenv ipaddr
setenv serverip
setenv tftp_root /neuros
setenv nfs_root /opt/diskless/nfsroot
run update-locs
run update-ipstatic

Now it seems that i no longer have colours on the composite
output.. probably NTFS signal..