comedi.git
17 years agoPut ni_gpct_device pointer in ni_gpct struct, so it doesn't have to
Frank Mori Hess [Tue, 10 Jul 2007 13:01:20 +0000 (13:01 +0000)]
Put ni_gpct_device pointer in ni_gpct struct, so it doesn't have to
be passed around everywhere as a separate parameter.

17 years agoRealized that "struct ni_gpct" needs to have a "ni_gpct_device"
Frank Mori Hess [Mon, 9 Jul 2007 20:12:56 +0000 (20:12 +0000)]
Realized that "struct ni_gpct" needs to have a "ni_gpct_device"
struct split out of it, which is shared by all counters on a board.

Need to hold mite_channel_lock in ni_mio_common when calling ni_tio
functions that use mite channel.

17 years agoReplaced magic numbers for subdevice indices with an enum. Also,
Frank Mori Hess [Fri, 6 Jul 2007 19:12:40 +0000 (19:12 +0000)]
Replaced magic numbers for subdevice indices with an enum.  Also,
inching towards gpct command support.

17 years agoAdded some ack'ing of b interrupts, and do acks before handling
Frank Mori Hess [Fri, 6 Jul 2007 17:08:58 +0000 (17:08 +0000)]
Added some ack'ing of b interrupts, and do acks before handling
interrupts, to avoid a race (which seems possible in theory).

17 years agoPatch from Anders Blomdell <anders.blomdell@control.lth.se>:
Frank Mori Hess [Fri, 6 Jul 2007 00:05:47 +0000 (00:05 +0000)]
Patch from Anders Blomdell <anders.blomdell@control.lth.se>:

Now it compiles on 2.6.21...

17 years agoReplaced direct memory accesses with I/O memory access functions.
Ian Abbott [Thu, 5 Jul 2007 17:15:59 +0000 (17:15 +0000)]
Replaced direct memory accesses with I/O memory access functions.
Anders Blomdell replaced bitfield types with enum types.

17 years agoNew driver JR3/PCI force sensor board from Anders Blomdell
Frank Mori Hess [Tue, 3 Jul 2007 02:44:22 +0000 (02:44 +0000)]
New driver JR3/PCI force sensor board from Anders Blomdell
<anders.blomdell@control.lth.se>

17 years agoPatch from Anders Blomdell <anders.blomdell@control.lth.se>, fixes
Frank Mori Hess [Thu, 28 Jun 2007 01:20:21 +0000 (01:20 +0000)]
Patch from Anders Blomdell <anders.blomdell@control.lth.se>, fixes
quadrature encoder counting with NI M-series boards.

17 years agoSimplified plx9052.h and moved PCI236-specific bits into amplc_pc236.c.
Ian Abbott [Wed, 27 Jun 2007 15:31:50 +0000 (15:31 +0000)]
Simplified plx9052.h and moved PCI236-specific bits into amplc_pc236.c.

17 years agoAllow board-specific names to be used to configure the device. For backwards
Ian Abbott [Wed, 27 Jun 2007 14:37:02 +0000 (14:37 +0000)]
Allow board-specific names to be used to configure the device.  For backwards
compatibility, the driver name can still be used as a wildcard to configure
any supported device.

I'll use this in future plans to support newer versions of the boards,
where a board-specific name has to be used to get at the newer features.

17 years agoSupport PCI bus/slot configuration options.
Ian Abbott [Wed, 27 Jun 2007 12:30:37 +0000 (12:30 +0000)]
Support PCI bus/slot configuration options.

17 years agoDon't bother reporting any unsupported Amplicon cards that are found.
Ian Abbott [Wed, 27 Jun 2007 12:24:30 +0000 (12:24 +0000)]
Don't bother reporting any unsupported Amplicon cards that are found.

17 years agoAdded PCI bus/slot configuration options. Ignored if unset or zero.
Ian Abbott [Wed, 27 Jun 2007 12:09:39 +0000 (12:09 +0000)]
Added PCI bus/slot configuration options.  Ignored if unset or zero.

17 years agoChanged comedi driver_name to "contec_pci_dio". "dummy" was a silly name.
Ian Abbott [Wed, 27 Jun 2007 12:00:06 +0000 (12:00 +0000)]
Changed comedi driver_name to "contec_pci_dio".  "dummy" was a silly name.

