Spec software
There is little information here in the wiki, because I prefer
publishing information
within the software package. This ensures that you always have the
documentation that
refers to exactly the code you are running.
Version 1
Version 1 of the package has never been tagged, but the installed
"fine-delay" cards rely
on the initial implementation of spec-sw. Such code had a completely
different split of
modules and a different policy to load gateware binaries. That version
is "unofficially 1.0",
and the latest commit with that setup is tagged
"spec-sw--old-generation
"
Version 2.0
Version 2.0 has been released on 2012-09-26. It is based on the fmc
bus idea: the carrier
kernel module (i.e., the SPEC driver in this case) registers a device in
the fmc bus. A driver
can declare it is willing to control that device; when that happens the
bus controller calls
its probe function.
The idea and implementation is described in the fmc-bus manual
Documentation for the SPEC driver and sub-modules (version 2.0) is
here
.
A dump of the text version of the manual is also in
spec-sw-2.0-manual so search engines can look in
it.
Version 2.2
Version 2.2, released on 2012-12-14 uses fmc as a git submodule,
because we now have a separate
project for that, which is used by the SVEC carrier in addition to the
SPEC.
This release is being used in the "White Rabbit starting kit"
(https://www.ohwr.org/project/wr-starting-kit),
and relies on the gateware file developed at
https://www.ohwr.org/project/wr-nic
Links:
As usual, the spec.ko
driver can be used with external mezzanine
drivers (as an alternative
to wr-nic.ko
, which is part of this same package), like the Fine
Delay or the 100MS
ADC
Wiki for the starting kit:
version 2013-05
Given the number of related packages we maintain, we moved to date-based
version numbering.
The releae for May 2013 includes the new fmc-bus subsystem (ready for
kernel submission, now that we
fixed a misundertanding about allocation of devices) and is aligned with
svec-sw and fine-delay-sw;
all of them used in our experiments.
We'll soon make a new wr-nic release, with a better integration of the
DIO card with
White Rabbit and atomic clocks. This will be spec-sw 2013-06.
For the manual and tar file please look in the "Files" section of the
project; but the
preferred way to get the software (and manual) is still the git
repository, where each
release is tagged.
version 2014-02
This is a mainainance release, using new gateware binaries for the
wr-nic project
and updating the tools. The new fmc-bus is used, and all is tested on
the most
recent kernels as of today.
The White Rabbit PTP Core used in wr-nic is not using ppsi, instead of
the
now-deprecated ptp-noposix
version 2017-10
This release adds to the SPEC software the support for the VIC ip-core.
It adds also some compatibility line of code in order to make the Linux device driver compatibile with recent kernels (4.x).
From this release it is possible to program the FPGA directly from user space.