Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions
icp_multi.c File Reference
#include <linux/interrupt.h>
#include "../comedidev.h"
#include <linux/delay.h>
#include <linux/pci.h>

Go to the source code of this file.

Data Structures

struct  icp_multi_private
 

Macros

#define PCI_DEVICE_ID_ICP_MULTI   0x8000
 
#define ICP_MULTI_ADC_CSR   0 /* R/W: ADC command/status register */
 
#define ICP_MULTI_AI   2 /* R: Analogue input data */
 
#define ICP_MULTI_DAC_CSR   4 /* R/W: DAC command/status register */
 
#define ICP_MULTI_AO   6 /* R/W: Analogue output data */
 
#define ICP_MULTI_DI   8 /* R/W: Digital inouts */
 
#define ICP_MULTI_DO   0x0A /* R/W: Digital outputs */
 
#define ICP_MULTI_INT_EN   0x0C /* R/W: Interrupt enable register */
 
#define ICP_MULTI_INT_STAT   0x0E /* R/W: Interrupt status register */
 
#define ICP_MULTI_CNTR0   0x10 /* R/W: Counter 0 */
 
#define ICP_MULTI_CNTR1   0x12 /* R/W: counter 1 */
 
#define ICP_MULTI_CNTR2   0x14 /* R/W: Counter 2 */
 
#define ICP_MULTI_CNTR3   0x16 /* R/W: Counter 3 */
 
#define ICP_MULTI_SIZE   0x20 /* 32 bytes */
 
#define ADC_ST   0x0001 /* Start ADC */
 
#define ADC_BSY   0x0001 /* ADC busy */
 
#define ADC_BI   0x0010 /* Bipolar input range 1 = bipolar */
 
#define ADC_RA   0x0020 /* Input range 0 = 5V, 1 = 10V */
 
#define ADC_DI   0x0040 /* Differential input mode 1 = differential */
 
#define DAC_ST   0x0001 /* Start DAC */
 
#define DAC_BSY   0x0001 /* DAC busy */
 
#define DAC_BI   0x0010 /* Bipolar input range 1 = bipolar */
 
#define DAC_RA   0x0020 /* Input range 0 = 5V, 1 = 10V */
 
#define ADC_READY   0x0001 /* A/d conversion ready interrupt */
 
#define DAC_READY   0x0002 /* D/a conversion ready interrupt */
 
#define DOUT_ERROR   0x0004 /* Digital output error interrupt */
 
#define DIN_STATUS   0x0008 /* Digital input status change interrupt */
 
#define CIE0   0x0010 /* Counter 0 overrun interrupt */
 
#define CIE1   0x0020 /* Counter 1 overrun interrupt */
 
#define CIE2   0x0040 /* Counter 2 overrun interrupt */
 
#define CIE3   0x0080 /* Counter 3 overrun interrupt */
 
#define Status_IRQ   0x00ff /* All interrupts */
 

Functions

 MODULE_DEVICE_TABLE (pci, icp_multi_pci_table)
 
 module_comedi_pci_driver (icp_multi_driver, icp_multi_pci_driver)
 
 MODULE_AUTHOR ("Comedi http://www.comedi.org")
 
 MODULE_DESCRIPTION ("Comedi low-level driver")
 
 MODULE_LICENSE ("GPL")
 

Macro Definition Documentation

#define ADC_BI   0x0010 /* Bipolar input range 1 = bipolar */

Definition at line 76 of file icp_multi.c.

#define ADC_BSY   0x0001 /* ADC busy */

Definition at line 75 of file icp_multi.c.

#define ADC_DI   0x0040 /* Differential input mode 1 = differential */

Definition at line 78 of file icp_multi.c.

#define ADC_RA   0x0020 /* Input range 0 = 5V, 1 = 10V */

Definition at line 77 of file icp_multi.c.

#define ADC_READY   0x0001 /* A/d conversion ready interrupt */

Definition at line 87 of file icp_multi.c.

#define ADC_ST   0x0001 /* Start ADC */

Definition at line 74 of file icp_multi.c.

#define CIE0   0x0010 /* Counter 0 overrun interrupt */

Definition at line 91 of file icp_multi.c.

#define CIE1   0x0020 /* Counter 1 overrun interrupt */

Definition at line 92 of file icp_multi.c.

#define CIE2   0x0040 /* Counter 2 overrun interrupt */

Definition at line 93 of file icp_multi.c.

#define CIE3   0x0080 /* Counter 3 overrun interrupt */

Definition at line 94 of file icp_multi.c.

#define DAC_BI   0x0010 /* Bipolar input range 1 = bipolar */

Definition at line 83 of file icp_multi.c.

#define DAC_BSY   0x0001 /* DAC busy */

Definition at line 82 of file icp_multi.c.

#define DAC_RA   0x0020 /* Input range 0 = 5V, 1 = 10V */

Definition at line 84 of file icp_multi.c.

#define DAC_READY   0x0002 /* D/a conversion ready interrupt */

Definition at line 88 of file icp_multi.c.

#define DAC_ST   0x0001 /* Start DAC */

Definition at line 81 of file icp_multi.c.

#define DIN_STATUS   0x0008 /* Digital input status change interrupt */

Definition at line 90 of file icp_multi.c.

#define DOUT_ERROR   0x0004 /* Digital output error interrupt */

Definition at line 89 of file icp_multi.c.

#define ICP_MULTI_ADC_CSR   0 /* R/W: ADC command/status register */

Definition at line 58 of file icp_multi.c.

#define ICP_MULTI_AI   2 /* R: Analogue input data */

Definition at line 59 of file icp_multi.c.

#define ICP_MULTI_AO   6 /* R/W: Analogue output data */

Definition at line 61 of file icp_multi.c.

#define ICP_MULTI_CNTR0   0x10 /* R/W: Counter 0 */

Definition at line 66 of file icp_multi.c.

#define ICP_MULTI_CNTR1   0x12 /* R/W: counter 1 */

Definition at line 67 of file icp_multi.c.

#define ICP_MULTI_CNTR2   0x14 /* R/W: Counter 2 */

Definition at line 68 of file icp_multi.c.

#define ICP_MULTI_CNTR3   0x16 /* R/W: Counter 3 */

Definition at line 69 of file icp_multi.c.

#define ICP_MULTI_DAC_CSR   4 /* R/W: DAC command/status register */

Definition at line 60 of file icp_multi.c.

#define ICP_MULTI_DI   8 /* R/W: Digital inouts */

Definition at line 62 of file icp_multi.c.

#define ICP_MULTI_DO   0x0A /* R/W: Digital outputs */

Definition at line 63 of file icp_multi.c.

#define ICP_MULTI_INT_EN   0x0C /* R/W: Interrupt enable register */

Definition at line 64 of file icp_multi.c.

#define ICP_MULTI_INT_STAT   0x0E /* R/W: Interrupt status register */

Definition at line 65 of file icp_multi.c.

#define ICP_MULTI_SIZE   0x20 /* 32 bytes */

Definition at line 71 of file icp_multi.c.

#define PCI_DEVICE_ID_ICP_MULTI   0x8000

Definition at line 56 of file icp_multi.c.

#define Status_IRQ   0x00ff /* All interrupts */

Definition at line 97 of file icp_multi.c.

Function Documentation

MODULE_AUTHOR ( "Comedi http://www.comedi.org"  )
module_comedi_pci_driver ( icp_multi_driver  ,
icp_multi_pci_driver   
)
MODULE_DESCRIPTION ( "Comedi low-level driver )
MODULE_DEVICE_TABLE ( pci  ,
icp_multi_pci_table   
)
MODULE_LICENSE ( "GPL"  )