termitt [Tue, 20 Nov 2007 21:47:41 +0000 (21:47 +0000)]
Added support for HCAN2 controllers integrated in SH7760.
The code has been developed during diploma thesis work at the Department of Control Engineering, FEL, CTU and has been tested on EMX32 SH7760 based board produced by MSC.
termitt [Tue, 20 Nov 2007 21:24:49 +0000 (21:24 +0000)]
Added support for HCAN2 controllers integrated in SH7760.
The code has been developed during diploma thesis work at the Department of Process Controll, FEL, CTU and has been tested on EMX32 SH7760 based board produced by MSC.
ppisa [Tue, 30 Oct 2007 11:40:13 +0000 (11:40 +0000)]
Corrected typo in legacy PCA82C200 (SJA1000 std) chip driver.
Thanks to Terence Soh for noticing the problem.
Important notice, if the board is equipped by real SJA1000
CAN controller chip, then PeliCAN mode is much much better
choice and sja1000p_register() function should be used
instead of bare standard sja1000_register() chip support.
ppisa [Wed, 15 Aug 2007 20:06:04 +0000 (20:06 +0000)]
Changes in CAN/PCI-200 card sources to be more clean in types
The newer kernels are very picky about diferentiate of numbers,
virtual and IO afddresses types. Try to follow rules and allow
compatability with older kernels is little csardas.
ppisa [Tue, 7 Aug 2007 13:09:43 +0000 (13:09 +0000)]
Minor correction in PEAK PCI can support.
Some first tests worked on DigitalLogic's MSMCA104+
card clone. But interrupt handling requires
more testing. PITA documentation is unclear and real
behavior of IRQ status has to be analyzed and code
has to be adjusted accordingly.
ppisa [Mon, 1 Jan 2007 23:52:54 +0000 (23:52 +0000)]
The first round of I/O space pointers separation.
The new 2.6.x Linux kernels separates I/O space
addresses from kernel and user space ones.
They are defined as (void __iomem *).
To follow this rule and suppress some warnings
LinCAN defines type can_ioptr_t now which allows
to keep code compatible between 2.4.x and 2.6.x kernels.
These changes exposes more other inconsistencies
in some boards support code which should be corrected
one by one later.
The code requires testing and checking on more hardware.
ppisa [Fri, 6 Oct 2006 18:41:05 +0000 (18:41 +0000)]
The non-OMK stand-alone build updated to work with 2.6.18+ kernels.
The linux/version.h file no longer provides information about
kernel release. This information can be found in the linux/utsrelease.h
include file.
The problem reported and correction suggested by Francesco Monica,
but little different solution tested in other drivers has been
included at the end.
ppisa [Wed, 16 Aug 2006 20:49:37 +0000 (20:49 +0000)]
Corrected incorrect use of mutex initializer for semaphore used in support code for IPCI165 card.
The mismatch prevented build of IPCI165 card support for fully preemptive kernel.
ppisa [Mon, 5 Jun 2006 00:55:45 +0000 (00:55 +0000)]
Unified module parameters style to new one for 2.6.x kernels.
Old one style left for 2.4 kernels.
This prevents error:
Ignoring new-style parameters in presence of obsolete ones.
Base board frequency specification moved to main.c and parameter
unified under name "clockfreq".
ppisa [Sun, 21 May 2006 22:50:24 +0000 (22:50 +0000)]
Correction of false i82527 IRQ stuck problem reported by Terence Soh.
The interrupt pending flag has to be clean even, if we cannot process
synchronous activities. The flags ensures, that they are processed
later in such case. The change requires testing, I have not get
to testing yet.
ppisa [Sun, 26 Mar 2006 23:45:15 +0000 (23:45 +0000)]
Added "chip_info" entry to the /proc/can/channelX, contributed by Sergei Sharonov.
Code is compatible with 2.6.x and 2.4.x Linux kernels.
It would fail on 2.2.x version. If its functionality is required,
can_remove_proc_entry() has to be used on pointer stored in
the new field and code emulating create_proc_read_entry()
has to be added.
ppisa [Wed, 18 Jan 2006 01:20:07 +0000 (01:20 +0000)]
Deep rewrite of TSCAN1 and TS7KV boards support.
Result requires tests on real hardware and probability
of breakage is very likely. The main aim of the rewrite
is to simplify register access code. The LinCAN driver
does not require more than first 32 byte ports to control
SJA1000 in pelican mode. With this simplification, no windowing
is required for TSCAN1 and only minimal support for access
of SJACDR has been left for TS7KV. The boards lookup checks
for IO range availability and TSCAN1 window can be placed
automatically as well. The "canio" parameter changed to "tscanio".
ppisa [Wed, 28 Dec 2005 16:04:06 +0000 (16:04 +0000)]
Added more detailed SJA1000 error reporting and primitive report rate limiting.
The detailed SJA1000 error reporting is enabled by adding next line
into config.omk file
CONFIG_OC_LINCAN_DETAILED_ERRORS=y
ppisa [Thu, 17 Nov 2005 15:36:37 +0000 (15:36 +0000)]
Ronald Gomes from Technologic Systemscontributed support for TS-CAN1 and TS-7KV cards.
This is initial version and would require more cleanups and optimizations.
ppisa [Sun, 6 Nov 2005 00:20:47 +0000 (00:20 +0000)]
LinCAN driver updated to work on Real-Time Preemption enabled kernel.
Code tested on SJA1000 controller on the ARM based system
with Linux kernel 2.6.14 and Ingo Molnar's 2.6.14-rt5 patch.