comedi.git
13 years agoconfigure: Recognize kernel 3.x
Ian Abbott [Thu, 2 Jun 2011 13:47:01 +0000 (14:47 +0100)]
configure: Recognize kernel 3.x

Support Linus's alpha-maleness kernel version numbering change.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoaddi-data: Get rid of redundant ps_BoardInfo
Ian Abbott [Mon, 16 May 2011 15:06:32 +0000 (16:06 +0100)]
addi-data: Get rid of redundant ps_BoardInfo

The ps_BoardInfo pointer in the device private data is redundant as we
can just use the this_board macro to access the same data, as is done
elsewhere in the code.  Get rid of the pointer and change the code to
use the this_board macro instead.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoaddi_data: Don't overwrite read-only data
Ian Abbott [Mon, 16 May 2011 14:57:24 +0000 (15:57 +0100)]
addi_data: Don't overwrite read-only data

The drivers for ADDI-DATA cards can override some static parameters for
the board type using information read from EEPROM.  Unfortunately, they
currently write the parameters from the EEPROM back to the shared,
read-only board data!  The problem has been masked during compilation by
type-casting away the const-ness of the data.

This patch changes the code to use an area in the private data for the
board instance to hold the parameters read from EEPROM (after
initializing the parameters from the static board data).  It also
changes the type-casts to the read-only data to preserve the const
qualifier.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoAUTHORS: Added Ivan Russkih (Иван Русских).
Ian Abbott [Mon, 16 May 2011 09:53:21 +0000 (10:53 +0100)]
AUTHORS: Added Ivan Russkih (Иван Русских).

Added for patch to adv_pci_dio to support counter subdevice on PCI-1751.

13 years agoadv_pci_dio: Add 8254 counter subdevice to PCI-1751
Ian Abbott [Mon, 16 May 2011 09:31:42 +0000 (10:31 +0100)]
adv_pci_dio: Add 8254 counter subdevice to PCI-1751

The Advantech PCI-1751 has a 8254 counter chip providing 3 counter
channels.  Add a counter subdevice for this card.

Patch from Иван Русских (vanekrus at gmail dot com).

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agocomedi: Removal of <linux/smp_lock.h>
Ian Abbott [Fri, 13 May 2011 13:55:19 +0000 (14:55 +0100)]
comedi: Removal of <linux/smp_lock.h>

The <linux/smp_lock.h> header (used for the Big Kernel Lock) is removed
in kernel 2.6.39.  It was included by:

  comedi/comedi_compat32.c
  comedi/drivers/usbdux.c
  comedi/drivers/usbduxfast.c

The usbdux and usbduxfast drivers shouldn't need to include the header
as they don't grab the BKL, so remove the #include line for these
drivers.

The comedi_compat32 code only uses it when calling the ioctl file
operation, and that can only happen for kernels up to 2.6.35 (and even
then it wouldn't be called if the unlocked_ioctl file operation is
available!). Ifdef out the #include line.  Also include
<linux/version.h> explicitly to avoid compiler errors for 2.6.39 kernel.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoconfigure.ac: Change reference to CVS to Git.
Ian Abbott [Tue, 10 May 2011 13:26:31 +0000 (14:26 +0100)]
configure.ac: Change reference to CVS to Git.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoINSTALL: Changed reference to cvs to git.
Ian Abbott [Tue, 10 May 2011 13:18:16 +0000 (14:18 +0100)]
INSTALL: Changed reference to cvs to git.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years ago.gitignore: Ignore the file 'missing'.
Ian Abbott [Tue, 10 May 2011 13:14:14 +0000 (14:14 +0100)]
.gitignore: Ignore the file 'missing'.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoRemove references to .cvsignore from .gitignore files.
Ian Abbott [Tue, 10 May 2011 13:13:05 +0000 (14:13 +0100)]
Remove references to .cvsignore from .gitignore files.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoRename the .cvsignore files to .gitignore
Ian Abbott [Tue, 10 May 2011 13:08:53 +0000 (14:08 +0100)]
Rename the .cvsignore files to .gitignore

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoREADME: Updated mailing list details.
Ian Abbott [Tue, 10 May 2011 12:51:35 +0000 (13:51 +0100)]
README: Updated mailing list details.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoREADME: Removed reference to non-existant comedi FTP site.
Ian Abbott [Tue, 10 May 2011 11:47:01 +0000 (12:47 +0100)]
README: Removed reference to non-existant comedi FTP site.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoREADME: Changed CVS references to Git.
Ian Abbott [Tue, 10 May 2011 11:43:50 +0000 (12:43 +0100)]
README: Changed CVS references to Git.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoREADME.CVS: Renamed to README.Git and edited slightly
Ian Abbott [Tue, 10 May 2011 11:33:37 +0000 (12:33 +0100)]
README.CVS: Renamed to README.Git and edited slightly

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoAdd #include <linux/version.h> to include/asm/uaccess.h
Ian Abbott [Thu, 3 Mar 2011 15:47:44 +0000 (15:47 +0000)]
Add #include <linux/version.h> to include/asm/uaccess.h

