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 10 * info@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 51int i_APCI1032_ConfigDigitalInput(struct comedi_device *dev, struct comedi_subdevice *s, 52 struct comedi_insn *insn, unsigned int *data); 53 54int i_APCI1032_Read1DigitalInput(struct comedi_device *dev, struct comedi_subdevice *s, 55 struct comedi_insn *insn, unsigned int *data); 56 57int i_APCI1032_ReadMoreDigitalInput(struct comedi_device *dev, struct comedi_subdevice *s, 58 struct comedi_insn *insn, unsigned int *data); 59 60/* Interrupt functions..... */ 61 62static void v_APCI1032_Interrupt(int irq, void *d); 63/* Reset */ 64int i_APCI1032_Reset(struct comedi_device *dev); 65