FMC TDC - Software
Introduction
This is the project to provide support of the FMC TDC board in the Linux kernel plugged to an FMC carrier board (tested and supported on SPEC and SVEC). In this page we use the SPEC as example, so you have to keep in mind that if you are not using a SPEC you have to adapt some steps to the carrier in use.
The aim is to provide an loadable module to be used along with this board for the latest Linux kernel versions. The driver relies on ZIO framework and the FMC bus dependencies, which are projects also hosted under OHWR.
Dependencies
To compile properly this driver, you should have downloaded the following repositories (branch master).
In order to ease the usage, the git repository includes those dependencies as submodule. The submodule checked out version is the last one that has being tested during the development.
Download
To download the sources, you should execute the following command:
git clone git:https://www.ohwr.org/fmc-projects/fmc-tdc/fmc-tdc-sw.git
Compile
To compile the sources using the submodule dependencies, you should execute the following commands:
cd <path-to-fmc-tdc-sw>
make
If you want to compile the software against other versions of ZIO or FMC-BUS, you can use the environment variables like in the following example:
cd <path-to-fmc-tdc-sw>
ZIO=<path-to-zio> FMC_BUS=<path-to-fmc> make
Loading the drivers
To load the drivers, we should load the dependencies first:
sudo insmod <path_zio>/zio.ko
sudo insmod <path_fmc-bus>/kernel/fmc.ko
sudo insmod <path_spec-sw>/kernel/spec.ko
Once the dependencies are loaded, we load the drivers:
sudo insmod <path_fmc-tdc-sw>/drivers/spec-tdc.ko <parameters>
The spec-tdc.ko driver has several parameters, you can discover them executing:
modinfo ./spec-tdc.ko.
Libtdc, an user-space library
Introduction
To facilitate the task of managing the FMC TDC devices, it is provided an C/C** user-space library. It is recommended to use it instead of accessing directly to the driver.
API
It is recommended to read the documentation files generated by the "make" command in your local copy of the repository.
To perform this task properly, you should have texlive and doxygen packages installed on your system.
cd <path-to-fmc-tdc-sw>
make -C doc
firefox doc/doxy-fmctdc/html/index.html
Alternatively, the FMC TDC User’s Manual in pdf is stored under the Files tab.
Test program
All the test programs have an help message (-h
)
- fmc-tdc-list: it shows the available TDC device
- fmc-tdc-term: it changes the 50Ohm channel termination
- fmc-tdc-temperature: it shows the TDC device temperature
- fmc-tdc-tstamp: it shows the incoming timestamps
Support
We offer the following sources of support:
Please** read the documentation and then the FAQ before asking for support on the mailing list.
Links
Project Status
Date | Event |
---|---|
26-08-2012 | Project start. |
18-09-2012 | FMC TDC SW support website created in OHWR |
11-10-2012 | Uploaded the development source code. Alpha status |
25-10-2012 | Changed to beta status. Added documentation |
22-01-2013 | Added compatibility with ZIO v1.0. Updated Documentation |