/drivers/staging/comedi/drivers/addi-data/hwdrv_apci035.h
https://bitbucket.org/cyanogenmod/android_kernel_asus_tf300t · C Header · 109 lines · 65 code · 17 blank · 27 comment · 0 complexity · cc3f0bdf6766312db16a04bde57c757c MD5 · raw file
- /*
- * Copyright (C) 2004,2005 ADDI-DATA GmbH for the source code of this module.
- *
- * ADDI-DATA GmbH
- * Dieselstrasse 3
- * D-77833 Ottersweier
- * Tel: +19(0)7223/9493-0
- * Fax: +49(0)7223/9493-92
- * http://www.addi-data.com
- * info@addi-data.com
- *
- * This 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.
- */
- /* Card Specific information */
- #define APCI035_BOARD_VENDOR_ID 0x15B8
- #define APCI035_ADDRESS_RANGE 255
- /* ANALOG INPUT RANGE */
- static struct comedi_lrange range_apci035_ai = { 8, {
- BIP_RANGE(10),
- BIP_RANGE(5),
- BIP_RANGE(2),
- BIP_RANGE(1),
- UNI_RANGE(10),
- UNI_RANGE(5),
- UNI_RANGE(2),
- UNI_RANGE(1)
- }
- };
- /* Timer / Watchdog Related Defines */
- #define APCI035_TCW_SYNC_ENABLEDISABLE 0
- #define APCI035_TCW_RELOAD_VALUE 4
- #define APCI035_TCW_TIMEBASE 8
- #define APCI035_TCW_PROG 12
- #define APCI035_TCW_TRIG_STATUS 16
- #define APCI035_TCW_IRQ 20
- #define APCI035_TCW_WARN_TIMEVAL 24
- #define APCI035_TCW_WARN_TIMEBASE 28
- #define ADDIDATA_TIMER 0
- /* #define ADDIDATA_WATCHDOG 1 */
- #define APCI035_TW1 0
- #define APCI035_TW2 32
- #define APCI035_TW3 64
- #define APCI035_TW4 96
- #define APCI035_AI_OFFSET 0
- #define APCI035_TEMP 128
- #define APCI035_ALR_SEQ 4
- #define APCI035_START_STOP_INDEX 8
- #define APCI035_ALR_START_STOP 12
- #define APCI035_ALR_IRQ 16
- #define APCI035_EOS 20
- #define APCI035_CHAN_NO 24
- #define APCI035_CHAN_VAL 28
- #define APCI035_CONV_TIME_TIME_BASE 36
- #define APCI035_RELOAD_CONV_TIME_VAL 32
- #define APCI035_DELAY_TIME_TIME_BASE 44
- #define APCI035_RELOAD_DELAY_TIME_VAL 40
- #define ENABLE_EXT_TRIG 1
- #define ENABLE_EXT_GATE 2
- #define ENABLE_EXT_TRIG_GATE 3
- #define ANALOG_INPUT 0
- #define TEMPERATURE 1
- #define RESISTANCE 2
- #define ADDIDATA_GREATER_THAN_TEST 0
- #define ADDIDATA_LESS_THAN_TEST 1
- #define APCI035_MAXVOLT 2.5
- #define ADDIDATA_UNIPOLAR 1
- #define ADDIDATA_BIPOLAR 2
- /* ADDIDATA Enable Disable */
- #define ADDIDATA_ENABLE 1
- #define ADDIDATA_DISABLE 0
- /* Hardware Layer functions for Apci035 */
- /* TIMER */
- /* timer value is passed as u seconds */
- int i_APCI035_ConfigTimerWatchdog(struct comedi_device *dev, struct comedi_subdevice *s,
- struct comedi_insn *insn, unsigned int *data);
- int i_APCI035_StartStopWriteTimerWatchdog(struct comedi_device *dev,
- struct comedi_subdevice *s,
- struct comedi_insn *insn, unsigned int *data);
- int i_APCI035_ReadTimerWatchdog(struct comedi_device *dev, struct comedi_subdevice *s,
- struct comedi_insn *insn, unsigned int *data);
- /* Temperature Related Defines (Analog Input Subdevice) */
- int i_APCI035_ConfigAnalogInput(struct comedi_device *dev, struct comedi_subdevice *s,
- struct comedi_insn *insn, unsigned int *data);
- int i_APCI035_ReadAnalogInput(struct comedi_device *dev, struct comedi_subdevice *s,
- struct comedi_insn *insn, unsigned int *data);
- /* Interrupt */
- static void v_APCI035_Interrupt(int irq, void *d);
- /* Reset functions */
- int i_APCI035_Reset(struct comedi_device *dev);