NFS setup guide for beagleboard rev.B6 through OTG

In order to develop I needed a setup with the simplest root filesystem
compiled with bitbake in OpenEmbedded.
I hope it can be interesting...
If it is I can write it better in a wiki.

PC: ubuntu 8.10
BEAGLEBOARD: Rev. B6
NO FIREWALL ON THE PC!! (if you want try to configure yours)

1. Test the hardware
Prepare an SDcard as described in Koen's video
http://www.angstrom-distribution.org/video-tutorial-how-install-ångström-beagleboard
Verify that the system boots.

2. Compile the kernel
Install OpenEmbedded in $OE
cd openembedded
git pull
cd ..
bitbake linux-omap_2.6.28
I had after a while the linux-omap_2.6.28-r13 kernel compiled.
Copy it to SDcard (Do you remember the Koen's video?)

3. Compile the simplest rootfs
bitbake bootstrap-image
mkdir NFS
cd NFS
sudo tar xjf $OE/tmp/deploy/glibc/images/beagleboard/bootstrap-image-
beagleboard.tar.bz2

4. Export the NFS root file system:
sudo vim /etc/exports
Add the line
PATH_TO_NFS *(rw,no_subtree_check,no_root_squash)
Save and close
sudo /etc/init.d/nfs-kernel-server restart

5. Boot the beagleboard
I'm using beagleboard rev. B6
I have a 5V power.
OTG port is connected, with a mini-A to mini-B cable, to a powered hub
usb2.0.
I use the applestore 'usb to ethernet interface'.
MY PC is 192.168.1.100
In the LAN is present a DHCP server.
I have a monitor (at the moment is better not to use a TV) with DVI
input and a cable HDMItoDVI.

Power up the board
Keep "User" button pressed and press/release "reset" button.

It will appear:
Starting on with MMC

In my case:
U-Boot 2008.10 (Jan 03 2009 - 13:41:34)

Press a key for enter in u-boot console.
Then type:
set bootargs 'console=ttyS2,115200n8 root=/dev/nfs rw
nfsroot=192.168.1.100:/PATH_TO_NFS ip=dhcp
nolock,rsize=1024,wsize=1024 rootdelay=8
omapfb.video_mode=1280x720MR-24@60 init=/init'

And now finally boot:
boot

....
.....
hub 2-1:1.0: USB hub found
hub 2-1:1.0: 4 ports detected
usb 2-1.2: new high speed USB device using musb_hdrc and address 3
usb 2-1.2: device v05ac p1402 is not supported
usb 2-1.2: configuration #1 chosen from 1 choice
eth0: register 'asix' at usb-musb_hdrc-1.2, ASIX AX88772 USB 2.0
Ethernet, 00:1f:f3:fc:11:38
Sending DHCP requests

You'll have to wait, I don't know why, the timeout of dhcp client.
About one or two minutes...

Sending DHCP requests ...... timed out!
IP-Config: Retrying forever (NFS root)...
eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
Sending DHCP requests ., OK
IP-Config: Got DHCP answer from 192.168.1.254, my address is
192.168.1.101
IP-Config: Complete:
     device=eth0, addr=192.168.1.101, mask=255.255.255.0,
gw=192.168.1.254,
     host=dhcppc1, domain=, nis-domain=(none),
     bootserver=192.168.1.254, rootserver=192.168.1.100, rootpath=
Waiting 2sec before mounting root device...
Looking up port of RPC 100003/2 on 192.168.1.100
Looking up port of RPC 100005/1 on 192.168.1.100
VFS: Mounted root (nfs filesystem).
Freeing init memory: 196K
Failed to execute /init. Attempting defaults...
INIT: version 2.86 booting
Starting udevudevd version 124 started

Remounting root file system...
...
....
..
Angstrom 2009.X-test-20090217 beagleboard ttyS2

beagleboard login: root
root@beagleboard:~#
root@beagleboard:~# cat /dev/urandom > /dev/fb0

You'll see funny colors on the monitor.
Now you have a good user space setup.