Commit 752532ae authored by Benoit Rat's avatar Benoit Rat

doc: update installation for v2.0

- Instalation can now be done with ubuntu 14.04
parent 34cc4ede
......@@ -194,18 +194,22 @@ experiments you will need:
* An oscillocope with at least 150Mhz bandwitdh (500Mhz is recommanded).
* A PC with with at least two `PCIe x4` ports (`x8` & `x16` are also compatible)
* The Operative System Ubuntu 12.04 LTS 32bit (Long Term Support) with kernel `3.2.x.`
* Two mini-USB (B) cables (not provided with the kit).
* The Operative System **Ubuntu LTS 32bit (Long Term Support)** installed.
* Two mini-USB (B) cables (not provided with the kit).
This tutorial has been tested and verified with Ubuntu LTS 12.04 and Ubuntu LTS 14.04,
this mean that standard support will only be given for these releases.
However, the `spec-sw` driver should work with other releases, distributions and architectu
that run kernel `2.8.x` to `3.5.x`.
> ***Note:*** This tutorial follow a configuration with two [SPEC+FMCDIO] boards connected in the two **PCIe x16** interfaces of the same computer. However, you can also use two different computers (if you do not have two **PCIe x4**) and follow this tutorial; you just need to replace all the commands with `wr1` or `0x0300` by the `wr0` and its corresponding bus_id on the second PC. The configuration with two separated PCs is more *"natural"* to understand how to communicate two different nodes using the starting kit,
Finally, [Seven Solutions] also provides a fully setup PC or USB-live images to skip
the instalation process and ease the introduction to the *"White Rabbit World"*.
> ***Note:*** This tutorial follow a configuration with two [SPEC+FMCDIO] boards connected in the two **PCIe x16** interfaces of the same computer. However, you can also use two different computers (if you do not have two **PCIe x4**) and follow this tutorial; you just need to replace all the commands with `wr1` or `0x0300` by the `wr0` and its corresponding bus_id on the second PC. The configuration with two separated PCs is more *"natural"* to understand how to communicate two different nodes using the starting kit,
but it requires more physical space to implement it.
![Configuration with one or two PCs](ssk_configs.png)
> ***Warning:*** This tutorial fully support the latest ubuntu LTS release. Other distro or kernel version might work, however we can not guarantee full compatibility and therefore full support. Please check the
[wr-starting-kit] wiki for a more detailed list of which distro has been tested.
Starting kit components
-----------------
......@@ -236,43 +240,55 @@ Physical setup
(A Virtual UART is also available, but it is safer to use the physical
one).
* Connect the two [SPEC+FMCDIO] boards using the SFPs and the optical fiber cable (LC-LC)
* Start your Ubuntu LTS distribution.
* Prepare an oscilloscope with at least two input channels to access
* In the demo we have put the violet SFP on the top SPEC board (wr0)
* ... and the blue SFP below (wr1)
* Start Ubuntu LTS.
* Prepare an oscilloscope with at least two input channels to access
the [FMCDIO] outputs.
> ***Note:*** This tutorial follow a configuration with two [SPEC+FMCDIO] boards connected in the two **PCIe x16** interfaces of the same computer.
> You can also use two different computers (if you do not have two **PCIe x4**) and follow this tutorial; you
just need to replace all the commands with `wr1` or `0x0300` by the `wr0` and its corresponding bus_id on the second PC.
The configuration with two separated PCs is more *"natural"* to
understand how to communicate two different nodes using the starting kit,
but it requires more physical space to implement it.
![Configuration with one or two PCs](ssk_configs.png)
![Mounting two SPECs in the same PC](ssk_inside.jpg)
![Connecting SFPs and fiber](ssk_sfp.jpg)
![The UART use a mini-USB cable to communicate](ssk_usb.jpg)
Installation of WR-NIC
Installation
=======================
Once you have the linux system is with the boards plugged in the
equipments:
Once you have your system running with the boards plugged, you need to:
* Check that the boards has been detected
* Install the tools to build drivers, etc...
* The drivers : `spec-sw`
* The HDL bitstream of [SPEC+FMCDIO]: `wr-nic`
SPEC detection
----------------
First you should check that the boards has been correctly detected on your PCIe bus by doing the following:
~~~~~{.sh}
>:$ lspci | grep CERN
~~~~~~~~~~
You should obtain something similar as:
~~~~~{.sh}
05:00.0 Non-VGA unclassified device: CERN/ECP/EDU Device 018d (rev 03)
0b:00.0 Non-VGA unclassified device: CERN/ECP/EDU Device 018d (rev 03)
~~~~~~~~~~
Where `05` and `0b` represent the ID of the PCIe slot given by your motherboard.
This index might be different according to the devices.
Tools
-----------------
The first step is to install all the tools that you will need:
Then you need to install all the tools that you will need:
* **git**: A powerful & distributed version control system
* **build-essentials**: Contains various binaries to build source code
......@@ -281,14 +297,21 @@ The first step is to install all the tools that you will need:
* **texinfo, texlive, emacs**: Tools to build documentation
You can also run this command[^debian]:
You can also run this command[^debian] for minimal setup:
~~~~{.sh}
sudo apt-get install git build-essential linux-headers-$(uname -r) linux-source minicom texinfo emacs texlive
sudo apt-get install git build-essential linux-headers-$(uname -r) minicom
~~~~~~~~~
[^debian]: This sample command is for debian's like distributions.
However similar packages exist for other distributions.
and this one if you also want to generate documentation (not mandatory):
~~~~{.sh}
sudo apt-get install texinfo emacs texlive
~~~~~~~~~
[^debian]: This sample command is for debian's like distributions.
However similar packages exist for other distributions.
Install the project
-------------------
......@@ -307,8 +330,12 @@ includes the [spec-sw] project.
>:$ cd wr-starting-kit
## Checkout the stable release
>:$ git checkout -b wr-starting-kit-v1.1 wr-starting-kit-v1.1
>:$ git checkout -b wr-starting-kit-v2.0 wr-starting-kit-v2.0
~~~~~~~~~~~~
Then you can get the project submodule by running
~~~~{.sh}
## Obtain the spec-sw project using submodules
>:$ git submodule init
>:$ git submodule update
......@@ -319,7 +346,9 @@ includes the [spec-sw] project.
>:$ git submodule update
~~~~~~~~~~~~
[^commitgit]: You should only use our package or proper release (tagged commit).
Or you can try our new Makefile that should perform everything!
[^commitgit]: You should only use our package or proper release (tagged commit).
The **master** branch might have the latest source but support is only offered for tagged release. The other branches are normally used for development and are not stable.
......@@ -371,17 +400,33 @@ A Makefile in the [spec-sw] project has been written to compile and install easi
## then, install the driver in your system so that they load automatically
>:$ sudo make install
~~~~~~~~~~~
If everything works well you should see the driver in
~~~~~~~~~~~
If everything works well you should see the driver in
~~~~{.sh}
>:$ ls -l /lib/modules/$(uname -r)/extra
~~~~~~~~~~~
> ***Notes:*** In some distributions such as Ubuntu 12.04, you might
need to force the creation of dependency
to load the modules using modprobe.
> ***Notes:*** The procedure below is specific to ubuntu distribution so you
might want to find a similar way to perform it if you use another
distribution.
You should add the `extra` folder to the search of module so that at
next reboot the kenel modules are easily founded.
~~~~{.sh}
## Open the configuration file
>:$ sudo nano /etc/depmod.d/ubuntu.conf
~~~~~~~~~~~
Check if you already have the extra folder or otherwise add it. You
should obtain a line similar as:
search updates ubuntu extra built-in
Finally, you must regenerate the map of dependencies with this new path
by calling:
~~~~{.sh}
>:$ sudo depmod -a
......@@ -393,19 +438,30 @@ Download, install & load the gateware
You need to install the gateware[^version] to `/lib/firmware/fmc`
### Manual installation
First you need to download the gateware/firmware files from our website:
### Automatic procedure
<http://www.sevensols.com/dl/wr-starting-kit/bin/v1.1.tar.gz>
You can also use the script `wr-ssk-get` in `wr-starting-kit/scripts` folder
to ease the installation. `sudo` is required
~~~~{.sh}
## Fetch and install the firmware
>:$ sudo scripts/wr-ssk-get --all
~~~~~~~~~~~~~~
### Manual procedure
First you need to download the gateware/firmware files from our website:
<http://www.sevensols.com/dl/wr-starting-kit/bin/latest_stable.tar.gz>
~~~~{.sh}
## Create the gateware folder
>:$ mkdir firmware
## Extract to the gateware folder
>:$ tar -xzf wr-starting-kit-v1.1_gw.tar.gz -C ./firmware
>:$ tar -xzf wr-starting-kit-v2.0_gw.tar.gz -C ./firmware
~~~~~~~~~~~
Once you have the file you need to install them to your system in order to make them load automatically
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment