Go to file
Paul Hollinsky 17569a82a9 Check the return type of copy_from_user 2019-08-27 18:16:50 -04:00
.vscode Initial commit of Version 2.0.0, with CAN FD support 2019-05-02 19:24:20 -04:00
.gitignore Initial commit of Version 2.0.0, with CAN FD support 2019-05-02 19:24:20 -04:00
Kconfig initial commit of socketcan ko 2016-07-28 09:03:28 -04:00
Makefile Edit /etc/modules in "install" function 2019-06-24 12:01:35 -04:00
README.md v2.0.1 2019-08-14 11:37:46 -04:00
intrepid.c Check the return type of copy_from_user 2019-08-27 18:16:50 -04:00
neomessage.h Initial commit of Version 2.0.0, with CAN FD support 2019-05-02 19:24:20 -04:00

README.md

Version 2.0.1

This is the kernel object portion of the Intrepid Control Systems SocketCAN support. For SocketCAN to work with Intrepid devices you will need to have this kernel object loaded on your system. Once the module is built and loaded run icsscand to turn on SocketCAN support.

First, install the necessary dependencies for building kernel modules.

On Ubuntu, this is acomplished by running sudo apt install linux-headers-generic build-essential gcc git

Clone this repository by running git clone https://github.com/intrepidcs/intrepid-socketcan-kernel-module.git

Change into the resulting clone, cd intrepid-socketcan-kernel-module

Then, build the KO, make

The resulting file will be intrepid.ko. This module depends on can, can_dev, and can_raw (which should already be a part of your system). Before you can load the module, make sure these modules are loaded, then insmod can be used to load it.

A script is provided to help within the makefile, make reload.

If you prefer to run it yourself, you can run

$ sudo modprobe can
$ sudo modprobe can_raw
$ sudo modprobe can_dev
$ sudo insmod intrepid.ko

lsmod can confirm the module is loaded. At this point, you can refer to the icsscand instructions.

If you wish you have the module auto-load on boot run make install once the module is built.

$ sudo make install

Follow your distro-specific method to auto-load modules. For example, on Ubuntu, edit your /etc/modules file to look something like this:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
can
can_raw
can_dev
intrepid