User Tools

Site Tools


cobo_ubuntu_setup

This server's IP should be 192.168.40.1

Packages

Required packages for cross platform development:

sudo apt-get install autoconf automake libtool libexpat1-dev libncurses5-dev bison flex patch curl cvs texinfo build-essential subversion gawk gperf git libncurses-dev gcj-jdk

NFS Server

We will need to run an NFS server to host a NFS root file system for CoBo.

sudo apt-get install nfs-kernel-server

# edit exports /etc/exports and append

/mnt/local/export/filesystem 192.168.40.5?(rw,insecure,no_root_squash)
/mnt/local/export/filesystem 192.168.40.8?(rw,insecure,no_root_squash)

The second line in exports is just for ML507 Reduced CoBo compatibility.

Finally, run the following launch the nfs server:

sudo service nfs-kernel-server start

DHCP server

The DHCP server is required to allow different CoBo boards lease an IP. Currently, we are using static IPs based on the MAC address of each CoBo. This is a good practice for development, however, in deployment it might be just easier to assign random IPs, depending on the setup required.

sudo apt-get install isc-dhcp-server

Then edit /etc/dhcp/dhcpd.conf

ddns-update-style none;
option domain-name "local";

default-lease-time 600;
max-lease-time 7200;

authoritative;

log-facility local7;

# CoBo Data Node
subnet 192.168.41.0 netmask 255.255.255.0 {
  range 192.168.41.80 192.168.41.90;
  option routers 192.168.41.2;
  option subnet-mask 255.255.255.0;
  option broadcast-address 192.168.41.255;
  option domain-name-servers 192.168.41.2;
  option ntp-servers 192.168.41.2;
}

# CoBo Control Node
subnet 192.168.40.0 netmask 255.255.255.0 {
  range 192.168.40.80 192.168.40.90;
  option routers 192.168.40.2;
  option subnet-mask 255.255.255.0;
  option broadcast-address 192.168.40.255;
  option domain-name-servers 192.168.40.2;
  option ntp-servers 192.168.40.2;
}

# Control
host coboeOne {
  hardware ethernet 00:0A:35:00:00:00;
  fixed-address 192.168.40.40;
  option host-name "cobo02e0";
}

# Data
host coboeTwo {
  hardware ethernet 00:0A:35:00:00:01;
  fixed-address 192.168.41.40;
  option host-name "cobo02e1";
}

# -----
# COBO0
# Control
host vxcobo1235e0 {
  hardware ethernet 02:00:00:00:00:00;
  fixed-address 192.168.40.50;
  option host-name "cobo0e0";
}
# Data
host vxcoboe1235e1 {
  hardware ethernet 06:00:00:00:00:00;
  fixed-address 192.168.41.50;
  option host-name "cobo0e1";
}

# COBO1
# Control
host vxcobo1237e0 {
  hardware ethernet 02:00:00:00:00:01;
  fixed-address 192.168.40.51;
  option host-name "cobo1e0";
}
# Data
host vxcoboe1237e1 {
  hardware ethernet 06:00:00:00:00:01;
  fixed-address 192.168.41.51;
  option host-name "cobo1e1";
}

# COBO2
# Control
host vxcobo1238e0 {
  hardware ethernet 02:00:00:00:00:02;
  fixed-address 192.168.40.52;
  option host-name "cobo2e0";
}
# Data
host vxcoboe1238e1 {
  hardware ethernet 06:00:00:00:00:02;
  fixed-address 192.168.41.52;
  option host-name "cobo2e1";
}

# COBO3
# Control
#host vxcobo1237e0 {
#  hardware ethernet 02:00:00:00:00:03;
#  fixed-address 192.168.40.53;
#  option host-name "cobo3e0";
#}
# Data
#host vxcoboe1237e1 {
#  hardware ethernet 06:00:00:00:00:03;
#  fixed-address 192.168.41.53;
#  option host-name "cobo3e1";
#}

# COBO4
# Control
#host vxcobo1237e0 {
#  hardware ethernet 02:00:00:00:00:04;
#  fixed-address 192.168.40.54;
#  option host-name "cobo4e0";
#}
# Data
#host vxcoboe1237e1 {
#  hardware ethernet 06:00:00:00:00:04;
#  fixed-address 192.168.41.54;
#  option host-name "cobo4e1";
#}

# COBO5
# Control
#host vxcobo1237e0 {
#  hardware ethernet 02:00:00:00:00:05;
#  fixed-address 192.168.40.55;
#  option host-name "cobo5e0";
#}
# Data
#host vxcoboe1237e1 {
#  hardware ethernet 06:00:00:00:00:05;
#  fixed-address 192.168.41.55;
#  option host-name "cobo5e1";
#}

# COBO6
# Control
host vxcobo1240e0 {
  hardware ethernet 02:00:00:00:00:06;
  fixed-address 192.168.40.56;
  option host-name "cobo6e0";
}
# Data
host vxcoboe1240e1 {
  hardware ethernet 06:00:00:00:00:06;
  fixed-address 192.168.41.56;
  option host-name "cobo6e1";
}

# COBO7
# Control
host vxcobo1241e0 {
  hardware ethernet 02:00:00:00:00:07;
  fixed-address 192.168.40.57;
  option host-name "cobo7e0";
}
# Data
host vxcoboe1241e1 {
  hardware ethernet 06:00:00:00:00:07;
  fixed-address 192.168.41.57;
  option host-name "cobo7e1";
}


# COBO8
# Control
host vxcobo1242e0 {
  hardware ethernet 02:00:00:00:00:08;
  fixed-address 192.168.40.58;
  option host-name "cobo8e0";
}
# Data
host vxcoboe1242e1 {
  hardware ethernet 06:00:00:00:00:08;
  fixed-address 192.168.41.58;
  option host-name "cobo8e1";
}

# COBO9
# Control
host vxcobo1243e0 {
  hardware ethernet 02:00:00:00:00:09;
  fixed-address 192.168.40.59;
  option host-name "cobo9e0";
}
# Data
host vxcoboe1243e1 {
  hardware ethernet 06:00:00:00:00:09;
  fixed-address 192.168.41.59;
  option host-name "cobo9e1";
}

# MISC
host dev-workstation {
hardware ethernet 01:02:03:04:05:06:07;
fixed-address 192.168.40.47;
option host-name "dev-workstation";
}

The dev-workstation entry in the DHCP config file is useful to have. This machine can be used to test or debug CoBo software that is network related.

Finally run the following to launch the dhcp daemon:

sudo service isc-dhcp-server start

Xilinx Drivers

You have to install 3rd party Xilinx USB cable drivers, link if you want to flash or program the FPGA from Linux.

cobo_ubuntu_setup.txt · Last modified: 2014/02/11 09:37 by abunimeh