17 years agoReplace pci_find_device with pci_get_device, and use pci_dev_get and
Ian Abbott [Wed, 27 Jun 2007 10:54:55 +0000 (10:54 +0000)]
Replace pci_find_device with pci_get_device, and use pci_dev_get and
pci_dev_put to manage reference count for pci device.

Also, check result of kmalloc in pci_card_list_init.

17 years agoDon't ignore return value of comedi_request_irq().
Ian Abbott [Wed, 27 Jun 2007 10:37:20 +0000 (10:37 +0000)]
Don't ignore return value of comedi_request_irq().

17 years agoUpdate deprecated interrupt flags (SA_SHIRQ => IRQF_SHARED).
Ian Abbott [Wed, 27 Jun 2007 10:23:44 +0000 (10:23 +0000)]
Update deprecated interrupt flags (SA_SHIRQ => IRQF_SHARED).

17 years agoA little more code intended to support counter commands eventually.
Frank Mori Hess [Fri, 22 Jun 2007 20:08:14 +0000 (20:08 +0000)]
A little more code intended to support counter commands eventually.

17 years agoFixed disabling of interrupts in mite_setup().
Frank Mori Hess [Mon, 18 Jun 2007 13:53:00 +0000 (13:53 +0000)]
Fixed disabling of interrupts in mite_setup().

17 years agoAdded a little more on how the ni windows drivers enables mite burst
Frank Mori Hess [Fri, 15 Jun 2007 15:29:47 +0000 (15:29 +0000)]
Added a little more on how the ni windows drivers enables mite burst
mode.

17 years agoFixed burst mode on dma transfers on pxi-6281
Frank Mori Hess [Fri, 15 Jun 2007 14:36:32 +0000 (14:36 +0000)]
Fixed burst mode on dma transfers on pxi-6281

17 years agoFixed spurious warnings about AO interrupts not being acked, due to
Frank Mori Hess [Wed, 13 Jun 2007 20:43:45 +0000 (20:43 +0000)]
Fixed spurious warnings about AO interrupts not being acked, due to
my recent changes.

