All Forums
 Embedded Linux
 Linux Downloads and Documents
 CAN bus drivers
 Forum Locked
 Send Topic to a Friend
 Printer Friendly
Author Topic  

jlackey

213 Posts

Posted - 24 May 2002 :  10:59:14  Show Profile  Email Poster
CAN Drivers for Linux


Important: See below for the CAN driver to use on our current PXA255 and EP9315 products.


The GraphicsClient Plus, GraphicsMaster, and Advanced Graphics Client include a CAN serial bus interface. To use CAN on linux, a CAN driver must be installed. To build and install a CAN driver module, download and untar the source, edit the Makefile to reference the linux source tree for your board, and follow the directions in ADSREADME.


24-Feb-2003: jlackey - update driver to 0.7.1; now supports AGC

jlackey

213 Posts

Posted - 26 Jul 2002 :  16:47:00  Show Profile  Email Poster
The script determines the machine type at runtime. One module can be built that works on the GraphicsClient Plus, GraphicsMaster, and Advanced Graphics Client. After you have built the module (can.o) you can install it on any of these boards by running the script /etc/can.sh.


24-Feb-2003: jlackey - added AGC to list of supported boards

04-Nov-2003: rwhaley - clarified topic
Go to Top of Page

rwhaley

628 Posts

Posted - 17 Aug 2006 :  10:32:12  Show Profile  Email Poster
For Current Boards: CanFestival Driver

See below for newer release.

For more recent boards with Xscale and EP93xx processors our example CAN driver is CanFestival.

Download these files CanFestival-1.32.tgz and CanFestival-1.32-ads3.patch.

Untar CanFestival and apply the patch:

tar xzf CanFestival-1.32.tgz
cd CanFestival-1.32
patch -p1 < CanFestival-1.32-ads3.patch

To build a kernel module you also must build a kernel for your board following the instructions for you board and your kernel version here in these forums.

Then edit the Makefile so KERNEL_DIR refers to your kernel source tree that is configured for your board and specify either XSCALE or EP93XX for the ARCH depending on your board's CPU type.

Use 'make driver' for 2.4. The arbracan.o module will be in the Arbracan subdirectory.

Use 'make module' for 2.6. The arbracan.ko module will be in the top level directory. For 2.6.11 kernels, use 'make module_2_6_11'.

A simple test program 'rxtx' is in the Test-utils subdirectory. This test program transfers CAN messages between two boards.

Transfer the module and the test program to your boards. Use insmod to load the module and then run the test program on both boards.

Note: This module currently supports one CAN interface. Modifications will be required to support the second CAN interface available on some of our boards.

Edited by - adrian on 02 Oct 2007 10:07:19
Go to Top of Page

innomatix

12 Posts

Posted - 23 May 2008 :  15:58:53  Show Profile  Email Poster
Does anyone have the driver modifications to make the second CAN channel work on the VGX?
Go to Top of Page

jlackey

213 Posts

Posted - 28 May 2008 :  10:57:42  Show Profile  Email Poster
At the moment, CanFestival only supports one interface. We're currently planning to update our CanFestival patch some time this summer to support more than one interface. What is your time frame for this?

Note that kernel changes necessary to support the second CAN interrupt on the VGX are included in our latest kernel.
Go to Top of Page

adrian

17 Posts

Posted - 15 Aug 2008 :  15:25:20  Show Profile  Email Poster
CanFestival Driver Update (ads4)

For more recent boards with Xscale and EP93xx processors our example CAN driver is CanFestival. This includes the Sphere, AGX, GCX and VGX boards. At this time, the driver must be built using the 3.3.2 toolchain. This means that 2.4 kernels and 2.6 kernels through 2.6.17 are supported at this time. Newer 2.6 kernels will be supported in a future release.

Download these files CanFestival-1.32.tgz and CanFestival-1.32-ads4.patch.gz.

Untar CanFestival and apply the patch:

tar xzf CanFestival-1.32.tgz
cd CanFestival-1.32
zcat CanFestival-1.32-ads4.patch.gz | patch -p1

To build a kernel module you also must build a kernel for your board following the instructions for you board and your kernel version here in these forums.

Then edit the Makefile so KERNEL_DIR refers to your kernel source tree that is configured for your board and specify either XSCALE or EP93XX for the ARCH depending on your board's CPU type.

Use 'make driver' for 2.4. The arbracan.o module will be in the Arbracan subdirectory.

Use 'make module' for 2.6. The arbracan.ko module will be in the top level directory.

Use 'make test' A simple test program 'rxtx' is in the Test-utils subdirectory. This test program transfers CAN messages between two boards. It takes two optional arguments. '-s BAUD' can be used to set the bitrate, and the path to the CAN device file can be given to select the a specific CAN device. The default CAN device is /dev/can0.

Changes In This Release
  • Added support for the GCX.
  • Added support for secondary CAN device on the VGX.
  • Added a device specific ioctl for setting the device speed.
  • Extended rxtx for testing above features.
  • Fixed breakage in AGX support.
Go to Top of Page
  Topic  
 Forum Locked
 Send Topic to a Friend
 Printer Friendly
Jump To:
Eurotech Support Forums © Eurotech Inc. Go To Top Of Page
This page was generated in 0.03 seconds. Snitz Forums 2000