APCI1710_82x54.h revision 71b5f4f11971dea972832ad63a994c7e5b45db6b
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#define APCI1710_PCI_BUS_CLOCK 			0
19#define APCI1710_FRONT_CONNECTOR_INPUT 		1
20#define APCI1710_TIMER_READVALUE		0
21#define APCI1710_TIMER_GETOUTPUTLEVEL		1
22#define APCI1710_TIMER_GETPROGRESSSTATUS	2
23#define APCI1710_TIMER_WRITEVALUE		3
24
25#define APCI1710_TIMER_READINTERRUPT		1
26#define APCI1710_TIMER_READALLTIMER		2
27
28/* BEGIN JK 27.10.03 : Add the possibility to use a 40 Mhz quartz */
29#ifndef APCI1710_10MHZ
30#define APCI1710_10MHZ	10
31#endif
32/* END JK 27.10.03 : Add the possibility to use a 40 Mhz quartz */
33
34/*
35 * 82X54 TIMER INISIALISATION FUNCTION
36 */
37INT i_APCI1710_InsnConfigInitTimer(struct comedi_device *dev, comedi_subdevice *s,
38				   comedi_insn *insn, unsigned int *data);
39
40INT i_APCI1710_InsnWriteEnableDisableTimer(struct comedi_device *dev,
41					   comedi_subdevice *s,
42					   comedi_insn *insn, unsigned int *data);
43
44/*
45 * 82X54 READ FUNCTION
46 */
47INT i_APCI1710_InsnReadAllTimerValue(struct comedi_device *dev, comedi_subdevice *s,
48				     comedi_insn *insn, unsigned int *data);
49
50INT i_APCI1710_InsnBitsTimer(struct comedi_device *dev, comedi_subdevice *s,
51			     comedi_insn *insn, unsigned int *data);
52
53/*
54 * 82X54 READ & WRITE FUNCTION
55 */
56INT i_APCI1710_ReadTimerValue(struct comedi_device *dev,
57			      BYTE b_ModulNbr, BYTE b_TimerNbr,
58			      PULONG pul_TimerValue);
59
60INT i_APCI1710_GetTimerOutputLevel(struct comedi_device *dev,
61				   BYTE b_ModulNbr, BYTE b_TimerNbr,
62				   PBYTE pb_OutputLevel);
63
64INT i_APCI1710_GetTimerProgressStatus(struct comedi_device *dev,
65				      BYTE b_ModulNbr, BYTE b_TimerNbr,
66				      PBYTE pb_TimerStatus);
67
68/*
69 * 82X54 WRITE FUNCTION
70 */
71INT i_APCI1710_WriteTimerValue(struct comedi_device *dev,
72			       BYTE b_ModulNbr, BYTE b_TimerNbr,
73			       ULONG ul_WriteValue);
74