17 years agoGot rid of comedi_subdevice.cmd_cleanup after some reconsideration
Frank Mori Hess [Wed, 13 Jun 2007 18:51:10 +0000 (18:51 +0000)]
Got rid of comedi_subdevice.cmd_cleanup after some reconsideration
(it isn't really needed).  Added beginnings of support for NI
general-purpose counter commands.

17 years agoTake into account different number of dio channels on various
Frank Mori Hess [Mon, 11 Jun 2007 19:38:26 +0000 (19:38 +0000)]
Take into account different number of dio channels on various
m-series boards.

17 years agoAdded board entry for PCIe-6251, based on device id in email from
Frank Mori Hess [Thu, 7 Jun 2007 13:30:21 +0000 (13:30 +0000)]
Added board entry for PCIe-6251, based on device id in email from
Michael Mestre <michael.mestre@free.fr>

17 years agoChanged 6413 caldac types to ad8804_debug.
Frank Mori Hess [Thu, 7 Jun 2007 13:26:21 +0000 (13:26 +0000)]
Changed 6413 caldac types to ad8804_debug.

17 years agoAdded device id for pxi-6143 (patch from
Frank Mori Hess [Thu, 7 Jun 2007 13:24:57 +0000 (13:24 +0000)]
Added device id for pxi-6143 (patch from
Flavio Antonioli <flavio.antonioli@supsi.ch>)

17 years agoApplied patch from Calin A. Culianu for bug #254. The MUX for the AI
Ian Abbott [Thu, 24 May 2007 12:41:40 +0000 (12:41 +0000)]
Applied patch from Calin A. Culianu for bug #254.  The MUX for the AI
subdevice was being programmed incorrectly for synchronous acquisition of
more than one AI channel.

17 years agoAdded check against maximum ao update rate in analog output command test.
Frank Mori Hess [Tue, 8 May 2007 14:28:21 +0000 (14:28 +0000)]
Added check against maximum ao update rate in analog output command test.

17 years agoFixed check of maximum ai scan rate to take into account multiplexed
Frank Mori Hess [Wed, 2 May 2007 16:45:18 +0000 (16:45 +0000)]
Fixed check of maximum ai scan rate to take into account multiplexed
inputs.

17 years agoAdded ao_speed board field for maximum analog output update rate
Frank Mori Hess [Wed, 2 May 2007 16:12:54 +0000 (16:12 +0000)]
Added ao_speed board field for maximum analog output update rate
with commands.

17 years agoTweaked order deallocations happen for an async buffer allocated
Frank Mori Hess [Wed, 2 May 2007 13:30:21 +0000 (13:30 +0000)]
Tweaked order deallocations happen for an async buffer allocated
with vmalloc.

17 years agoFixed horrible grinding noises on mmap.
Frank Mori Hess [Tue, 1 May 2007 21:16:15 +0000 (21:16 +0000)]
Fixed horrible grinding noises on mmap.

17 years agoBe more careful about using all the write-allocated buffer space
Frank Mori Hess [Tue, 1 May 2007 20:16:51 +0000 (20:16 +0000)]
Be more careful about using all the write-allocated buffer space
available, in the cases where it was allocated previously but
never used.

17 years agoDon't set EOMEDI_CB_EOBUF event flag in comedi_buf_write_free(),
Frank Mori Hess [Tue, 1 May 2007 20:15:38 +0000 (20:15 +0000)]
Don't set EOMEDI_CB_EOBUF event flag in comedi_buf_write_free(),
since it may be called by user writing into buffer.

17 years agoHandle stop_src TRIG_COUNT with more than one channel correctly
Frank Mori Hess [Tue, 1 May 2007 20:12:21 +0000 (20:12 +0000)]
Handle stop_src TRIG_COUNT with more than one channel correctly
when doing output dma.

17 years agoMite channels 4 and 5 verified to work with m-series 6289 boards now.
Frank Mori Hess [Mon, 30 Apr 2007 18:36:18 +0000 (18:36 +0000)]
Mite channels 4 and 5 verified to work with m-series 6289 boards now.

17 years agoAllocate async buffer pages with dma_alloc_coherent, and map them
Frank Mori Hess [Sun, 29 Apr 2007 21:41:33 +0000 (21:41 +0000)]
Allocate async buffer pages with dma_alloc_coherent, and map them
into continguous virtual addresses with vmap.

17 years agoMade it possible to request a mite channel from a specific range,
Frank Mori Hess [Thu, 26 Apr 2007 19:59:18 +0000 (19:59 +0000)]
Made it possible to request a mite channel from a specific range,
instead of just starting at a specified offset.  Only allow
use of mite channels 0-3 for ai/ao, since those are the only
ones that seem to work.  Commented out 3 ai convert pulses sent
when clearing ai fifo on 625x boards (based on NI example code),
since it appears to be wrong when tested with real hardware.

17 years agoAdded some documentation of 32 bit dio port.
Frank Mori Hess [Thu, 26 Apr 2007 19:29:18 +0000 (19:29 +0000)]
Added some documentation of 32 bit dio port.

17 years agoChanged request/release of mite channels to use mite_channel struct
Frank Mori Hess [Thu, 26 Apr 2007 17:43:44 +0000 (17:43 +0000)]
Changed request/release of mite channels to use mite_channel struct
pointers, instead of channel indices.  Changed many mite functions
to take mite_channel argument instead of a mite_struct and a
channel index.  Added mite_dma_descriptor_ring, since drivers
need to maintain the descriptors seperatly from a channel, since
the channel is reserved/released with each use but the
descriptor ring only changes when comedi's buffer is resized.  Made
ni_mio_common.c dynamically allocate mite channels for ai/ao
when needed, instead of permanently assigning mite channels to
subdevices.

17 years agoGot rid of useless include of mite.h.
Frank Mori Hess [Thu, 26 Apr 2007 15:05:09 +0000 (15:05 +0000)]
Got rid of useless include of mite.h.

17 years agoGot rid of call to subdevice's buf_change callback which occurred after
Frank Mori Hess [Thu, 26 Apr 2007 14:58:03 +0000 (14:58 +0000)]
Got rid of call to subdevice's buf_change callback which occurred after
device was detached.  Small cleanup of duplicated code.

17 years agoAdded support for a cmd_cleanup() callback on subdevices, which
Frank Mori Hess [Thu, 26 Apr 2007 14:54:10 +0000 (14:54 +0000)]
Added support for a cmd_cleanup() callback on subdevices, which
is called when a command is finished.  Will be used to release
mite DMA channels when no longer in use.

17 years agoAdded spinlock to mite_struct for mite_alloc_channel() and
Frank Mori Hess [Thu, 19 Apr 2007 19:53:11 +0000 (19:53 +0000)]
Added spinlock to mite_struct for mite_alloc_channel() and
mite_free_channel().

17 years agoMade some changes to async buffer, to better accommodate output dma
Frank Mori Hess [Thu, 19 Apr 2007 19:41:27 +0000 (19:41 +0000)]
Made some changes to async buffer, to better accommodate output dma
(added read allocation).  Tweaked memory barrier usage for async buffer
to try and improve its correctness.  comedi_buf_munge() is now handled
entirely inside comedi_buf_write_free().  Added some helper functions
mite_sync_input_dma() and mite_sync_output_dma() for use in
driver interrupt handlers.  Added beginnings of support for NI general
purpose counter input commands.

17 years agoSilenced warning from gcc 4.1.2
Frank Mori Hess [Thu, 19 Apr 2007 19:23:33 +0000 (19:23 +0000)]
Silenced warning from gcc 4.1.2

17 years agoSilenced gcc 4.1.2 compile warning.
Frank Mori Hess [Thu, 19 Apr 2007 18:59:59 +0000 (18:59 +0000)]
Silenced gcc 4.1.2 compile warning.

17 years agoFixed for warning produced by automake 1.10
Frank Mori Hess [Thu, 19 Apr 2007 17:18:17 +0000 (17:18 +0000)]
Fixed for warning produced by automake 1.10

17 years agoignore errors from kernel's make modules in all-local, to
Frank Mori Hess [Thu, 19 Apr 2007 15:15:32 +0000 (15:15 +0000)]
ignore errors from kernel's make modules in all-local, to
avoid failure of make install
on nfs filesystem with root_squash

17 years agoFix from Navneet Kataria <nkataria@npcil.co.in> for the following
Frank Mori Hess [Sun, 18 Mar 2007 14:46:32 +0000 (14:46 +0000)]
Fix from Navneet Kataria <nkataria@npcil.co.in> for the following
problem:

... when I initialize
the device using comedi_config command, the device's 1st and 9th relay
automatically goes to energize state.

17 years agoAdded support for configuring dio direction on NI 660x boards through
Frank Mori Hess [Mon, 26 Feb 2007 17:23:49 +0000 (17:23 +0000)]
Added support for configuring dio direction on NI 660x boards through
subdevice 1.  Also added support for selecting digital input filter
with INSN_CONFIG_ALT_FILTER.

17 years agoBug fix from Edwin Steiner <edwin.steiner@gmx.net>:
Frank Mori Hess [Wed, 21 Feb 2007 03:23:27 +0000 (03:23 +0000)]
Bug fix from Edwin Steiner <edwin.steiner@gmx.net>:

The problem is that in ni_m_series_load_channelgain_list config_bits
is not reset to 0 in the loop over the channels.

17 years agoOnly check if parse_insn returns a negative value.
Frank Mori Hess [Mon, 5 Feb 2007 04:04:56 +0000 (04:04 +0000)]
Only check if parse_insn returns a negative value.

17 years agoCounters should start at subdevice 2, not 1 (was blowing away the
Frank Mori Hess [Thu, 1 Feb 2007 01:28:59 +0000 (01:28 +0000)]
Counters should start at subdevice 2, not 1 (was blowing away the
dio subdevice).

17 years agoNew driver from "Calin A. Culianu" <calin@ajvar.org>:
Frank Mori Hess [Wed, 31 Jan 2007 03:13:55 +0000 (03:13 +0000)]
New driver from "Calin A. Culianu" <calin@ajvar.org>:

This driver adds support for the Winsystems PCM-MIO PC/104
based multifunction board.  This board has 16 AI, 8 AO, and 48 DIO
channels.  The driver is almost complete -- it is just missing
asynchronous mode for AI and AO.  But synchronous mode works fine.  There
is even IRQ support for the DIO lines (edge-triggered interrupts).

17 years agoPatch from "Calin A. Culianu" <calin@ajvar.org>:
Frank Mori Hess [Wed, 24 Jan 2007 02:00:00 +0000 (02:00 +0000)]
Patch from "Calin A. Culianu" <calin@ajvar.org>:

A pet peeve of mine is that the two driver that I wrote, the pcmda12 and
pcmuio driver, format incorrectly when displayed on the comedi.org
"Supported Hardware" web page.  This is because they are incorrectly
formatted in the driver's "Devices:" line.  This patch fixes this so that
the Devices: line is now correctly formatted.

17 years agoPorted ni_660x.c to use counter support provided by ni_tio.c
Frank Mori Hess [Fri, 12 Jan 2007 19:55:19 +0000 (19:55 +0000)]
Ported ni_660x.c to use counter support provided by ni_tio.c

17 years agoFixed some breaks that were supposed to break out of switches. Fixed
Frank Mori Hess [Mon, 8 Jan 2007 21:42:20 +0000 (21:42 +0000)]
Fixed some breaks that were supposed to break out of switches.  Fixed
setting of first gate source when choosing NI_GPCT_GATE_PIN_GATE_SELECT().

17 years agoFixed NI_GPCT_CLOCK_SRC_SELECT_MASK to allow for PFI sources.
Frank Mori Hess [Mon, 8 Jan 2007 21:10:07 +0000 (21:10 +0000)]
Fixed NI_GPCT_CLOCK_SRC_SELECT_MASK to allow for PFI sources.

17 years agofixed read of G_Status_Register for m-series.
Frank Mori Hess [Mon, 8 Jan 2007 20:49:31 +0000 (20:49 +0000)]
fixed read of G_Status_Register for m-series.

17 years agoAsk board which load register will be used next, since it might have
Frank Mori Hess [Mon, 8 Jan 2007 15:09:37 +0000 (15:09 +0000)]
Ask board which load register will be used next, since it might have
changed since the last time it was set by the driver.

17 years agoFixed reading of counters' hardware and software save registers.
Frank Mori Hess [Fri, 5 Jan 2007 20:54:17 +0000 (20:54 +0000)]
Fixed reading of counters' hardware and software save registers.

17 years agoPorted ni_mio_common.c to use ni_tio.c for NI general-purpose counter
Frank Mori Hess [Fri, 5 Jan 2007 20:38:31 +0000 (20:38 +0000)]
Ported ni_mio_common.c to use ni_tio.c for NI general-purpose counter
support.  Have tested only counter in continuous pulse generation mode so
far (see comedilib/demo/gpct_pulse_generator.c which I will soon commit
to comedilib cvs).

17 years agoChanged value of NI_GPCT_DISABLED_GATE_SELECT so it plays nice with
Frank Mori Hess [Fri, 5 Jan 2007 20:35:52 +0000 (20:35 +0000)]
Changed value of NI_GPCT_DISABLED_GATE_SELECT so it plays nice with
CR_CHAN macro, which I used in ni_tio.c

17 years agoRenamed INSN_CONFIG_RESET_COUNT to more general INSN_CONFIG_RESET.
Frank Mori Hess [Fri, 5 Jan 2007 15:25:43 +0000 (15:25 +0000)]
Renamed INSN_CONFIG_RESET_COUNT to more general INSN_CONFIG_RESET.
Made setting of count on ni general-purpose counters leave the
values of the load a/b registers, and the load source select
undisturbed.

17 years agoAdded mode bit for selecting load a/b counter load sources on NI general-
Frank Mori Hess [Fri, 5 Jan 2007 14:19:39 +0000 (14:19 +0000)]
Added mode bit for selecting load a/b counter load sources on NI general-
purpose counters.  Renamed a couple members of the ni_gpct_arm_source
enum.  Added a few lines of documentation about some additional
INSN_CONFIG.

17 years agouse $(MAKE) instead of make. This fixes the use of the -jN option for
Frank Mori Hess [Fri, 29 Dec 2006 16:47:36 +0000 (16:47 +0000)]
use $(MAKE) instead of make.  This fixes the use of the -jN option for
parallel compilation.

18 years agoCalculate clock period taking into account prescaling.
Frank Mori Hess [Wed, 20 Dec 2006 20:51:02 +0000 (20:51 +0000)]
Calculate clock period taking into account prescaling.

18 years agoAdded declaration for ni_tio_init_counter()
Frank Mori Hess [Wed, 20 Dec 2006 18:18:30 +0000 (18:18 +0000)]
Added declaration for ni_tio_init_counter()

18 years agoAdded support for hardware arming of counters, and set
Frank Mori Hess [Tue, 19 Dec 2006 15:47:13 +0000 (15:47 +0000)]
Added support for hardware arming of counters, and set
Gi_Synchronize_Gate_Bit in command reg.

18 years agoAdded declaration of comedi_mark_buffer_written().
Frank Mori Hess [Tue, 19 Dec 2006 14:19:25 +0000 (14:19 +0000)]
Added declaration of comedi_mark_buffer_written().

18 years agoAdded missing export of comedi_mark_buffer_written symbol, as noted by
Frank Mori Hess [Tue, 19 Dec 2006 02:26:51 +0000 (02:26 +0000)]
Added missing export of comedi_mark_buffer_written symbol, as noted by
"Andreas Leuner" <al14@inf.tu-dresden.de>

18 years agodefines from comedi's config.h in the top-level comedi directory
Frank Mori Hess [Tue, 19 Dec 2006 02:20:58 +0000 (02:20 +0000)]
defines from comedi's config.h in the top-level comedi directory
are still used.

18 years agoAdded support for x2 prescaling on ni general-purpose counters.
Frank Mori Hess [Fri, 15 Dec 2006 20:54:27 +0000 (20:54 +0000)]
Added support for x2 prescaling on ni general-purpose counters.

18 years agoAdded INSN_CONFIG_RESET_COUNT
Frank Mori Hess [Fri, 15 Dec 2006 16:34:28 +0000 (16:34 +0000)]
Added INSN_CONFIG_RESET_COUNT

18 years agoAdded ni_tio_init_counter(), and exported some symbols.
Frank Mori Hess [Thu, 14 Dec 2006 21:08:45 +0000 (21:08 +0000)]
Added ni_tio_init_counter(), and exported some symbols.

18 years agoMade setting of gate sources more uniform across different hardware
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.

18 years agoFixed interrupt handler prototypes for all drivers when compiling
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.

18 years agoAdded PT_REGS_ARG macro to deal with change to interrupt handler
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.

18 years agoMade setting of counter clock source more uniform across e-series,
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.

18 years agoFirst pass at consistent support for NI general-purpose counters.
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.

18 years agoAdded additional field to INSN_CONFIG_SET/GET_GATE_SRC, to support
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).

18 years agoThe flag SDF_CMD_READ was missing which gave the error number "-1" during async reads.
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.

18 years agoAdded missing include of linux/version.h
Frank Mori Hess [Wed, 6 Dec 2006 13:58:50 +0000 (13:58 +0000)]
Added missing include of linux/version.h

18 years agoRemoved the boolean definition from the driver and moved it to stddef.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

18 years agoMoved the boolean definition from the driver files to stddef because
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.

18 years agoFrom 2.6.19 config.h is no longer needed. Added an ifdef statement.
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.

18 years agoAdded external trigger support to the driver.
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.

18 years agoFrom 2.6.19 the pointer to the completion function is (again) without the register...
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

18 years agoMinor update to documentation comments.
Frank Mori Hess [Wed, 29 Nov 2006 15:31:03 +0000 (15:31 +0000)]
Minor update to documentation comments.

18 years agoMite byte-swapping bits seem to be associated with device/memory
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.

18 years agoFixed possibile failures to decrement module use count on errors
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).

18 years agoDifferentiate between 622x, 625x, and 628x m-series boards. Fix adc reset
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).

18 years agoFigured out what a couple bits in the mite channel control register
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.

18 years agoDon't assume class_device has a devt member.
Frank Mori Hess [Fri, 17 Nov 2006 14:03:42 +0000 (14:03 +0000)]
Don't assume class_device has a devt member.

18 years agoChanged some ad8804 caldac types to ad8804_debug
Frank Mori Hess [Thu, 16 Nov 2006 02:10:35 +0000 (02:10 +0000)]
Changed some ad8804 caldac types to ad8804_debug

18 years agoAdded support for generating a seperate device file for each
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.

18 years agoReplaced deprecated use of check_region().
Ian Abbott [Mon, 13 Nov 2006 14:11:52 +0000 (14:11 +0000)]
Replaced deprecated use of check_region().

18 years agoFixed some C++-isms: mixed declarations and code.
Ian Abbott [Mon, 13 Nov 2006 14:06:57 +0000 (14:06 +0000)]
Fixed some C++-isms: mixed declarations and code.