2 * Copyright (C) 2004,2005 ADDI-DATA GmbH for the source code of this module.
7 * Tel: +19(0)7223/9493-0
8 * Fax: +49(0)7223/9493-92
9 * http://www.addi-data-com
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)
18 /********* Definitions for APCI-1516 card *****/
20 // Card Specific information
21 #define APCI1516_BOARD_VENDOR_ID 0x15B8
22 #define APCI1516_ADDRESS_RANGE 8
24 //DIGITAL INPUT-OUTPUT DEFINE
26 #define APCI1516_DIGITAL_OP 4
27 #define APCI1516_DIGITAL_OP_RW 4
28 #define APCI1516_DIGITAL_IP 0
30 // TIMER COUNTER WATCHDOG DEFINES
32 #define ADDIDATA_WATCHDOG 2
33 #define APCI1516_DIGITAL_OP_WATCHDOG 0
34 #define APCI1516_WATCHDOG_ENABLEDISABLE 12
35 #define APCI1516_WATCHDOG_RELOAD_VALUE 4
36 #define APCI1516_WATCHDOG_STATUS 16
38 // Hardware Layer functions for Apci1516
41 int i_APCI1516_ReadMoreDigitalInput(struct comedi_device *dev, struct comedi_subdevice *s,
42 struct comedi_insn *insn, unsigned int *data);
43 int i_APCI1516_Read1DigitalInput(struct comedi_device *dev, struct comedi_subdevice *s,
44 struct comedi_insn *insn, unsigned int *data);
47 int i_APCI1516_ConfigDigitalOutput(struct comedi_device *dev, struct comedi_subdevice *s,
48 struct comedi_insn *insn, unsigned int *data);
49 int i_APCI1516_WriteDigitalOutput(struct comedi_device *dev, struct comedi_subdevice *s,
50 struct comedi_insn *insn, unsigned int *data);
51 int i_APCI1516_ReadDigitalOutput(struct comedi_device *dev, struct comedi_subdevice *s,
52 struct comedi_insn *insn, unsigned int *data);
55 // timer value is passed as u seconds
56 int i_APCI1516_ConfigWatchdog(struct comedi_device *dev, struct comedi_subdevice *s,
57 struct comedi_insn *insn, unsigned int *data);
58 int i_APCI1516_StartStopWriteWatchdog(struct comedi_device *dev, struct comedi_subdevice *s,
59 struct comedi_insn *insn, unsigned int *data);
60 int i_APCI1516_ReadWatchdog(struct comedi_device *dev, struct comedi_subdevice *s,
61 struct comedi_insn *insn, unsigned int *data);
64 int i_APCI1516_Reset(struct comedi_device *dev);