Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
hwdrv_apci1032.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2004,2005 ADDI-DATA GmbH for the source code of this module.
3  *
4  * ADDI-DATA GmbH
5  * Dieselstrasse 3
6  * D-77833 Ottersweier
7  * Tel: +19(0)7223/9493-0
8  * Fax: +49(0)7223/9493-92
9  * http://www.addi-data.com
11  *
12  * This program is free software; you can redistribute it and/or modify it
13  * under the terms of the GNU General Public License as published by the Free
14  * Software Foundation; either version 2 of the License, or (at your option)
15  * any later version.
16  */
17 
18 /********* Definitions for APCI-1032 card *****/
19 
20 #define APCI1032_BOARD_VENDOR_ID 0x15B8
21 #define APCI1032_ADDRESS_RANGE 20
22 /* DIGITAL INPUT DEFINE */
23 
24 #define APCI1032_DIGITAL_IP 0
25 #define APCI1032_DIGITAL_IP_INTERRUPT_MODE1 4
26 #define APCI1032_DIGITAL_IP_INTERRUPT_MODE2 8
27 #define APCI1032_DIGITAL_IP_IRQ 16
28 
29 /* Digital Input IRQ Function Selection */
30 #define ADDIDATA_OR 0
31 #define ADDIDATA_AND 1
32 
33 /* Digital Input Interrupt Status */
34 #define APCI1032_DIGITAL_IP_INTERRUPT_STATUS 12
35 
36 /* Digital Input Interrupt Enable Disable. */
37 #define APCI1032_DIGITAL_IP_INTERRUPT_ENABLE 0x4
38 #define APCI1032_DIGITAL_IP_INTERRUPT_DISABLE 0xFFFFFFFB
39 
40 /* ADDIDATA Enable Disable */
41 
42 #define ADDIDATA_ENABLE 1
43 #define ADDIDATA_DISABLE 0
44 
45 /* Hardware Layer functions for Apci1032 */
46 
47 /*
48 * DI for di read
49 */
50 
52  struct comedi_insn *insn, unsigned int *data);
53 
55  struct comedi_insn *insn, unsigned int *data);
56 
58  struct comedi_insn *insn, unsigned int *data);
59 
60 /* Interrupt functions..... */
61 
62 static void v_APCI1032_Interrupt(int irq, void *d);
63 /* Reset */