| /* |
| * 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. |
| */ |
| |
| #define APCI1710_30MHZ 30 |
| #define APCI1710_33MHZ 33 |
| #define APCI1710_40MHZ 40 |
| |
| #define APCI1710_PWM_INIT 0 |
| #define APCI1710_PWM_GETINITDATA 1 |
| |
| #define APCI1710_PWM_DISABLE 0 |
| #define APCI1710_PWM_ENABLE 1 |
| #define APCI1710_PWM_NEWTIMING 2 |
| |
| int i_APCI1710_InsnConfigPWM(struct comedi_device *dev, struct comedi_subdevice *s, |
| struct comedi_insn *insn, unsigned int *data); |
| |
| int i_APCI1710_InitPWM(struct comedi_device *dev, |
| unsigned char b_ModulNbr, |
| unsigned char b_PWM, |
| unsigned char b_ClockSelection, |
| unsigned char b_TimingUnit, |
| unsigned int ul_LowTiming, |
| unsigned int ul_HighTiming, |
| unsigned int *pul_RealLowTiming, unsigned int *pul_RealHighTiming); |
| |
| int i_APCI1710_GetPWMInitialisation(struct comedi_device *dev, |
| unsigned char b_ModulNbr, |
| unsigned char b_PWM, |
| unsigned char *pb_TimingUnit, |
| unsigned int *pul_LowTiming, |
| unsigned int *pul_HighTiming, |
| unsigned char *pb_StartLevel, |
| unsigned char *pb_StopMode, |
| unsigned char *pb_StopLevel, |
| unsigned char *pb_ExternGate, |
| unsigned char *pb_InterruptEnable, unsigned char *pb_Enable); |
| |
| int i_APCI1710_InsnWritePWM(struct comedi_device *dev, struct comedi_subdevice *s, |
| struct comedi_insn *insn, unsigned int *data); |
| |
| int i_APCI1710_EnablePWM(struct comedi_device *dev, |
| unsigned char b_ModulNbr, |
| unsigned char b_PWM, |
| unsigned char b_StartLevel, |
| unsigned char b_StopMode, |
| unsigned char b_StopLevel, unsigned char b_ExternGate, |
| unsigned char b_InterruptEnable); |
| |
| int i_APCI1710_SetNewPWMTiming(struct comedi_device *dev, |
| unsigned char b_ModulNbr, |
| unsigned char b_PWM, unsigned char b_TimingUnit, |
| unsigned int ul_LowTiming, unsigned int ul_HighTiming); |
| |
| int i_APCI1710_DisablePWM(struct comedi_device *dev, unsigned char b_ModulNbr, unsigned char b_PWM); |
| |
| int i_APCI1710_InsnReadGetPWMStatus(struct comedi_device *dev, struct comedi_subdevice *s, |
| struct comedi_insn *insn, unsigned int *data); |
| |
| int i_APCI1710_InsnBitsReadPWMInterrupt(struct comedi_device *dev, |
| struct comedi_subdevice *s, |
| struct comedi_insn *insn, unsigned int *data); |