hwdrv_apci2016.h revision c995fe9475e062bab6f5a45ed28cd2d3d955ef43
1/**
2@verbatim
3
4Copyright (C) 2004,2005  ADDI-DATA GmbH for the source code of this module.
5
6        ADDI-DATA GmbH
7        Dieselstrasse 3
8        D-77833 Ottersweier
9        Tel: +19(0)7223/9493-0
10        Fax: +49(0)7223/9493-92
11        http://www.addi-data-com
12        info@addi-data.com
13
14This 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.
15
16This 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.
17
18You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
20You shoud also find the complete GPL in the COPYING file accompanying this source code.
21
22@endverbatim
23*/
24/*********      Definitions for APCI-2016 card  *****/
25
26#define APCI2016_BOARD_VENDOR_ID 0x15B8
27#define APCI2016_ADDRESS_RANGE   8
28
29//DIGITAL INPUT-OUTPUT DEFINE
30
31#define APCI2016_DIGITAL_OP                 	0x04
32#define APCI2016_DIGITAL_OP_RW                 	4
33
34//ADDIDATA Enable Disable
35
36#define ADDIDATA_ENABLE                            1
37#define ADDIDATA_DISABLE                           0
38
39// TIMER COUNTER WATCHDOG DEFINES
40
41#define ADDIDATA_WATCHDOG                          2
42#define APCI2016_DIGITAL_OP_WATCHDOG               0
43#define APCI2016_WATCHDOG_ENABLEDISABLE            12
44#define APCI2016_WATCHDOG_RELOAD_VALUE             4
45#define APCI2016_WATCHDOG_STATUS                   16
46
47// Hardware Layer  functions for Apci2016
48
49//DO
50int i_APCI2016_ConfigDigitalOutput(comedi_device * dev, comedi_subdevice * s,
51	comedi_insn * insn, lsampl_t * data);
52
53int i_APCI2016_WriteDigitalOutput(comedi_device * dev, comedi_subdevice * s,
54	comedi_insn * insn, lsampl_t * data);
55
56int i_APCI2016_BitsDigitalOutput(comedi_device * dev, comedi_subdevice * s,
57	comedi_insn * insn, lsampl_t * data);
58
59// TIMER
60// timer value is passed as u seconds
61
62int i_APCI2016_ConfigWatchdog(comedi_device * dev, comedi_subdevice * s,
63	comedi_insn * insn, lsampl_t * data);
64
65int i_APCI2016_StartStopWriteWatchdog(comedi_device * dev, comedi_subdevice * s,
66	comedi_insn * insn, lsampl_t * data);
67
68int i_APCI2016_ReadWatchdog(comedi_device * dev, comedi_subdevice * s,
69	comedi_insn * insn, lsampl_t * data);
70
71// Interrupt functions.....
72
73// VOID v_APCI2016_Interrupt(int irq, void *d) ;
74
75 //VOID v_APCI2016_Interrupt(int irq, void *d);
76// RESET
77INT i_APCI2016_Reset(comedi_device * dev);
78