Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

...

Installing NXDRV-Driver

Install cmake.

...

languagebash
themeDJango

...


Install libpciaccess-dev.

Code Block
languagebash
themeDJango
$ apt-get install libpciaccess-dev

...

Configuration file storage

For a cifX device (especially CIFX 50 and CIFX 90), firmware and configuration files that are not stored on the hardware, must be loaded into the hardware each time the card is powered-up.

This part describes where and how these files have to be stored.

To allow device-specific configuration, the card needs to be identified, and the firmware must be stored on the host in a specific folder structure to create a unique relation between card and configuration.

These folders locate under a global base-folder. By default, it is '/opt/cifx' (can be changed during driver initialization).

There are four different types of configuration of a card, each with its specific folder structure. For more information, please see our Linux driver manual.

This guide describes the folder structure single directory.

Go to the scripts directory.

Code Block
languagebash
themeDJango
$ cd <driver_version>/driver/scripts

Run the installation firmware script.

Code Block
languagebash
themeDJango
$ ./install_firmware create_single_dir

...

First, enable the SPM_PLUGIN option during compiling the driver. See Configuration file storage.

Note

If you are using linux driver version V2.1.1.0 or lower, the kernel module ax99100-pci-spi does not compile out of the box.

If you get the following compiler error: -Werror=incompatible pointer-types located in moduleparam.h, please change in ax99100-pci-spi.c the following calls of module_param_named from ushort to uint

Go to cifx_m2 folder.

Code Block
languagebash
themeDJango
$ cd <driver_version>/driver/cifx_m2/

...

#obj-m += ax99100-pci-gpio.o

Warning

You cannot use Interrupt for now!

Build source module

Code Block
languagebash
themeDJango
$ make

Install driver modules. This will copy the driver modules into the desired kernel library folder, which are compiled for.

Code Block
languagebash
themeDJango
$ make modules_install

Update the module dependencies in the modules.dep file.

Code Block
languagebash
themeDJango
$ depmod

Configure the SPI interface (at chip-select 0) for accessing the netX90 based cifX/M.2 card with mode 3 and a maximum speed of 25Mhz.

Code Block
languagebash
themeDJango
$ modprobe ax99100-pci-spi modalias0=spi-petra mode0=3 max_speed_hz0=25000000

...