Frank Mori Hess [Thu, 14 Dec 2006 21:08:45 +0000 (21:08 +0000)]
Added ni_tio_init_counter(), and exported some symbols.
Frank Mori Hess [Thu, 14 Dec 2006 19:43:26 +0000 (19:43 +0000)]
Made setting of gate sources more uniform across different hardware
families.
Frank Mori Hess [Tue, 12 Dec 2006 17:39:55 +0000 (17:39 +0000)]
Fixed interrupt handler prototypes for all drivers when compiling
against 2.6.19 kernels.
Frank Mori Hess [Tue, 12 Dec 2006 15:14:17 +0000 (15:14 +0000)]
Added PT_REGS_ARG macro to deal with change to interrupt handler
prototype in kernel 2.6.19.
Frank Mori Hess [Mon, 11 Dec 2006 20:43:34 +0000 (20:43 +0000)]
Made setting of counter clock source more uniform across e-series,
m-series, and 660x boards.
Frank Mori Hess [Fri, 8 Dec 2006 16:53:38 +0000 (16:53 +0000)]
First pass at consistent support for NI general-purpose counters.
Will replace counter support in ni_mio_common.c and ni_660x.c.
Note quite done yet, but it compiles.
Frank Mori Hess [Fri, 8 Dec 2006 16:50:11 +0000 (16:50 +0000)]
Added additional field to INSN_CONFIG_SET/GET_GATE_SRC, to support
devices with multiple gate inputs (NI counters can have 2 gates).
Bernd Porr [Wed, 6 Dec 2006 23:57:23 +0000 (23:57 +0000)]
The flag SDF_CMD_READ was missing which gave the error number "-1" during async reads.
Frank Mori Hess [Wed, 6 Dec 2006 13:58:50 +0000 (13:58 +0000)]
Added missing include of linux/version.h
Bernd Porr [Tue, 5 Dec 2006 21:51:56 +0000 (21:51 +0000)]
Removed the boolean definition from the driver and moved it to stddef.h
Bernd Porr [Tue, 5 Dec 2006 21:50:37 +0000 (21:50 +0000)]
Moved the boolean definition from the driver files to stddef because
from 2.6.19 boolean is defined there aleady.
Bernd Porr [Tue, 5 Dec 2006 21:46:20 +0000 (21:46 +0000)]
From 2.6.19 config.h is no longer needed. Added an ifdef statement.
Bernd Porr [Mon, 4 Dec 2006 23:24:07 +0000 (23:24 +0000)]
Added external trigger support to the driver.
Added a define for 2.6.19 because the completion function is without register arguments (as was pre 2.6.0).
Changed the GPIF programming so that it does no longer loops through the idle state. Instead I use the first states to reset the counter for channels.
Bernd Porr [Mon, 4 Dec 2006 23:20:21 +0000 (23:20 +0000)]
From 2.6.19 the pointer to the completion function is (again) without the register argument. That's basically pre 2.6.0
Frank Mori Hess [Wed, 29 Nov 2006 15:31:03 +0000 (15:31 +0000)]
Minor update to documentation comments.
Frank Mori Hess [Mon, 20 Nov 2006 20:15:56 +0000 (20:15 +0000)]
Mite byte-swapping bits seem to be associated with device/memory
ports as opposed to being always 16 or 32 bit swaps.
Frank Mori Hess [Mon, 20 Nov 2006 19:41:51 +0000 (19:41 +0000)]
Fixed possibile failures to decrement module use count on errors
(one was bug I probably introduced recently).
Frank Mori Hess [Mon, 20 Nov 2006 16:37:21 +0000 (16:37 +0000)]
Differentiate between 622x, 625x, and 628x m-series boards. Fix adc reset
for 625x boards, based on example code from ni (untested on hardware).
Fix polarity of AI_CONVERT output for 622x boards, based on ni
example code. Do 32 bit pci transfers on analog output dma, now that
the sample ordering has been resolved through byte-swapping bits
in mite chip. Use external clock (when configured) for timebase 3
too (I believe timebase 3 is the 80 MHz clock).
Frank Mori Hess [Fri, 17 Nov 2006 16:07:51 +0000 (16:07 +0000)]
Figured out what a couple bits in the mite channel control register
do (byte swapping). Used them to make 32 bit pci transfers to
16 bit analog outputs practical.
Frank Mori Hess [Fri, 17 Nov 2006 14:03:42 +0000 (14:03 +0000)]
Don't assume class_device has a devt member.
Frank Mori Hess [Thu, 16 Nov 2006 02:10:35 +0000 (02:10 +0000)]
Changed some ad8804 caldac types to ad8804_debug
Frank Mori Hess [Wed, 15 Nov 2006 21:25:28 +0000 (21:25 +0000)]
Added support for generating a seperate device file for each
subdevice that supports commands. Subdevices need to indicate
which directions they support commands in with the new subdevice
flags SDF_CMD_READ and SDF_CMD_WRITE. Breaks compatibility
with 2.4 kernels. Currently, only 8-bit minor numbers are
used, limiting the maximum subdevice to 15. This should
be easily changeable once more distros support 20-bit
minor numbers.
Ian Abbott [Mon, 13 Nov 2006 14:11:52 +0000 (14:11 +0000)]
Replaced deprecated use of check_region().
Ian Abbott [Mon, 13 Nov 2006 14:06:57 +0000 (14:06 +0000)]
Fixed some C++-isms: mixed declarations and code.
Frank Mori Hess [Thu, 9 Nov 2006 18:12:35 +0000 (18:12 +0000)]
Fixed oops caused by my giving comedi_driver.board_name a well-defined
type. Fix and bug report was from from sinkin <jinzhucheng@tom.com>.
Frank Mori Hess [Thu, 9 Nov 2006 17:38:19 +0000 (17:38 +0000)]
Added dev_t to comedi_subdevice in preparation for adding a device
file for each streaming subdevice. Got rid of unused options array
from comedi_device.
Frank Mori Hess [Tue, 7 Nov 2006 15:46:51 +0000 (15:46 +0000)]
Added init of ai static control reg for m series.
Frank Mori Hess [Tue, 7 Nov 2006 00:04:12 +0000 (00:04 +0000)]
Updated comment about dma transfer width.
Frank Mori Hess [Mon, 6 Nov 2006 21:10:10 +0000 (21:10 +0000)]
Blah, doing 32 pci transfers causes the channel order to get swapped,
switching back to 16 bit.
Frank Mori Hess [Sat, 4 Nov 2006 02:39:46 +0000 (02:39 +0000)]
Do 32 bit dma transfers for analog output.
Frank Mori Hess [Thu, 2 Nov 2006 19:34:23 +0000 (19:34 +0000)]
Added some commented-out code for measuring speed of dma transfers
for ao.
Frank Mori Hess [Thu, 2 Nov 2006 03:22:10 +0000 (03:22 +0000)]
Fixed decode of write post fifo depth.
Frank Mori Hess [Wed, 1 Nov 2006 20:56:38 +0000 (20:56 +0000)]
Added a couple more (unused_) bit definitions.
Frank Mori Hess [Wed, 1 Nov 2006 20:55:52 +0000 (20:55 +0000)]
put COMEDI_INPUT, etc. in their own enum.
Frank Mori Hess [Wed, 1 Nov 2006 19:52:47 +0000 (19:52 +0000)]
fixed hosing of ao_mode2 register.
Frank Mori Hess [Fri, 27 Oct 2006 17:19:14 +0000 (17:19 +0000)]
Set AO_Number_Of_DAC_Packages bit for m-series.
Frank Mori Hess [Fri, 27 Oct 2006 17:18:51 +0000 (17:18 +0000)]
check length of INSN_CONFIG_ANALOG_TRIG
Frank Mori Hess [Fri, 27 Oct 2006 15:46:04 +0000 (15:46 +0000)]
Fixed setting of MSeries_AO_Update_Timed_Bit in ao commands
for m-series.
Frank Mori Hess [Thu, 26 Oct 2006 21:04:35 +0000 (21:04 +0000)]
Fixed waveform analog output on m-series, which I found was only working
for doing a single channel output on channel 0.
Frank Mori Hess [Wed, 25 Oct 2006 15:33:06 +0000 (15:33 +0000)]
Only try to initialize pfi output select registers if it's an m-series
board. Initialize pfi do register.
Frank Mori Hess [Tue, 24 Oct 2006 20:46:19 +0000 (20:46 +0000)]
Initialize pfi output select registers.
Frank Mori Hess [Tue, 24 Oct 2006 20:29:47 +0000 (20:29 +0000)]
Implemented insn_bits for PFI subdevice with m-series boards.
Frank Mori Hess [Tue, 24 Oct 2006 20:29:07 +0000 (20:29 +0000)]
Check length of INSN_BITS instructions in core.
Frank Mori Hess [Tue, 24 Oct 2006 18:52:22 +0000 (18:52 +0000)]
Added support for configuring pfi routing on m-series boards with
INSN_CONFIG_SET_ROUTING.
Frank Mori Hess [Tue, 24 Oct 2006 15:26:51 +0000 (15:26 +0000)]
m-series has 16 pfi lines instead of 10.
Frank Mori Hess [Tue, 24 Oct 2006 15:21:46 +0000 (15:21 +0000)]
Fixed search for best pll multiplier/divisor
Frank Mori Hess [Tue, 24 Oct 2006 15:06:10 +0000 (15:06 +0000)]
Added NI_EXT_PFI() and NI_EXT_RTSI() helper functions to comedi.h
for specifying pfi/rtsi lines as external trigger sources. Tweaked
a couple names to match ni stc documentation more closely.
Frank Mori Hess [Tue, 24 Oct 2006 15:03:39 +0000 (15:03 +0000)]
Minor updates to documentation comment block.
Frank Mori Hess [Mon, 23 Oct 2006 19:33:24 +0000 (19:33 +0000)]
Added support for changing routing of signals to RTSI pins. Fixed
various bugs in syncronization to external clock sources.
Bernd Porr [Sat, 21 Oct 2006 22:54:30 +0000 (22:54 +0000)]
Fixed two small bugs Ian Abbott pointed out. Ian Wrote:
The first one is just a tiny mistake in usbduxfast_ai_cmdtest():
/* step 3: make sure arguments are trivially compatible */
if(cmd->start_arg == TRIG_NOW && cmd->start_arg != 0)
should be:
if(cmd->start_src == TRIG_NOW && cmd->start_arg != 0)
The other one is a mismatch between cmdtest and cmd. cmdtest checks
start_src==TRIG_NOW or start_src==TRIG_EXT, but cmd checks
start_src==TRIG_NOW and otherwise assumes start_src==TRIG_INT.
Frank Mori Hess [Fri, 20 Oct 2006 16:15:34 +0000 (16:15 +0000)]
Added missing offsets for RTSI register on m-series
Frank Mori Hess [Fri, 20 Oct 2006 15:31:21 +0000 (15:31 +0000)]
Added support for INSN_CONFIG_GET_CLOCK_SRC
Frank Mori Hess [Thu, 19 Oct 2006 21:06:18 +0000 (21:06 +0000)]
Added support for configuring external clock sources on ni mio boards,
including using the PLL on m-series boards.
Frank Mori Hess [Thu, 19 Oct 2006 20:56:40 +0000 (20:56 +0000)]
Added some more data length checks for config instructions to
comedi_fops.c
Frank Mori Hess [Wed, 18 Oct 2006 23:01:27 +0000 (23:01 +0000)]
fixed max PLL divisor/multiplier
Frank Mori Hess [Wed, 18 Oct 2006 19:24:10 +0000 (19:24 +0000)]
Added some bit definitions to support the external reference clock driven
phased-locked loop.
Frank Mori Hess [Wed, 18 Oct 2006 14:32:32 +0000 (14:32 +0000)]
Replaced a bunch of printk with RT-safe rt_printk
Frank Mori Hess [Wed, 18 Oct 2006 13:01:00 +0000 (13:01 +0000)]
Added missing pci device ids using values provided by Tim Ousley
<tim.ousley@ni.com>
Frank Mori Hess [Tue, 17 Oct 2006 19:16:56 +0000 (19:16 +0000)]
Put in some guesses as to whether various boards should have their
outputs inverted.
Frank Mori Hess [Tue, 17 Oct 2006 17:21:18 +0000 (17:21 +0000)]
Reworked INSN_BITS to support dio subdevices with > 32 channels
by specifying a base channel in the insn.chanspec.
Frank Mori Hess [Tue, 17 Oct 2006 16:11:35 +0000 (16:11 +0000)]
Fixed insn_rw_emulate_bits() for reads when channel is >= 32. I don't
like this new scheme, instead I think I'm going support >= 32 dio channels
by making the insn chanspec specify a base channel for the dio bitmask.
Frank Mori Hess [Tue, 17 Oct 2006 15:37:50 +0000 (15:37 +0000)]
Fixed reversal of input/output when configuring dio directions. Fixed
problems with reads and writes I created with earlier work.
Frank Mori Hess [Tue, 17 Oct 2006 15:36:37 +0000 (15:36 +0000)]
Made insn_rw_emulate_bits() work for dio subdevice with more than
32 channels (ni_65xx).
Frank Mori Hess [Mon, 16 Oct 2006 21:01:20 +0000 (21:01 +0000)]
Added support for 6509, and other boards in family. Will test
tommorrow.
Frank Mori Hess [Mon, 16 Oct 2006 19:05:55 +0000 (19:05 +0000)]
Gave board_name member of comedi_driver_struct a well-defined type.
Added const qualifier to some char*.
Frank Mori Hess [Mon, 16 Oct 2006 17:45:23 +0000 (17:45 +0000)]
Fixed a couple compile warnings.
Frank Mori Hess [Mon, 16 Oct 2006 15:40:35 +0000 (15:40 +0000)]
Added pci device id for pxi-6509, fixed driver_name.
Frank Mori Hess [Sun, 15 Oct 2006 23:33:28 +0000 (23:33 +0000)]
First pass at supporting 32 bit static dio on m-series boards (untested).
Frank Mori Hess [Sat, 14 Oct 2006 00:10:43 +0000 (00:10 +0000)]
Added contributor
Frank Mori Hess [Sat, 14 Oct 2006 00:09:47 +0000 (00:09 +0000)]
New drivers from Jonathan Grierson <jd@renko.co.uk>:
Hi, I've recently been working with two digital
daq cards and have written drivers to get them working with Comedi.
The first is for the National Instruments PCI-6514. It could perhaps be
merged with the 6527 driver because I used this as a base but the 6514
is part of a series from NI which are all quite similar and not quite as
advanced. Let me know what you think. I'm afraid it needed to be done
quite quickly and so felt it would be easier to produce a simpler driver
rather than hack the existing one.
The second is for the Adlink PCI-7296. Just a pci wrapper for 4 8255
devices. Only basic IO enabled so far so no interrupts.
Frank Mori Hess [Fri, 13 Oct 2006 17:44:33 +0000 (17:44 +0000)]
Added support for pcie-629 and pxi-6281
Frank Mori Hess [Fri, 13 Oct 2006 17:21:18 +0000 (17:21 +0000)]
White space changes.
Frank Mori Hess [Tue, 10 Oct 2006 00:43:37 +0000 (00:43 +0000)]
Fixed up documentation comments.
Frank Mori Hess [Tue, 10 Oct 2006 00:37:55 +0000 (00:37 +0000)]
New driver from Nickolay Petrov <nick@office.etersoft.ru>:
Driver for Fastwel UNIOxx-5 (analog and digital i/o) boards.
Copyright (C) 2006 Kruchinin Daniil (asgard) [asgard@etersoft.ru]
Frank Mori Hess [Tue, 10 Oct 2006 00:35:28 +0000 (00:35 +0000)]
Mask off bogus high bits for m-series boards with 16 bits or less.
Frank Mori Hess [Thu, 21 Sep 2006 00:00:18 +0000 (00:00 +0000)]
New driver from Everett Wang <everteq@sbcglobal.net>:
We have written a comedi driver for sensoray 526
board. It is a very small PC104 format multifunction
card. We have used this driver for a while and it is
pretty stable.
Frank Mori Hess [Thu, 14 Sep 2006 17:52:06 +0000 (17:52 +0000)]
Added GPL header.
Frank Mori Hess [Mon, 11 Sep 2006 13:53:24 +0000 (13:53 +0000)]
Added SDF_PACKED subdevice flag.
Frank Mori Hess [Thu, 7 Sep 2006 14:44:33 +0000 (14:44 +0000)]
Added SDF_SOFT_CALIBRATED subdevice flag.
Frank Mori Hess [Wed, 23 Aug 2006 14:15:25 +0000 (14:15 +0000)]
fixed small chance of attempting to free an unallocated irq.
Frank Mori Hess [Wed, 23 Aug 2006 14:05:17 +0000 (14:05 +0000)]
Install modules into "comedi" subdir instead of "extra" subdir when
using kbuild.
Frank Mori Hess [Wed, 23 Aug 2006 01:48:14 +0000 (01:48 +0000)]
Fixed irq argument to comedi_request_irq()
Ian Abbott [Tue, 22 Aug 2006 16:26:34 +0000 (16:26 +0000)]
Renamed CLASS_DEVICE_CREATE to COMEDI_CLASS_DEVICE_CREATE to avoid
name clash with RTAI.
Ian Abbott [Mon, 21 Aug 2006 16:25:12 +0000 (16:25 +0000)]
Fix for SuSE 9.0 2.4.21 kernel. Simplify jiffies_to_msecs() and
msecs_to_jiffies() to avoid preprocessor optimisations that depend on
HZ being a C constant expression. Just round the result up to the nearest
integer. The supported range of input values (avoiding arithmetic overflow)
is now less than that of the Linux versions of these functions for common
values of HZ, but that's unlikely to cause any problems (and if it does we
can fix it by making the functions more complicated).
Frank Mori Hess [Thu, 17 Aug 2006 13:52:26 +0000 (13:52 +0000)]
m-series boards are unhappy if ai config fifo is empty, even when you
are bypassing it.
Frank Mori Hess [Wed, 16 Aug 2006 19:18:07 +0000 (19:18 +0000)]
0.7.73 changes
Frank Mori Hess [Wed, 16 Aug 2006 19:09:50 +0000 (19:09 +0000)]
bump version for 0.7.73
Frank Mori Hess [Wed, 16 Aug 2006 15:55:13 +0000 (15:55 +0000)]
Fixed max ai speed for 628x boards.
Frank Mori Hess [Wed, 16 Aug 2006 15:54:50 +0000 (15:54 +0000)]
Added bit definitions for m-series ai chanlist configuration register.
Frank Mori Hess [Wed, 16 Aug 2006 15:22:27 +0000 (15:22 +0000)]
Use new m-series chanlist configuration for m-series boards, instead
of relying on backwards compatibility with e-series.
Frank Mori Hess [Wed, 16 Aug 2006 15:21:20 +0000 (15:21 +0000)]
Fixed bytes_per_sample to return correct value in lsampl_t case, was
broken due to confusion between subdev->flags and subdev->subdev_flags.
Frank Mori Hess [Tue, 15 Aug 2006 20:21:28 +0000 (20:21 +0000)]
Fix calculation of bytes per scan for 18-bit analog input m-series
boards when generating end-of-scan events.
Frank Mori Hess [Tue, 15 Aug 2006 18:58:02 +0000 (18:58 +0000)]
Fix rounding up of buffer size to integer multiple of page size.
Frank Mori Hess [Mon, 14 Aug 2006 14:07:11 +0000 (14:07 +0000)]
Bumped version for 0.7.72
Frank Mori Hess [Mon, 14 Aug 2006 14:06:31 +0000 (14:06 +0000)]
Added 0.7.72 changes, and fixed misspellings of Ian Abbott's name.
Frank Mori Hess [Mon, 14 Aug 2006 14:05:42 +0000 (14:05 +0000)]
Added new contributor.
Frank Mori Hess [Mon, 14 Aug 2006 13:45:03 +0000 (13:45 +0000)]
Added missing GPL headers.
Frank Mori Hess [Mon, 14 Aug 2006 02:58:52 +0000 (02:58 +0000)]
New drivers from Pablo Mejia <pablo@cctechnol.com>:
We have written basic drivers for two PC-104 boards we are using at work
and we would like to contribute them to the Comedi project. The drivers
are for two Advanced Digital Logic (www.adlogic-pc104.com) boards:
104-AIO12-8
http://www.adlogic-pc104.com/products/peripherals/datasheets/104-AIO12-8.pdf
104-IIRO-16
http://www.adlogic-pc104.com/products/peripherals/datasheets/104-IIRO-16.pdf
The actual manufacturer is Acces I/O (http://accesio.com). I believe
the same boards are also available from (http://kontron.com)
The drivers are
basic. For instance no asynchronous operations are supported. The
drivers do work (tested on Fedora Core 4 and 5).
Ian Abbott [Fri, 11 Aug 2006 17:28:59 +0000 (17:28 +0000)]
Restore the old COPYING and INSTALL files after they are overwritten by
autoreconf -i -f.
Ian Abbott [Fri, 11 Aug 2006 15:08:50 +0000 (15:08 +0000)]
Updated 'Adding new drivers' section.