Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions
das1800.c File Reference
#include <linux/interrupt.h>
#include <linux/slab.h>
#include <linux/io.h>
#include "../comedidev.h"
#include <linux/ioport.h>
#include <asm/dma.h>
#include "8253.h"
#include "comedi_fc.h"

Go to the source code of this file.

Data Structures

struct  das1800_board
 
struct  das1800_private
 

Macros

#define DAS1800_SIZE   16 /* uses 16 io addresses */
 
#define FIFO_SIZE   1024 /* 1024 sample fifo */
 
#define TIMER_BASE   200 /* 5 Mhz master clock */
 
#define UNIPOLAR   0x4 /* bit that determines whether input range is uni/bipolar */
 
#define DMA_BUF_SIZE   0x1ff00 /* size in bytes of dma buffers */
 
#define DAS1800_FIFO   0x0
 
#define DAS1800_QRAM   0x0
 
#define DAS1800_DAC   0x0
 
#define DAS1800_SELECT   0x2
 
#define ADC   0x0
 
#define QRAM   0x1
 
#define DAC(a)   (0x2 + a)
 
#define DAS1800_DIGITAL   0x3
 
#define DAS1800_CONTROL_A   0x4
 
#define FFEN   0x1
 
#define CGEN   0x4
 
#define CGSL   0x8
 
#define TGEN   0x10
 
#define TGSL   0x20
 
#define ATEN   0x80
 
#define DAS1800_CONTROL_B   0x5
 
#define DMA_CH5   0x1
 
#define DMA_CH6   0x2
 
#define DMA_CH7   0x3
 
#define DMA_CH5_CH6   0x5
 
#define DMA_CH6_CH7   0x6
 
#define DMA_CH7_CH5   0x7
 
#define DMA_ENABLED   0x3 /* mask used to determine if dma is enabled */
 
#define DMA_DUAL   0x4
 
#define IRQ3   0x8
 
#define IRQ5   0x10
 
#define IRQ7   0x18
 
#define IRQ10   0x28
 
#define IRQ11   0x30
 
#define IRQ15   0x38
 
#define FIMD   0x40
 
#define DAS1800_CONTROL_C   0X6
 
#define IPCLK   0x1
 
#define XPCLK   0x3
 
#define BMDE   0x4
 
#define CMEN   0x8
 
#define UQEN   0x10
 
#define SD   0x40
 
#define UB   0x80
 
#define DAS1800_STATUS   0x7
 
#define CLEAR_INTR_MASK   (CVEN_MASK | 0x1f)
 
#define INT   0x1
 
#define DMATC   0x2
 
#define CT0TC   0x8
 
#define OVF   0x10
 
#define FHF   0x20
 
#define FNE   0x40
 
#define CVEN_MASK   0x40 /* masks CVEN on write */
 
#define CVEN   0x80
 
#define DAS1800_BURST_LENGTH   0x8
 
#define DAS1800_BURST_RATE   0x9
 
#define DAS1800_QRAM_ADDRESS   0xa
 
#define DAS1800_COUNTER   0xc
 
#define IOBASE2   0x400 /* offset of additional ioports used on 'ao' cards */
 
#define thisboard   ((const struct das1800_board *)dev->board_ptr)
 
#define devpriv   ((struct das1800_private *)dev->private)
 

Enumerations

enum  {
  das1701st, das1701st_da, das1702st, das1702st_da,
  das1702hr, das1702hr_da, das1701ao, das1702ao,
  das1801st, das1801st_da, das1802st, das1802st_da,
  das1802hr, das1802hr_da, das1801hc, das1802hc,
  das1801ao, das1802ao
}
 

Functions

 module_comedi_driver (das1800_driver)
 
 MODULE_AUTHOR ("Comedi http://www.comedi.org")
 
 MODULE_DESCRIPTION ("Comedi low-level driver")
 
 MODULE_LICENSE ("GPL")
 

Macro Definition Documentation

#define ADC   0x0

Definition at line 126 of file das1800.c.

#define ATEN   0x80

Definition at line 136 of file das1800.c.

#define BMDE   0x4

Definition at line 156 of file das1800.c.

#define CGEN   0x4

Definition at line 132 of file das1800.c.

#define CGSL   0x8

Definition at line 133 of file das1800.c.

#define CLEAR_INTR_MASK   (CVEN_MASK | 0x1f)

Definition at line 163 of file das1800.c.

#define CMEN   0x8

Definition at line 157 of file das1800.c.

#define CT0TC   0x8

Definition at line 166 of file das1800.c.

#define CVEN   0x80

Definition at line 171 of file das1800.c.

#define CVEN_MASK   0x40 /* masks CVEN on write */

Definition at line 170 of file das1800.c.

#define DAC (   a)    (0x2 + a)

Definition at line 128 of file das1800.c.

#define DAS1800_BURST_LENGTH   0x8

Definition at line 172 of file das1800.c.

