1 Linux CAN Driver (LinCAN) version 0.2 snapshot
2 Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 The LinCAN is an implementation of the Linux CAN-bus device driver supporting
10 more CAN controller chips and many CAN interface boards. Its development
11 has long history already. The OCERA version of the driver has new better
12 designed internal structure, adds new features (as support for open by multiple
13 applications, select system call) and other enhancements.
15 The driver consist of four main layers:
16 - chip level manipulation routines
17 - board specific support
19 - user-space API and ABI character device interface
25 The driver originates in The Linux Lab Project
26 http://www.llp.fu-berlin.de/
27 then it has been first rewritten by Arnaud Westenberg
28 http://home.wanadoo.nl/arnaud/
29 now it is developed and maintained as part of OCERA framework
32 I am unable to contact previous maintainer Arnaud Westenberg
33 (arnaud@wanadoo.nl). If you know something about him, I like
38 can-0.7.1 latest driver version version published
41 can-0.7.1-tm5 the enhanced version with better support of
42 SJA1000 PeliCAN mode and CAN Ethernet proxy
43 contributed by Tomasz Motylewski <T.Motylewski@bfad.de>
45 can-0.7.1-pi1 the import and usage of previous version for
46 (Dec 2002) OCERA group purposes
48 can-0.7.1-pi3.4 enhanced version with select support and rewritten
49 (Mar 2003) make system for Linux kernels (2.2.x,2.4.x,2.5.x),
50 interrupts service cleanup and partial redesign
53 lincan-0.2-pre heavily rewritten infrastructure of the driver based
54 (Aug 2003) on atomic slot management of queues
56 The actual version of driver have been latest tested it with
57 PC104 Advantech PCM3680 dual channel board on 2.4 kernel.
58 It takes more time to test it with more cards and polish
59 support for 2.2 and 2.6 kernels, but these should be mainly
60 cosmetic changes (I hope ;-), infrastructure and original
61 support for more than 14 boards with more variants is in.
67 The LinCAN driver component page at OCERA web site
68 (not updated to the new version yet)
70 http://www.ocera.org/download/components/WP7/lincan-0.1.html
72 List of related communication components
74 http://www.ocera.org/download/components/WP7/index.html
76 The CVS repository of OCERA project at SourceForge
78 EXTCVS=":pserver:anonymous@cvs.ocera.sourceforge.net:/cvsroot/ocera"
80 cvs -z3 -d$EXTCVS co ocera
84 http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ocera/ocera/components/comm/can/lincan/
86 Experimental directory at maintainer (Pavel Pisa's) pages
88 http://cmp.felk.cvut.cz/~pisa/can/
89 http://cmp.felk.cvut.cz/~pisa/can/lincan-YYMMDD.tar.gz
91 Please send comments, bug-fixes and enhancements directly to
92 me (Pavel Pisa <pisa@cmp.felk.cvut.cz>) or to OCERA discussion
93 forum <https://sourceforge.net/forum/forum.php?forum_id=170893>
94 and lists <ocera-development@lists.sourceforge.net>
100 Just type 'make' at the command line and driver module should compile
101 without errors for current running kernel.
103 More information can be found in driver documentation at
104 http://cmp.felk.cvut.cz/~pisa/can/
105 http://cmp.felk.cvut.cz/~pisa/can/lincan-X.Y.pdf
109 Type 'make install'. The driver should be copied into actual kernel version
110 modules directory "/lib/modules/x.y.z/kernel/drivers/char".
115 To load the driver type:
116 # insmod can.o hw='your hardware' irq='irq number' io='io address' <options>
117 Example: # insmod can.o hw=pip5 irq=4 io=0x8000
119 The hw argument can be one of:
120 - pip5, for the pip5 computer by MPL
121 - pip6, for the pip6 computer by MPL
122 - pccan-q, for the PCcan-Q ISA card by KVASER
123 - pccan-f, for the PCcan-F ISA card by KVASER
124 - pccan-s, for the PCcan-S ISA card by KVASER
125 - pccan-d, for the PCcan-D ISA card by KVASER
126 - nsican, for the CAN104 PC/104 card by NSI
127 - cc104, for the CAN104 PC/104 card by Contemporary Controls
128 - aim104, for the AIM104CAN PC/104 card by Arcom Control Systems
129 - pc-i03, for the PC-I03 ISA card by IXXAT
130 - pcm3680, for the PCM-3680 PC/104 card by Advantech
131 - m437, for the M436 PC/104 card by SECO
132 - bfadcan for sja1000 CAN embedded card made by BFAD GmbH
133 - pikronisa for ISA memory mapped sja1000 CAN card made by PiKRON Ltd.
134 - template, for yet unsupported hardware (you need to edit src/template.c)
136 options can be one of:
137 - major=<nr>, major specifies the major number of the driver.
138 - minor=<nr>, you can specify which minor numbers the driver should use for your
140 - extended=[1|0], configures the driver to use extended message format.
141 - pelican=[1|0], configures the driver to set the CAN chips into pelican mode.
142 - baudrate=<nr>, sets the baudrate of the device(s)
143 - clock_freq=<nr>, the frequency of the CAN quartz
144 - stdmask=<nr>, sets the standard mask of the device
145 - extmask=<nr>, sets the extended mask of the device
146 - mo15mask=<nr>, sets the mask for message object 15 (i82527 only)
148 There's still a lot of work to do, have a look at the TODO file for more