can4linux is an universal Linux device driver for ISA or PCI interface boards with CAN interface and embedded CAN controller solutions. Based on the API provided by can4linux commercial protocol stacks for CANopen, J1939 and DeviceNet are available.
- Freescale FlexCAN (ColdFire 5282, i.MX25, i.MX28, i.MX35)
- Microchip Stand Alone CAN MCP2515
- NXP Stand Alone CAN SJA1000 (on different ISA or PCI/PCIe boards)
- Atmel AT91SAM9263
- Analog Devices BlackFin BF537
- Xilinx Zynq - first release is out since 2013-02-03 - please test
- 'virtual' CAN mode without CAN hardware
- CAN FD support
- Scripting Interface for Tcl
- Scripting Interface for Python
Takes all of the headache out of working with common CAN chips. Personally, I've dealt with 82527 and SJA1000.
This driver has worked beautifully for the PC-104 Advantech CAN Card. As a troubleshooting tip for these cards, make sure IRQ's and memory blocks are appropriately reserved in BIOS.