#define DAS1800_BURST_RATE   0x9

Definition at line 173 of file das1800.c.

#define DAS1800_CONTROL_A   0x4

Definition at line 130 of file das1800.c.

#define DAS1800_CONTROL_B   0x5

Definition at line 137 of file das1800.c.

#define DAS1800_CONTROL_C   0X6

Definition at line 153 of file das1800.c.

#define DAS1800_COUNTER   0xc

Definition at line 175 of file das1800.c.

#define DAS1800_DAC   0x0

Definition at line 124 of file das1800.c.

#define DAS1800_DIGITAL   0x3

Definition at line 129 of file das1800.c.

#define DAS1800_FIFO   0x0

Definition at line 122 of file das1800.c.

#define DAS1800_QRAM   0x0

Definition at line 123 of file das1800.c.

#define DAS1800_QRAM_ADDRESS   0xa

Definition at line 174 of file das1800.c.

#define DAS1800_SELECT   0x2

Definition at line 125 of file das1800.c.

#define DAS1800_SIZE   16 /* uses 16 io addresses */

Definition at line 115 of file das1800.c.

#define DAS1800_STATUS   0x7

Definition at line 161 of file das1800.c.

#define devpriv   ((struct das1800_private *)dev->private)

Definition at line 457 of file das1800.c.

#define DMA_BUF_SIZE   0x1ff00 /* size in bytes of dma buffers */

Definition at line 119 of file das1800.c.

#define DMA_CH5   0x1

Definition at line 138 of file das1800.c.

#define DMA_CH5_CH6   0x5

Definition at line 141 of file das1800.c.

#define DMA_CH6   0x2

Definition at line 139 of file das1800.c.

#define DMA_CH6_CH7   0x6

Definition at line 142 of file das1800.c.

#define DMA_CH7   0x3

Definition at line 140 of file das1800.c.

#define DMA_CH7_CH5   0x7

Definition at line 143 of file das1800.c.

#define DMA_DUAL   0x4

Definition at line 145 of file das1800.c.

#define DMA_ENABLED   0x3 /* mask used to determine if dma is enabled */

Definition at line 144 of file das1800.c.

#define DMATC   0x2

Definition at line 165 of file das1800.c.

#define FFEN   0x1

Definition at line 131 of file das1800.c.

#define FHF   0x20

Definition at line 168 of file das1800.c.

#define FIFO_SIZE   1024 /* 1024 sample fifo */

Definition at line 116 of file das1800.c.

#define FIMD   0x40

Definition at line 152 of file das1800.c.

#define FNE   0x40

Definition at line 169 of file das1800.c.

#define INT   0x1

Definition at line 164 of file das1800.c.

#define IOBASE2   0x400 /* offset of additional ioports used on 'ao' cards */

Definition at line 177 of file das1800.c.

#define IPCLK   0x1

Definition at line 154 of file das1800.c.

#define IRQ10   0x28

Definition at line 149 of file das1800.c.

#define IRQ11   0x30

Definition at line 150 of file das1800.c.

#define IRQ15   0x38

Definition at line 151 of file das1800.c.

#define IRQ3   0x8

Definition at line 146 of file das1800.c.

#define IRQ5   0x10

Definition at line 147 of file das1800.c.

#define IRQ7   0x18

Definition at line 148 of file das1800.c.

#define OVF   0x10

Definition at line 167 of file das1800.c.

#define QRAM   0x1

Definition at line 127 of file das1800.c.

#define SD   0x40

Definition at line 159 of file das1800.c.

#define TGEN   0x10

Definition at line 134 of file das1800.c.

#define TGSL   0x20

Definition at line 135 of file das1800.c.

#define thisboard   ((const struct das1800_board *)dev->board_ptr)

Definition at line 435 of file das1800.c.

#define TIMER_BASE   200 /* 5 Mhz master clock */

Definition at line 117 of file das1800.c.

#define UB   0x80

Definition at line 160 of file das1800.c.

#define UNIPOLAR   0x4 /* bit that determines whether input range is uni/bipolar */

Definition at line 118 of file das1800.c.

#define UQEN   0x10

Definition at line 158 of file das1800.c.

#define XPCLK   0x3

Definition at line 155 of file das1800.c.

Enumeration Type Documentation

anonymous enum
Enumerator:
das1701st 
das1701st_da 
das1702st 
das1702st_da 
das1702hr 
das1702hr_da 
das1701ao 
das1702ao 
das1801st 
das1801st_da 
das1802st 
das1802st_da 
das1802hr 
das1802hr_da 
das1801hc 
das1802hc 
das1801ao 
das1802ao 

Definition at line 179 of file das1800.c.

Function Documentation

MODULE_AUTHOR ( "Comedi http://www.comedi.org"  )
module_comedi_driver ( das1800_driver  )
MODULE_DESCRIPTION ( "Comedi low-level driver )
MODULE_LICENSE ( "GPL"  )