Confluence will be down for maintenance June 14 2024 at 6AM PT.
Code Block | ||
---|---|---|
| ||
# Confirm that you have the board the computer with VID=1a4a ("SLAC") and PID=2030 ("AXI Stream DAQ") $ lspci -nn | grep SLAC 04:00.0 Signal processing controller [1180]: SLAC National Accelerator Lab TID-AIR AXI Stream DAQ PCIe card [1a4a:2030] # Clone the driver github repo: $ git clone --recursive https://github.com/slaclab/aes-stream-drivers # Go to the driver directory $ cd aes-stream-drivers/data_dev/driver/ # Build the driver $ make # Load the driver $ sudo /sbin/insmod ./datadev.ko cfgSize=0x200000 cfgRxCount=256 cfgTxCount=16 # Give appropriate group/permissions $ sudo chmod 666 /dev/datadev* # Check for the loaded device $ cat /proc/datadev_0 |
Code Block | ||
---|---|---|
| ||
# Clone the repo in /u1 as root
$ cd /u1
$ sudo git clone https://github.com/slaclab/aes-stream-drivers.git
# Copy a working load script from another machine
$ sudo scp $AFS_USERNAME@rdsrv407:/u1/aes-stream-drivers/data_dev/driver/load /u1/aes-stream-drivers/data_dev/driver/load
# Configuration the load script to your liking
$ sudo nano /u1/aes-stream-drivers/data_dev/driver/load
# Copy a working rc.local script from another machine
$ sudo scp $AFS_USERNAME@rdsrv407:/etc/rc.local /etc/rc.local
# Configuration the rc.local script to your liking
$ sudo nano /etc/rc.local
# Enable the rc.local service: Based on https://www.linuxbabe.com/linux-server/how-to-enable-etcrc-local-with-systemd
$ sudo chmod +x /etc/rc.local
$ sudo systemctl enable rc-local
$ sudo systemctl start rc-local.service
$ sudo systemctl status rc-local.service |
Code Block | ||
---|---|---|
| ||
$ cat /u1/aes-stream-drivers/data_dev/driver/load
#!/bin/sh
# remove old driver
/sbin/rmmod -s datadev
# add new driver
/sbin/insmod /u1/aes-stream-drivers/data_dev/driver/datadev.ko cfgSize=0x200000 cfgRxCount=256 cfgTxCount=16 || exit 1
# give appropriate group/permissions
chmod 666 /dev/datadev* |
Code Block | ||
---|---|---|
| ||
$ cat /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
###################################################################
# mount according to /etc/fstab (in case a drive didn't mount during boot up)
mount -a
###################################################################
# Load the SLAC DMA driver
cd /u1/aes-stream-drivers/data_dev/driver/; make clean; make
/u1/aes-stream-drivers/data_dev/driver/load
###################################################################
exit 0 |