]> rtime.felk.cvut.cz Git - lincan.git/blobdiff - lincan/README
Structured comments updated.
[lincan.git] / lincan / README
index 34573b919976fea2573a8501e9acffedea5fa39d..c51ad5f535fd386c5f13294307e3d87c8db5c2ac 100644 (file)
@@ -1,2 +1,157 @@
-Linux CAN Driver
+               Linux CAN Driver (LinCAN) version 0.2 snapshot
+               Pavel Pisa <pisa@cmp.felk.cvut.cz>
+                       OCERA team member
+                       <http://www.ocera.org>
+
+
+INTRODUCTION
+============
+The LinCAN is an implementation of the Linux CAN-bus device driver supporting
+more CAN controller chips and many CAN interface boards. Its development
+has long history already. The OCERA version of the driver has new better
+designed internal structure, adds new features (as support for open by multiple
+applications, select system call) and other enhancements.
+  
+The driver consist of four main layers:
+  - chip level manipulation routines
+  - board specific support
+  - message queues
+  - user-space API and ABI character device interface
+
+
+DRIVER HISTORY
+==============
+
+The driver originates in The Linux Lab Project
+  http://www.llp.fu-berlin.de/
+then it has been first rewritten by Arnaud Westenberg
+  http://home.wanadoo.nl/arnaud/
+now it is developed and maintained as part of OCERA framework
+  http://www.ocera.org/
+
+I am unable to contact previous maintainer Arnaud Westenberg
+(arnaud@wanadoo.nl). If you know something about him, I like
+to hear it.
+
+Versions:
+
+can-0.7.1      latest driver version version published
+               by Arnaud Westenberg
+
+can-0.7.1-tm5  the enhanced version with better support of
+               SJA1000 PeliCAN mode and CAN Ethernet proxy
+               contributed by Tomasz Motylewski <T.Motylewski@bfad.de>
+
+can-0.7.1-pi1  the import and usage of previous version for
+(Dec 2002)     OCERA group purposes
+               
+can-0.7.1-pi3.4 enhanced version with select support and rewritten
+(Mar 2003)     make system for Linux kernels (2.2.x,2.4.x,2.5.x),
+               interrupts service cleanup and partial redesign
+               and DEVFS support
+
+lincan-0.2-pre heavily rewritten infrastructure of the driver based
+(Aug 2003)     on atomic slot management of queues
+
+The actual version of driver have been latest tested it with
+  - PC104 Advantech PCM3680 dual channel board on 2.4 RT-Linux enabled kernel
+  - PiKRON ISA card on 2.4.and 2.6 Linux kernels
+  - BfaD DIMM PC card on 2.4 RT-Linux enabled kernel
+  - KVASER pcican-q on 2.6 Linux kernel
+  - virtual board tested on all systems as well
+It takes more time to test it with more cards and polish
+support for 2.2 and 2.6 kernels, but these should be mainly
+cosmetic changes (I hope ;-), infrastructure and original
+support for more than 17 boards with more variants is in.
+
+
+SOURCES AND URLs
 ================
+
+The LinCAN driver component page at OCERA web site
+(not updated to the new version yet)
+
+  http://www.ocera.org/download/components/WP7/lincan-0.1.html
+  
+List of related communication components
+  
+  http://www.ocera.org/download/components/WP7/index.html
+
+The CVS repository of OCERA project at SourceForge
+
+  EXTCVS=":pserver:anonymous@cvs.ocera.sourceforge.net:/cvsroot/ocera"
+  cvs -d$EXTCVS login
+  cvs -z3 -d$EXTCVS co ocera
+  
+Web access into CVS
+
+  http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ocera/ocera/components/comm/can/lincan/
+
+Experimental directory at maintainer (Pavel Pisa's) pages 
+
+  http://cmp.felk.cvut.cz/~pisa/can/
+  http://cmp.felk.cvut.cz/~pisa/can/lincan-YYMMDD.tar.gz
+  
+Please send comments, bug-fixes and enhancements directly to
+me (Pavel Pisa <pisa@cmp.felk.cvut.cz>) or to OCERA discussion
+forum <https://sourceforge.net/forum/forum.php?forum_id=170893> 
+and lists <ocera-development@lists.sourceforge.net>
+
+
+COMPILATION
+===========
+
+Just type 'make' at the command line and driver module should compile
+without errors for current running kernel.
+
+More information can be found in driver documentation at
+  http://cmp.felk.cvut.cz/~pisa/can/
+  http://cmp.felk.cvut.cz/~pisa/can/lincan-X.Y.pdf
+
+INSTALLATION
+============
+Type 'make install'. The driver should be copied into actual kernel version
+modules directory "/lib/modules/x.y.z/kernel/drivers/char".
+
+LOADING
+=======
+
+To load the driver type:
+# insmod can.o hw='your hardware' irq='irq number' io='io address' <options>
+Example: # insmod can.o hw=pip5 irq=4 io=0x8000
+
+The hw argument can be one of:
+- pip5, for the pip5 computer by MPL
+- pip6, for the pip6 computer by MPL
+- pccan-q, for the PCcan-Q ISA card by KVASER
+- pccan-f, for the PCcan-F ISA card by KVASER
+- pccan-s, for the PCcan-S ISA card by KVASER
+- pccan-d, for the PCcan-D ISA card by KVASER
+- pcican-q, for the PCIcan-Q PCI card by KVASER (4x SJA1000)
+- pcican-d, for the PCIcan-Q PCI card by KVASER (2x SJA1000)
+- pcican-s, for the PCIcan-Q PCI card by KVASER (1x SJA1000)
+- nsican, for the CAN104 PC/104 card by NSI
+- cc104, for the CAN104 PC/104 card by Contemporary Controls
+- aim104, for the AIM104CAN PC/104 card by Arcom Control Systems
+- pc-i03, for the PC-I03 ISA card by IXXAT
+- pcm3680, for the PCM-3680 PC/104 card by Advantech
+- m437, for the M436 PC/104 card by SECO
+- bfadcan for sja1000 CAN embedded card made by BFAD GmbH
+- pikronisa for ISA memory mapped sja1000 CAN card made by PiKRON Ltd.
+- template, for yet unsupported hardware (you need to edit src/template.c)
+- virtual, CAN channel for testing of software and driver without CAN hardware
+
+options can be one of:
+- major=<nr>, major specifies the major number of the driver.
+- minor=<nr>, you can specify which minor numbers the driver should use for your
+  hardware.
+- extended=[1|0], configures the driver to use extended message format.
+- pelican=[1|0], configures the driver to set the CAN chips into pelican mode.
+- baudrate=<nr>, sets the baudrate of the device(s)
+- clock_freq=<nr>, the frequency of the CAN quartz
+- stdmask=<nr>, sets the standard mask of the device
+- extmask=<nr>, sets the extended mask of the device
+- mo15mask=<nr>, sets the mask for message object 15 (i82527 only)
+
+There's still a lot of work to do, have a look at the TODO file for more
+information.