The include/asm/uaccess.h compatibility header uses LINUX_VERSION_CODE
and KERNEL_VERSION, but doesn't #include <linux/version.h> to define
those macros.  This caused a build failure for at least one person.

Perhaps we should just remove the file though, as it's only needed for
really ancient kernels (before 2.2.0) that we no longer support.

Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
13 years agoni_labpc: Use shared IRQ for PCMCIA card.
Ian Abbott [Wed, 19 Jan 2011 10:54:39 +0000 (10:54 +0000)]
ni_labpc: Use shared IRQ for PCMCIA card.

13 years agoMost drivers ignore the base channel in insn->chanspec for INSN_BITS
Ian Abbott [Tue, 18 Jan 2011 16:26:27 +0000 (16:26 +0000)]
Most drivers ignore the base channel in insn->chanspec for INSN_BITS
instructions.  If the subdevice has no more than 32 channels, and the
base channel is non-zero, modify the instruction chanspec and data before
passing it to the driver with base channel set to 0, and modify the
returned data.

13 years agopcmmio: Avoid compiler warning about uninitialized irq[1] which is out of
Ian Abbott [Thu, 13 Jan 2011 12:07:33 +0000 (12:07 +0000)]
pcmmio: Avoid compiler warning about uninitialized irq[1] which is out of
bounds of irq[] anyway (as MAX_ASICS = 1).

