FPGA PCIe driver
Compilation
To compile kernel module type:
make
Installation
To install kernel module, you need to have root permissions and run:
sudo make install
Loading driver into kernel
After installing the kernel driver, it should be possible to insert it into the kernel via:
modprobe jfjoch
CMake file
While CMake file is present in the driver directory, it is only for the purpose of proper detection of the files in CLion IDE. It is not made for actual compilation of the kernel driver and should not be used for that purpose.
Character device
For each FPGA device a character device is created called /dev/jfjoch<number of device>.
When device is opened two operations are possible:
mmap() to map device buffers
ioctl() to communicate with the cards
Interfacing should be done through the JungfraujochDevice class in fpga/host_library directory.