... | @@ -14,7 +14,7 @@ The instructions below assume that |
... | @@ -14,7 +14,7 @@ The instructions below assume that |
|
|
|
|
|
$ git clone git:https://www.ohwr.org/fmc-projects/fmc-adc-100m14b4cha/fmc-adc-100m14b4cha-sw.git
|
|
$ git clone git:https://www.ohwr.org/fmc-projects/fmc-adc-100m14b4cha/fmc-adc-100m14b4cha-sw.git
|
|
|
|
|
|
The URL is taken from the repository tab of the FMC ADC software
|
|
The URL is taken from the repository tab of the FMC ADC software
|
|
project: https://www.ohwr.org/project/fmc-adc-100m14b4cha-sw/tree/master
|
|
project: https://www.ohwr.org/project/fmc-adc-100m14b4cha-sw/tree/master
|
|
|
|
|
|
### Build all the software stack
|
|
### Build all the software stack
|
... | @@ -23,20 +23,17 @@ Change dir into the freshly cloned repository, and just type 'make': |
... | @@ -23,20 +23,17 @@ Change dir into the freshly cloned repository, and just type 'make': |
|
|
|
|
|
$ make
|
|
$ make
|
|
|
|
|
|
This will build the FMC ADC drivers, libraries and test
|
|
This will build the FMC ADC drivers, libraries and test programs. In the
|
|
programs. In the process, the build will automagically resolve the
|
|
process, the build will automagically resolve the dependent submodules
|
|
dependent submodules (fmc-bus, spec-sw, zio) and build them
|
|
(fmc-bus, spec-sw, zio) and build them recursively. After some minutes,
|
|
recursively.
|
|
depending on your hardware configuration, the build should have
|
|
After some minutes, depending on your hardware configuration, the
|
|
terminated successfully.
|
|
build
|
|
|
|
should have terminated successfully.
|
|
|
|
|
|
|
|
### The following step requires super user powers
|
|
### The following step requires super user powers
|
|
|
|
|
|
$ sudo make modules_install
|
|
$ sudo make modules_install
|
|
|
|
|
|
After success, you should see in the
|
|
After success, you should see in the /lib/modules/<kernel-version>/extra
|
|
/lib/modules/<kernel-version>/extra
|
|
|
|
directory of the target machine some new stuff like shown below:
|
|
directory of the target machine some new stuff like shown below:
|
|
|
|
|
|
pcbe13089:fmc-adc-100m14b4cha-sw$ ls -l
|
|
pcbe13089:fmc-adc-100m14b4cha-sw$ ls -l
|
... | @@ -55,37 +52,33 @@ directory of the target machine some new stuff like shown below: |
... | @@ -55,37 +52,33 @@ directory of the target machine some new stuff like shown below: |
|
-rw-r--r-- 1 root root 2450536 Aug 3 09:44 wr-nic.ko
|
|
-rw-r--r-- 1 root root 2450536 Aug 3 09:44 wr-nic.ko
|
|
-rw-r--r-- 1 root root 1882592 Aug 3 09:44 zio.ko
|
|
-rw-r--r-- 1 root root 1882592 Aug 3 09:44 zio.ko
|
|
|
|
|
|
The last step will enable us to load modules by simply using a
|
|
The last step will enable us to load modules by simply using a modprobe
|
|
modprobe
|
|
|
|
command:
|
|
command:
|
|
|
|
|
|
$ sudo depmod -a
|
|
$ sudo depmod -a
|
|
|
|
|
|
### Prepare firmware
|
|
### Prepare firmware
|
|
|
|
|
|
We are about to load the Linux device drivers for your FMC ADC. There
|
|
We are about to load the Linux device drivers for your FMC ADC. There is
|
|
is
|
|
one more pre-requisite before doing so. Appropriate firmware binaries
|
|
one more pre-requisite before doing so. Appropriate firmware binaries
|
|
must be made accessible to initialise your hardware. Download the files
|
|
must be made accessible to initialise your hardware. Download the
|
|
|
|
files
|
|
|
|
from the URLs below in the prescribed
|
|
from the URLs below in the prescribed
|
|
places:
|
|
places:
|
|
|
|
|
|
/lib/firmware/fmc/spec-fmc-adc-100m14b.bin https://www.ohwr.org/project/fmc-adc-100m14b4cha-sw/uploads/72545736ae289aba2df7c8b47432956c/spec-fmc-adc-v4.1.bin
|
|
/lib/firmware/fmc/spec-fmc-adc-100m14b.bin https://www.ohwr.org/project/fmc-adc-100m14b4cha-sw/uploads/72545736ae289aba2df7c8b47432956c/spec-fmc-adc-v4.1.bin
|
|
/lib/firmware/fmc/spec-init.bin https://www.ohwr.org/project/spec-sw/uploads/636e7eaa2e1c3a884e2f9f694fdfd1b9/spec-init.bin-2015-09-18
|
|
/lib/firmware/fmc/spec-init.bin https://www.ohwr.org/project/spec-sw/uploads/636e7eaa2e1c3a884e2f9f694fdfd1b9/spec-init.bin-2015-09-18
|
|
|
|
|
|
Load the kernel modules:
|
|
### Load the kernel modules
|
|
|
|
|
|
Again, super user status is required for this.
|
|
Again, super user status is required for this.
|
|
|
|
|
|
$ sudo modprobe spec
|
|
$ sudo modprobe spec
|
|
$ sudo modprobe fmc-adc-100m14b
|
|
$ sudo modprobe fmc-adc-100m14b
|
|
|
|
|
|
These are the required modules to drive an FMC ADC (or more) carried
|
|
These are the required modules to drive an FMC ADC (or more) carried by
|
|
by
|
|
|
|
SPEC boards.
|
|
SPEC boards.
|
|
|
|
|
|
If this step is successful, your kernel module list should display at
|
|
If this step is successful, your kernel module list should display at
|
|
least the following:
|
|
least the following:
|
|
|
|
|
|
pcbe13089:fmc-adc-100m14b4cha-sw$ lsmod
|
|
pcbe13089:fmc-adc-100m14b4cha-sw$ lsmod
|
... | @@ -97,9 +90,8 @@ least the following: |
... | @@ -97,9 +90,8 @@ least the following: |
|
zio 67461 1 fmc_adc_100m14b
|
|
zio 67461 1 fmc_adc_100m14b
|
|
[...other modules...]
|
|
[...other modules...]
|
|
|
|
|
|
If you got to this point, congratulations\! Your kernel device drivers
|
|
If you got to this point, congratulations\! Your kernel device drivers
|
|
are ready to go, and the installed boards should be recognized by
|
|
are ready to go, and the installed boards should be recognized by them.
|
|
them.
|
|
|
|
Look into the directory /dev/zio to see your device nodes in full glory:
|
|
Look into the directory /dev/zio to see your device nodes in full glory:
|
|
|
|
|
|
cfc-774-caos3:~$ ls -l /dev/zio/adc-100m14b-0400-0-i-*
|
|
cfc-774-caos3:~$ ls -l /dev/zio/adc-100m14b-0400-0-i-*
|
... | @@ -114,8 +106,8 @@ Chapter 13 of the |
... | @@ -114,8 +106,8 @@ Chapter 13 of the |
|
manual:
|
|
manual:
|
|
[https://www.ohwr.org/project/fmc-adc-100m14b4cha-sw/uploads/6f86c1d449e6aedd04fdd9a049851ca0/fmc-adc-100m14b4cha-sw-driver-2014-09.pdf)
|
|
[https://www.ohwr.org/project/fmc-adc-100m14b4cha-sw/uploads/6f86c1d449e6aedd04fdd9a049851ca0/fmc-adc-100m14b4cha-sw-driver-2014-09.pdf)
|
|
|
|
|
|
describes how to use the FMC ADC workhorse program fald-simple-acq,
|
|
describes how to use the FMC ADC workhorse program fald-simple-acq,
|
|
which will allow you to acquire samples from your ADC. Instructions in
|
|
which will allow you to acquire samples from your ADC. Instructions in
|
|
the manual are sufficient to get you started, so we will not duplicate
|
|
the manual are sufficient to get you started, so we will not duplicate
|
|
them here.
|
|
them here.
|
|
|
|
|