14 years agoAdded Brice DUBOST for cb_pcidas contributions (edge and inverted level
Ian Abbott [Mon, 22 Nov 2010 10:28:01 +0000 (10:28 +0000)]
Added Brice DUBOST for cb_pcidas contributions (edge and inverted level
external triggering for start argument of AI command on PCI-DAS1602 series).

14 years agocb_pcidas: Applied patch from Brice DUBOST to support CR_EDGE and CR_INVERT
Ian Abbott [Mon, 22 Nov 2010 10:23:56 +0000 (10:23 +0000)]
cb_pcidas: Applied patch from Brice DUBOST to support CR_EDGE and CR_INVERT
start_arg flags for AI commands on PCI_DAS1602 series.

14 years agoFix memory leak spotted by Nicolas Kaiser in the staging sources.
Ian Abbott [Mon, 15 Nov 2010 10:25:43 +0000 (10:25 +0000)]
Fix memory leak spotted by Nicolas Kaiser in the staging sources.

14 years agoni_mio_cs: I broke support for 2.6.35 when adding support for 2.6.36 due
Ian Abbott [Tue, 9 Nov 2010 12:28:29 +0000 (12:28 +0000)]
ni_mio_cs: I broke support for 2.6.35 when adding support for 2.6.36 due
to using a wrong #ifdef in mio_cs_config().  Sorry!  This fixes it.

14 years agoMore ugly PCMCIA changes for 2.6.37 kernel.
Ian Abbott [Mon, 8 Nov 2010 15:15:05 +0000 (15:15 +0000)]
More ugly PCMCIA changes for 2.6.37 kernel.

14 years agoPCMCIA support broke again with 2.6.36(-rc) kernel, so add more uqly hacks.
Ian Abbott [Fri, 8 Oct 2010 14:32:24 +0000 (14:32 +0000)]
PCMCIA support broke again with 2.6.36(-rc) kernel, so add more uqly hacks.

14 years agoserial2002: old 'ioctl' file operation removed in 2.6.36.
Ian Abbott [Fri, 8 Oct 2010 14:30:02 +0000 (14:30 +0000)]
serial2002: old 'ioctl' file operation removed in 2.6.36.

14 years agocomedi_compat32: old 'ioctl' file operation removed in 2.6.36.
Ian Abbott [Fri, 8 Oct 2010 11:10:02 +0000 (11:10 +0000)]
comedi_compat32: old 'ioctl' file operation removed in 2.6.36.

14 years agoI messed up the #ifdefs on the previous commit. Sorry!
Ian Abbott [Fri, 8 Oct 2010 09:59:20 +0000 (09:59 +0000)]
I messed up the #ifdefs on the previous commit.  Sorry!

14 years agoquatech_daqp_cs: Replace eos semaphore with a completion. Build tested only.
Ian Abbott [Thu, 30 Sep 2010 16:31:27 +0000 (16:31 +0000)]
quatech_daqp_cs: Replace eos semaphore with a completion.  Build tested only.

Note: the wait_for_completion_interruptible() function needs 2.6.11 kernel
or above, but I'm pretty sure this driver (and other PCMCIA drivers) is
currently broken for those kernels anyway, so I'm not bothering to implement
the function in compatibility headers just yet.

14 years agoPCMCIA support broke again with 2.6.35 kernel, so add yet more ugly hacks.
Ian Abbott [Thu, 30 Sep 2010 15:59:41 +0000 (15:59 +0000)]
PCMCIA support broke again with 2.6.35 kernel, so add yet more ugly hacks.

14 years agodt9812, usbdux, usbduxfast: Use mutex instead of semaphore.
Ian Abbott [Mon, 26 Jul 2010 11:47:08 +0000 (11:47 +0000)]
dt9812, usbdux, usbduxfast: Use mutex instead of semaphore.

14 years agoAdd #include <linux/semaphore.h>.
Ian Abbott [Mon, 26 Jul 2010 11:16:30 +0000 (11:16 +0000)]
Add #include <linux/semaphore.h>.
TODO: Migrate to use mutex instead, but note that it currently initializes
the semaphore in the 'locked' state.

14 years agoCompatibility header for <linux/semaphore.h>. Just includes the proper
Ian Abbott [Mon, 26 Jul 2010 11:14:07 +0000 (11:14 +0000)]
Compatibility header for <linux/semaphore.h>.  Just includes the proper
<linux/semaphore.h> if CONFIG_COMEDI_HAVE_LINUX_SEMAPHORE_H is defined,
otherwise it includes <asm/semaphore.h> instead.

14 years agoAdd check for existance of <linux/semaphore.h> header and define the
Ian Abbott [Mon, 26 Jul 2010 11:12:19 +0000 (11:12 +0000)]
Add check for existance of <linux/semaphore.h> header and define the
CONFIG_COMEDI_HAVE_LINUX_SEMAPHORE_H macro in config.h if present. Note
<linux/semaphore.h> was added in kernel version 2.6.26, replacing
<asm/semaphore.h>.  We need a compatibility header for it.

14 years agoAdd a dkms.conf file for building comedi with DKMS
Ian Abbott [Wed, 23 Jun 2010 15:12:40 +0000 (15:12 +0000)]
Add a dkms.conf file for building comedi with DKMS
(Dynamic Kernel Module Support).

14 years agoPCMCIA support broke with the 2.6.33 kernel, so add support back in.
Ian Abbott [Tue, 22 Jun 2010 16:12:24 +0000 (16:12 +0000)]
PCMCIA support broke with the 2.6.33 kernel, so add support back in.
I don't know if it works, but at least it should compile!
The driver source code changes are very inelegant.

Note that the IRQ attributes have been changed from IRQ_TYPE_EXCLUSIVE to
IRQ_TYPE_DYNAMIC_SHARING.

14 years agoadl_pci9111: bug fix for AI commands when scan_begin_src is TRIG_FOLLOW.
Ian Abbott [Fri, 18 Jun 2010 10:00:26 +0000 (10:00 +0000)]
adl_pci9111: bug fix for AI commands when scan_begin_src is TRIG_FOLLOW.
The dev_private->scan_delay should have been left set to 0 in this case,
but it ended up being set to (unsigned int)-1.

14 years agoChange example Driver: comment block slightly to avoid it being matched by
Ian Abbott [Mon, 14 Jun 2010 10:42:02 +0000 (10:42 +0000)]
Change example Driver: comment block slightly to avoid it being matched by
updated 'dump_doc' script.

14 years agoAllow "*" (optionally surrounded by a space on each side) to precede
Ian Abbott [Mon, 14 Jun 2010 10:34:38 +0000 (10:34 +0000)]
Allow "*" (optionally surrounded by a space on each side) to precede
"Driver:" and strip this from all the lines in the comment block.

14 years agoCheck for RTAI include directory "${RTAI_DIR}/include/rtai" before checking
Ian Abbott [Wed, 26 May 2010 11:17:33 +0000 (11:17 +0000)]
Check for RTAI include directory "${RTAI_DIR}/include/rtai" before checking
for "${RTAI_DIR}/include".  This is because Debian uses --with-rtaidir=/usr
but puts the RTAI include files in /usr/include/rtai.

14 years agoFix previous commit. For COMEDI_BUFINFO, if command not active, report back
Ian Abbott [Wed, 19 May 2010 16:49:49 +0000 (16:49 +0000)]
Fix previous commit.  For COMEDI_BUFINFO, if command not active, report back
the last buffer position instead of random junk.

14 years agoadv_pci_dio: Forgot to update the 'Updated:' line when the driver
Ian Abbott [Wed, 19 May 2010 14:40:46 +0000 (14:40 +0000)]
adv_pci_dio: Forgot to update the 'Updated:' line when the driver
description was changed in Revision 1.26.

14 years agoadv_pci_dio: Protect access to counter subdevice with a spin lock.
Ian Abbott [Wed, 19 May 2010 14:31:19 +0000 (14:31 +0000)]
adv_pci_dio: Protect access to counter subdevice with a spin lock.

14 years agoserial2002: Fix memory leak on 'detach' (off-by-one error in subdevice loop).
Ian Abbott [Tue, 18 May 2010 16:28:07 +0000 (16:28 +0000)]
serial2002: Fix memory leak on 'detach' (off-by-one error in subdevice loop).

14 years agoFor COMEDI_BUFINFO ioctl, check for locked or busy subdevice.
Ian Abbott [Mon, 17 May 2010 12:18:35 +0000 (12:18 +0000)]
For COMEDI_BUFINFO ioctl, check for locked or busy subdevice.

14 years agoFor COMEDI_BUFINFO ioctl, if subdevice has no async capability, set
Ian Abbott [Mon, 17 May 2010 11:26:07 +0000 (11:26 +0000)]
For COMEDI_BUFINFO ioctl, if subdevice has no async capability, set
bytes_read and bytes_written to 0 in returned structure.

14 years agoFor write(), don't bother writing data to buffer if command already
Ian Abbott [Fri, 14 May 2010 15:29:11 +0000 (15:29 +0000)]
For write(), don't bother writing data to buffer if command already
finished, as the data won't be used anyway.  This allows user code to
see the command has finished before it has refilled the buffer completely.

14 years agoSupport Advantech PCI-1735, including 8254-based counter subdevice (the
Ian Abbott [Tue, 4 May 2010 13:58:49 +0000 (13:58 +0000)]
Support Advantech PCI-1735, including 8254-based counter subdevice (the
counter subdevice might not be working though).

14 years agoSome changes to make new driver pass kernel's anal formatting checks
Frank Mori Hess [Mon, 12 Apr 2010 18:07:09 +0000 (18:07 +0000)]
Some changes to make new driver pass kernel's anal formatting checks
in checkpatch.pl.

14 years agoAdded Adlink PCI-7230 driver from David Fernandez.
Frank Mori Hess [Mon, 12 Apr 2010 17:37:51 +0000 (17:37 +0000)]
Added Adlink PCI-7230 driver from David Fernandez.

14 years agoaddi_common: Just use the driver name in the call to comedi_request_irq()
Ian Abbott [Wed, 24 Mar 2010 17:04:59 +0000 (17:04 +0000)]
addi_common: Just use the driver name in the call to comedi_request_irq()
instead of a static char buffer that gets overwritten.

14 years agoamplc_dio200: Protect access to counter subdevices with a spin lock.
Ian Abbott [Wed, 24 Mar 2010 16:34:46 +0000 (16:34 +0000)]
amplc_dio200: Protect access to counter subdevices with a spin lock.

14 years agoserial2002: Slight change to previous commit. If failed to allocate
Ian Abbott [Wed, 24 Mar 2010 12:54:35 +0000 (12:54 +0000)]
serial2002: Slight change to previous commit.  If failed to allocate
maxdata_list or range_table_list for a subdevice during the 'open' method,
free these for all subdevices as they may be left over from a previous
open.

14 years agoserial2002: In serial_2002_open(), handle failure to allocate maxdata_list
Ian Abbott [Wed, 24 Mar 2010 12:45:23 +0000 (12:45 +0000)]
serial2002: In serial_2002_open(), handle failure to allocate maxdata_list
or range_table_list for a subdevice.

14 years agoserial2002: Reduce stack usage in serial_2002_open() by allocating
Ian Abbott [Wed, 24 Mar 2010 12:19:30 +0000 (12:19 +0000)]
serial2002: Reduce stack usage in serial_2002_open() by allocating
dig_in_config, dig_out_config, chan_in_config and chan_out_config arrays
using kcalloc().

14 years agoThe 'open' method in struct comedi_device_struct now returns 0 on success
Ian Abbott [Wed, 24 Mar 2010 11:53:09 +0000 (11:53 +0000)]
The 'open' method in struct comedi_device_struct now returns 0 on success
and a negative errno on failure.  The 'open' method must clean up after
itself on failure as the 'close' method won't be called.  A failure causes
the 'open' file operation for the comedi device to fail.

The dt9812 and serial2002 drivers now make use of the ability to return
an error.

14 years agoGive the different addi_apci_* drivers different comedi driver names.
Ian Abbott [Thu, 18 Mar 2010 15:39:58 +0000 (15:39 +0000)]
Give the different addi_apci_* drivers different comedi driver names.

14 years agoPrototype of request_firmware_nowait() changed in 2.6.33.
Ian Abbott [Mon, 15 Mar 2010 17:02:46 +0000 (17:02 +0000)]
Prototype of request_firmware_nowait() changed in 2.6.33.
Use new prototype and add compatibility code for earlier kernels.

14 years agoIncreased timeout for digital output dma loading, due to report of it
Frank Mori Hess [Mon, 22 Feb 2010 14:23:25 +0000 (14:23 +0000)]
Increased timeout for digital output dma loading, due to report of it
being too short for some hardware.

14 years agopcl818: No need to check chanlist_len for AI command test.
Ian Abbott [Wed, 20 Jan 2010 12:33:02 +0000 (12:33 +0000)]
pcl818: No need to check chanlist_len for AI command test.

14 years agopcl816: No need to check chanlist_len for AI command test.
Ian Abbott [Wed, 20 Jan 2010 12:17:37 +0000 (12:17 +0000)]
pcl816: No need to check chanlist_len for AI command test.

14 years agopcl812: Don't need to set cur_chan twice at end of scan.
Ian Abbott [Wed, 20 Jan 2010 12:04:26 +0000 (12:04 +0000)]
pcl812: Don't need to set cur_chan twice at end of scan.

14 years agopcl812: No need to check chanlist_len for AI command test.
Ian Abbott [Wed, 20 Jan 2010 11:57:34 +0000 (11:57 +0000)]
pcl812: No need to check chanlist_len for AI command test.

14 years agopcl812: Untested bug fix for multi-channel AI commands. Update MUX on
Ian Abbott [Wed, 20 Jan 2010 11:52:49 +0000 (11:52 +0000)]
pcl812: Untested bug fix for multi-channel AI commands.  Update MUX on
AI interrupt.

14 years agoadv_pci1710: Don't need to check chanlist_len in pci171x_ai_cmdtest().
Ian Abbott [Mon, 18 Jan 2010 19:38:39 +0000 (19:38 +0000)]
adv_pci1710: Don't need to check chanlist_len in pci171x_ai_cmdtest().

14 years agoadv_pci1710: Bug fixes: For AI commands, keep track of current channel when
Ian Abbott [Mon, 18 Jan 2010 19:23:46 +0000 (19:23 +0000)]
adv_pci1710: Bug fixes: For AI commands, keep track of current channel when
moving block of data from FIFO.  Setting up of internal channel list should
fill in the whole list, not just the first repeated segment.

14 years agopcl816: Check the channel list in step 5 of AI command test.
Ian Abbott [Mon, 18 Jan 2010 17:14:07 +0000 (17:14 +0000)]
pcl816: Check the channel list in step 5 of AI command test.

14 years agopcl818: bug fixes: For AI commands, the scan counter was being updated
Ian Abbott [Mon, 18 Jan 2010 16:46:11 +0000 (16:46 +0000)]
pcl818: bug fixes: For AI commands, the scan counter was being updated
after every sample, except for DMA mode where is was being updated after
each repeated segment of the channel list.  Keep track of current sample
and update the scan counter at the end of each scan.  Also, AI commands
with multiple channels were being terminated with an error incorrectly in
non-DMA mode.  This was because the current position within a repeated
segment of the channel list was not being updated, causing it to think
there was a "channel dropout" when comparing the assumed current channel
with the channel number read from the FIFO.

14 years agopcl816: bug fix: AI scan counter was being updated after every channel in
Ian Abbott [Mon, 18 Jan 2010 16:25:33 +0000 (16:25 +0000)]
pcl816: bug fix: AI scan counter was being updated after every channel in
non-DMA mode, or after every repeated segment of the channel list in DMA
mode.  Keep track of the current channel for each sample and update the
scan counter at the end of the scan.

14 years agopcl812: bug fix: scan counter was being incremented after every sample.
Ian Abbott [Mon, 18 Jan 2010 16:20:08 +0000 (16:20 +0000)]
pcl812: bug fix: scan counter was being incremented after every sample.
Keep track of current channel and update scan counter at end of scan.

14 years agopcmmio: reorder check for second irq in pcmmio_attach() to avoid reading
Ian Abbott [Mon, 4 Jan 2010 11:39:28 +0000 (11:39 +0000)]
pcmmio: reorder check for second irq in pcmmio_attach() to avoid reading
past end of array.
(Staging patch from Dan Carpenter.)

14 years agocomedi_bond: fix off by one in doDevConfig().
Ian Abbott [Mon, 4 Jan 2010 11:22:14 +0000 (11:22 +0000)]
comedi_bond: fix off by one in doDevConfig().
(Staging patch from Dan Carpenter.)

15 years agoremoved "deprecated" from the define COMEDI_CB_BLOCK and added
Bernd Porr [Thu, 26 Nov 2009 20:18:59 +0000 (20:18 +0000)]
removed "deprecated" from the define COMEDI_CB_BLOCK and added
a comment so that other know that this flag has to be set whenever
fresh data has arrived from an A/D or has been written to a D/A.

15 years agoJan-Matthias Braun spotted the problem that once the ring buffer
Bernd Porr [Thu, 26 Nov 2009 20:10:14 +0000 (20:10 +0000)]
Jan-Matthias Braun spotted the problem that once the ring buffer
of comedi has run empty the next read command would block forever
even after new data has arrived. Thanks for Jan-Matthias and Ian
who fixed the bug.

15 years agojr3-pci: Only ioremap register space for actual number of channels on the
Ian Abbott [Thu, 26 Nov 2009 14:59:46 +0000 (14:59 +0000)]
jr3-pci: Only ioremap register space for actual number of channels on the
card.  Also, check result of ioremap() for failure.

Thanks to Anders Blomdell for input and Sami Hussein for testing.

15 years agoadv_pci1710: Also initialize divisor1 and divisor2 in pci171x_ai_cmdtest().
Ian Abbott [Thu, 19 Nov 2009 18:37:30 +0000 (18:37 +0000)]
adv_pci1710: Also initialize divisor1 and divisor2 in pci171x_ai_cmdtest().

15 years agopcl818: In ai_cmd_test(), pcl818_ai_cmd_mode(), and pcl818_ao_mode13(),
Ian Abbott [Thu, 19 Nov 2009 11:43:52 +0000 (11:43 +0000)]
pcl818: In ai_cmd_test(), pcl818_ai_cmd_mode(), and pcl818_ao_mode13(),
initialize divisor1 and divisor2 values passed by reference to
i8153_cascade_ns_to_timer().

15 years agopcl816: In pcl816_ai_cmdtest(), initialize divisor1 and divisor2 values
Ian Abbott [Thu, 19 Nov 2009 11:39:10 +0000 (11:39 +0000)]
pcl816: In pcl816_ai_cmdtest(), initialize divisor1 and divisor2 values
passed by reference to i8253_cascase_ns_to_timer().

15 years agocb_das16_cs: In das16cs_ai_cmdtest(), initialize div1 and div2 values
Ian Abbott [Thu, 19 Nov 2009 11:35:13 +0000 (11:35 +0000)]
cb_das16_cs: In das16cs_ai_cmdtest(), initialize div1 and div2 values
passed by reference to i8253_cascade_ns_to_timer() (two instances).

15 years agoadv_pci1710: In pci171x_ai_docmd_and_mode(), initialize divisor1 and
Ian Abbott [Thu, 19 Nov 2009 11:32:37 +0000 (11:32 +0000)]
adv_pci1710: In pci171x_ai_docmd_and_mode(), initialize divisor1 and
divisor2 values passed by reference to i8253_cascase_ns_to_timer().

15 years agoadl_pci9118: In pci9118_ai_cmdtest(), initialize divisor1 and divisor2
Ian Abbott [Thu, 19 Nov 2009 11:30:05 +0000 (11:30 +0000)]
adl_pci9118: In pci9118_ai_cmdtest(), initialize divisor1 and divisor2
values, passed by reference to i8253_cascade_ns_to_timer().

15 years agopcl816: In pcl816_ai_cmdtest(), correct step 1 test for valid convert_src
Ian Abbott [Thu, 19 Nov 2009 11:21:51 +0000 (11:21 +0000)]
pcl816: In pcl816_ai_cmdtest(), correct step 1 test for valid convert_src
(operator precedence error).

15 years agopcl711: In pcl711_ai_cmd(), fix uninitialized variables timer1 and timer2.
Ian Abbott [Thu, 19 Nov 2009 11:10:08 +0000 (11:10 +0000)]
pcl711: In pcl711_ai_cmd(), fix uninitialized variables timer1 and timer2.
Values are passed by reference to i8253_cascade_ns_to_timer().

15 years agoserial2002: In serial_2002_open(), reduce size of config_t by 4 bytes.
Ian Abbott [Thu, 19 Nov 2009 11:05:09 +0000 (11:05 +0000)]
serial2002: In serial_2002_open(), reduce size of config_t by 4 bytes.
This reduces stack usage by 512 bytes.

15 years agome4000: In xilinx_download(), correct test for /INIT pin being set during
Ian Abbott [Thu, 19 Nov 2009 10:59:13 +0000 (10:59 +0000)]
me4000: In xilinx_download(), correct test for /INIT pin being set during
initialization.  Parentheses were missing.

15 years agoI've set all timeout values to 1000ms. Some bulk transfers used 30ms
Bernd Porr [Tue, 17 Nov 2009 23:18:49 +0000 (23:18 +0000)]
I've set all timeout values to 1000ms. Some bulk transfers used 30ms
as a timeout which should be OK but it's just a bit short. Nothing
detrimental.

15 years agoFixed an issue with jiffies vs miliseconds for the timeout value
Bernd Porr [Tue, 17 Nov 2009 23:09:47 +0000 (23:09 +0000)]
Fixed an issue with jiffies vs miliseconds for the timeout value
of bulk transfers. From 2.6.12 the timing information is miliseconds
and not jiffies. However in the driver there was a mix of constants
referring to jiffies and miliseconds. I've fixed it and introduced
the constant BULK_TIMEOUT in miliseconds for all transfers.

15 years ago[Following Linus's linux-2.6 tree...]
Ian Abbott [Mon, 19 Oct 2009 09:34:54 +0000 (09:34 +0000)]
[Following Linus's linux-2.6 tree...]

commit d43c36dc removed sched.h from interrupt.h.  This broke some of
the comedi drivers.  This patch fixes this.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years ago[Following Linus's linux-2.6 tree...]
Ian Abbott [Mon, 19 Oct 2009 09:33:01 +0000 (09:33 +0000)]
[Following Linus's linux-2.6 tree...]

Now that sched.h was removed from poll.h, serial2002.c needs
to include it otherwise it does not build properly.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
15 years agoAdded device id for pxi-6225 to ni_pci_table.
Frank Mori Hess [Mon, 21 Sep 2009 20:09:52 +0000 (20:09 +0000)]
Added device id for pxi-6225 to ni_pci_table.

15 years agoAdded device id for pxi-6225.
Frank Mori Hess [Mon, 17 Aug 2009 16:07:53 +0000 (16:07 +0000)]
Added device id for pxi-6225.

15 years agoWhen reading DO subdevice with inverted outputs invert the values read back
Ian Abbott [Wed, 12 Aug 2009 16:04:43 +0000 (16:04 +0000)]
When reading DO subdevice with inverted outputs invert the values read back
from the ports to match the inversion of values written.

15 years agoFix insn_bits bitshift calculation for subdevice with non-zero base_port.
Ian Abbott [Wed, 12 Aug 2009 15:56:14 +0000 (15:56 +0000)]
Fix insn_bits bitshift calculation for subdevice with non-zero base_port.
Thanks to Jérôme Carretero (cJ-comedi at zougloub dot eu) for spotting the
bug.

15 years agoTake account of arch's bitfield order.
Ian Abbott [Fri, 7 Aug 2009 14:57:47 +0000 (14:57 +0000)]
Take account of arch's bitfield order.

15 years agoGet rid of global variable 'cmReg'.
Ian Abbott [Fri, 7 Aug 2009 14:40:20 +0000 (14:40 +0000)]
Get rid of global variable 'cmReg'.

15 years agoSome changes and corrections to handling of
Ian Abbott [Fri, 7 Aug 2009 14:33:55 +0000 (14:33 +0000)]
Some changes and corrections to handling of
INSN_CONFIG_GPCT_QUADRATURE_ENCODER, INSN_CONFIG_GPCT_SINGLE_PULSE_GENERATOR,
and INSN_CONFIG_GPCT_PULSE_TRAIN_GENERATOR, so they interpret insn->data[]
as per the comments in the code.

15 years agoCorrect number of channels on DIO subdevice. Correct operation of
Ian Abbott [Fri, 7 Aug 2009 14:00:01 +0000 (14:00 +0000)]
Correct number of channels on DIO subdevice.  Correct operation of
INSN_CONFIG_DIO_INPUT and INSN_CONFIG_DIO_OUTPUT and support
INSN_CONFIG_DIO_QUERY.
Thanks to Alessio Margan for some testing.

15 years agoStore PCI device IDs in the board info and use this for matching IDs in the
Ian Abbott [Fri, 7 Aug 2009 13:08:59 +0000 (13:08 +0000)]
Store PCI device IDs in the board info and use this for matching IDs in the
code instead of using the module device table.
This avoids a "section mismatch" error.

15 years agoNeeded some more M4 quoting in AS_LINUX_SRC_DIR().
Ian Abbott [Fri, 7 Aug 2009 12:50:47 +0000 (12:50 +0000)]
Needed some more M4 quoting in AS_LINUX_SRC_DIR().

15 years agos626: Match PCI subvendor and subdevice IDs to avoid conflict with other
Ian Abbott [Fri, 19 Jun 2009 10:50:50 +0000 (10:50 +0000)]
s626: Match PCI subvendor and subdevice IDs to avoid conflict with other
cards using Philips SAA7146A PCI multimedia bridge chip.