staging: comedi: ni_pcimio: fix block comments
Fix the checkpatch.pl issues: WARNING: Block comments use * on subsequent lines Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Reviewed-by: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
15203e5a79
Коммит
8b1bb11d63
|
@ -1,111 +1,106 @@
|
||||||
/*
|
/*
|
||||||
comedi/drivers/ni_pcimio.c
|
* Comedi driver for NI PCI-MIO E series cards
|
||||||
Hardware driver for NI PCI-MIO E series cards
|
*
|
||||||
|
* COMEDI - Linux Control and Measurement Device Interface
|
||||||
|
* Copyright (C) 1997-8 David A. Schleef <ds@schleef.org>
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
COMEDI - Linux Control and Measurement Device Interface
|
|
||||||
Copyright (C) 1997-8 David A. Schleef <ds@schleef.org>
|
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
|
||||||
it under the terms of the GNU General Public License as published by
|
|
||||||
the Free Software Foundation; either version 2 of the License, or
|
|
||||||
(at your option) any later version.
|
|
||||||
|
|
||||||
This program is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
GNU General Public License for more details.
|
|
||||||
*/
|
|
||||||
/*
|
/*
|
||||||
Driver: ni_pcimio
|
* Driver: ni_pcimio
|
||||||
Description: National Instruments PCI-MIO-E series and M series (all boards)
|
* Description: National Instruments PCI-MIO-E series and M series (all boards)
|
||||||
Author: ds, John Hallen, Frank Mori Hess, Rolf Mueller, Herbert Peremans,
|
* Author: ds, John Hallen, Frank Mori Hess, Rolf Mueller, Herbert Peremans,
|
||||||
Herman Bruyninckx, Terry Barnaby
|
* Herman Bruyninckx, Terry Barnaby
|
||||||
Status: works
|
* Status: works
|
||||||
Devices: [National Instruments] PCI-MIO-16XE-50 (ni_pcimio),
|
* Devices: [National Instruments] PCI-MIO-16XE-50 (ni_pcimio),
|
||||||
PCI-MIO-16XE-10, PXI-6030E, PCI-MIO-16E-1, PCI-MIO-16E-4, PCI-6014, PCI-6040E,
|
* PCI-MIO-16XE-10, PXI-6030E, PCI-MIO-16E-1, PCI-MIO-16E-4, PCI-6014,
|
||||||
PXI-6040E, PCI-6030E, PCI-6031E, PCI-6032E, PCI-6033E, PCI-6071E, PCI-6023E,
|
* PCI-6040E, PXI-6040E, PCI-6030E, PCI-6031E, PCI-6032E, PCI-6033E,
|
||||||
PCI-6024E, PCI-6025E, PXI-6025E, PCI-6034E, PCI-6035E, PCI-6052E,
|
* PCI-6071E, PCI-6023E, PCI-6024E, PCI-6025E, PXI-6025E, PCI-6034E,
|
||||||
PCI-6110, PCI-6111, PCI-6220, PCI-6221, PCI-6224, PXI-6224,
|
* PCI-6035E, PCI-6052E,
|
||||||
PCI-6225, PXI-6225, PCI-6229, PCI-6250,
|
* PCI-6110, PCI-6111, PCI-6220, PCI-6221, PCI-6224, PXI-6224,
|
||||||
PCI-6251, PXI-6251, PCIe-6251, PXIe-6251,
|
* PCI-6225, PXI-6225, PCI-6229, PCI-6250,
|
||||||
PCI-6254, PCI-6259, PCIe-6259,
|
* PCI-6251, PXI-6251, PCIe-6251, PXIe-6251,
|
||||||
PCI-6280, PCI-6281, PXI-6281, PCI-6284, PCI-6289,
|
* PCI-6254, PCI-6259, PCIe-6259,
|
||||||
PCI-6711, PXI-6711, PCI-6713, PXI-6713,
|
* PCI-6280, PCI-6281, PXI-6281, PCI-6284, PCI-6289,
|
||||||
PXI-6071E, PCI-6070E, PXI-6070E,
|
* PCI-6711, PXI-6711, PCI-6713, PXI-6713,
|
||||||
PXI-6052E, PCI-6036E, PCI-6731, PCI-6733, PXI-6733,
|
* PXI-6071E, PCI-6070E, PXI-6070E,
|
||||||
PCI-6143, PXI-6143
|
* PXI-6052E, PCI-6036E, PCI-6731, PCI-6733, PXI-6733,
|
||||||
Updated: Mon, 09 Jan 2012 14:52:48 +0000
|
* PCI-6143, PXI-6143
|
||||||
|
* Updated: Mon, 09 Jan 2012 14:52:48 +0000
|
||||||
|
*
|
||||||
|
* These boards are almost identical to the AT-MIO E series, except that
|
||||||
|
* they use the PCI bus instead of ISA (i.e., AT). See the notes for the
|
||||||
|
* ni_atmio.o driver for additional information about these boards.
|
||||||
|
*
|
||||||
|
* Autocalibration is supported on many of the devices, using the
|
||||||
|
* comedi_calibrate (or comedi_soft_calibrate for m-series) utility.
|
||||||
|
* M-Series boards do analog input and analog output calibration entirely
|
||||||
|
* in software. The software calibration corrects the analog input for
|
||||||
|
* offset, gain and nonlinearity. The analog outputs are corrected for
|
||||||
|
* offset and gain. See the comedilib documentation on
|
||||||
|
* comedi_get_softcal_converter() for more information.
|
||||||
|
*
|
||||||
|
* By default, the driver uses DMA to transfer analog input data to
|
||||||
|
* memory. When DMA is enabled, not all triggering features are
|
||||||
|
* supported.
|
||||||
|
*
|
||||||
|
* Digital I/O may not work on 673x.
|
||||||
|
*
|
||||||
|
* Note that the PCI-6143 is a simultaineous sampling device with 8
|
||||||
|
* convertors. With this board all of the convertors perform one
|
||||||
|
* simultaineous sample during a scan interval. The period for a scan
|
||||||
|
* is used for the convert time in a Comedi cmd. The convert trigger
|
||||||
|
* source is normally set to TRIG_NOW by default.
|
||||||
|
*
|
||||||
|
* The RTSI trigger bus is supported on these cards on subdevice 10.
|
||||||
|
* See the comedilib documentation for details.
|
||||||
|
*
|
||||||
|
* Information (number of channels, bits, etc.) for some devices may be
|
||||||
|
* incorrect. Please check this and submit a bug if there are problems
|
||||||
|
* for your device.
|
||||||
|
*
|
||||||
|
* SCXI is probably broken for m-series boards.
|
||||||
|
*
|
||||||
|
* Bugs:
|
||||||
|
* - When DMA is enabled, COMEDI_EV_CONVERT does not work correctly.
|
||||||
|
*/
|
||||||
|
|
||||||
These boards are almost identical to the AT-MIO E series, except that
|
|
||||||
they use the PCI bus instead of ISA (i.e., AT). See the notes for
|
|
||||||
the ni_atmio.o driver for additional information about these boards.
|
|
||||||
|
|
||||||
Autocalibration is supported on many of the devices, using the
|
|
||||||
comedi_calibrate (or comedi_soft_calibrate for m-series) utility.
|
|
||||||
M-Series boards do analog input and analog output calibration entirely
|
|
||||||
in software. The software calibration corrects
|
|
||||||
the analog input for offset, gain and
|
|
||||||
nonlinearity. The analog outputs are corrected for offset and gain.
|
|
||||||
See the comedilib documentation on comedi_get_softcal_converter() for
|
|
||||||
more information.
|
|
||||||
|
|
||||||
By default, the driver uses DMA to transfer analog input data to
|
|
||||||
memory. When DMA is enabled, not all triggering features are
|
|
||||||
supported.
|
|
||||||
|
|
||||||
Digital I/O may not work on 673x.
|
|
||||||
|
|
||||||
Note that the PCI-6143 is a simultaineous sampling device with 8 convertors.
|
|
||||||
With this board all of the convertors perform one simultaineous sample during
|
|
||||||
a scan interval. The period for a scan is used for the convert time in a
|
|
||||||
Comedi cmd. The convert trigger source is normally set to TRIG_NOW by default.
|
|
||||||
|
|
||||||
The RTSI trigger bus is supported on these cards on
|
|
||||||
subdevice 10. See the comedilib documentation for details.
|
|
||||||
|
|
||||||
Information (number of channels, bits, etc.) for some devices may be
|
|
||||||
incorrect. Please check this and submit a bug if there are problems
|
|
||||||
for your device.
|
|
||||||
|
|
||||||
SCXI is probably broken for m-series boards.
|
|
||||||
|
|
||||||
Bugs:
|
|
||||||
- When DMA is enabled, COMEDI_EV_CONVERT does
|
|
||||||
not work correctly.
|
|
||||||
|
|
||||||
*/
|
|
||||||
/*
|
/*
|
||||||
The PCI-MIO E series driver was originally written by
|
* The PCI-MIO E series driver was originally written by
|
||||||
Tomasz Motylewski <...>, and ported to comedi by ds.
|
* Tomasz Motylewski <...>, and ported to comedi by ds.
|
||||||
|
*
|
||||||
References:
|
* References:
|
||||||
|
* 341079b.pdf PCI E Series Register-Level Programmer Manual
|
||||||
341079b.pdf PCI E Series Register-Level Programmer Manual
|
* 340934b.pdf DAQ-STC reference manual
|
||||||
340934b.pdf DAQ-STC reference manual
|
*
|
||||||
|
* 322080b.pdf 6711/6713/6715 User Manual
|
||||||
322080b.pdf 6711/6713/6715 User Manual
|
*
|
||||||
|
* 320945c.pdf PCI E Series User Manual
|
||||||
320945c.pdf PCI E Series User Manual
|
* 322138a.pdf PCI-6052E and DAQPad-6052E User Manual
|
||||||
322138a.pdf PCI-6052E and DAQPad-6052E User Manual
|
*
|
||||||
|
* ISSUES:
|
||||||
ISSUES:
|
* - need to deal with external reference for DAC, and other DAC
|
||||||
|
* properties in board properties
|
||||||
need to deal with external reference for DAC, and other DAC
|
* - deal with at-mio-16de-10 revision D to N changes, etc.
|
||||||
properties in board properties
|
* - need to add other CALDAC type
|
||||||
|
* - need to slow down DAC loading. I don't trust NI's claim that
|
||||||
deal with at-mio-16de-10 revision D to N changes, etc.
|
* two writes to the PCI bus slows IO enough. I would prefer to
|
||||||
|
* use udelay().
|
||||||
need to add other CALDAC type
|
* Timing specs: (clock)
|
||||||
|
* AD8522 30ns
|
||||||
need to slow down DAC loading. I don't trust NI's claim that
|
* DAC8043 120ns
|
||||||
two writes to the PCI bus slows IO enough. I would prefer to
|
* DAC8800 60ns
|
||||||
use udelay(). Timing specs: (clock)
|
* MB88341 ?
|
||||||
AD8522 30ns
|
*/
|
||||||
DAC8043 120ns
|
|
||||||
DAC8800 60ns
|
|
||||||
MB88341 ?
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
|
@ -119,13 +114,14 @@ Bugs:
|
||||||
|
|
||||||
#define PCIDMA
|
#define PCIDMA
|
||||||
|
|
||||||
/* These are not all the possible ao ranges for 628x boards.
|
/*
|
||||||
They can do OFFSET +- REFERENCE where OFFSET can be
|
* These are not all the possible ao ranges for 628x boards.
|
||||||
0V, 5V, APFI<0,1>, or AO<0...3> and RANGE can
|
* They can do OFFSET +- REFERENCE where OFFSET can be
|
||||||
be 10V, 5V, 2V, 1V, APFI<0,1>, AO<0...3>. That's
|
* 0V, 5V, APFI<0,1>, or AO<0...3> and RANGE can
|
||||||
63 different possibilities. An AO channel
|
* be 10V, 5V, 2V, 1V, APFI<0,1>, AO<0...3>. That's
|
||||||
can not act as it's own OFFSET or REFERENCE.
|
* 63 different possibilities. An AO channel
|
||||||
*/
|
* can not act as it's own OFFSET or REFERENCE.
|
||||||
|
*/
|
||||||
static const struct comedi_lrange range_ni_M_628x_ao = {
|
static const struct comedi_lrange range_ni_M_628x_ao = {
|
||||||
8, {
|
8, {
|
||||||
BIP_RANGE(10),
|
BIP_RANGE(10),
|
||||||
|
|
Загрузка…
Ссылка в новой задаче