Developing your AOS project on Linux

Many CSE students have Linux machines which they would like to be
able to use to work away from the CSE labs. The following is a guide
as to how to set up the necessary drivers/software. These instructions
will be debian specific in some spots (e.g. setting up the tftp server)
but they should at least give you an idea of how to set up other
distributions.

When you get up, you should have a toolchain in /opt/crosstool/gcc-3.4.5-glibc-2.3.5/armv5b-softfloat-linux/bin/. Add this directory to your PATH.

Installing drivers

You need device drivers for the RTL8150 based USB to Ethernet dongle, and
the FT232RL USB-Serial converter. Fortunately, these drivers are in the
linux kernel and are compiled by most modern distributions, so you should
be able to plug them in and see messages from the drivers via
dmesg.

The modules required are:

rtl8150 : USB-to-Ethernet

ftdi_sio : USB-to-Serial

If you don't have hotplug set up correctly, you may need to use use modprobe to load the modules. e.g. modprobe rtl8150. You probably want to get this all
working automatically, as it is in the CSE labs.

At this stage, we assume a working serial converter and ethernet port. The serial converter is assumed to use device /dev/ttyUSB0 and the ethernet port is assumed to use eth1. Substitute below if your setup varies (e.g. if you are using a real Ethernet port or network).

Setting up the network

The AOS board expects to find a host at 192.168.168.1. You can change this temporarily in the bootloader, but its easiest to set up your host to be at
this address. This is not a problem if you are using an independent network provided by the USB to Ethernet dongle.

If your USB to Ethernet dongle is using eth1 (note that it will simply get the next unused ethX interface - i.e. if your wired Ethernet is eth0,
wireless is eth1, then the USB-Ethernet converter will be eth2. This should show up in the output of dmesg).

ifconfig eth1 192.168.168.1 up

Setting up the TFTP server

The bootloader will download your software image from a tftp server running on your host. So you need to set one up:

apt-get install tftpd

Edit your /etc/inetd.conf. Change the following line to reflect the location of the directory which you want to use as your tftp root. (In this case it is /tftpboot).