Commit c5a20c4f authored by Fred Akers's avatar Fred Akers Committed by Greg Kroah-Hartman

Staging: Comedi: addi-data: Clean up function comments

These comments look terrible and are full of redundant information.
Also reformat the license at the head of the file to wrap at 80 char.
Signed-off-by: default avatarFred Akers <knivey@botops.net>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 805077b9
/**
@verbatim
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.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
@endverbatim
*/
/* /*
* Copyright (C) 2004,2005 ADDI-DATA GmbH for the source code of this module.
+-----------------------------------------------------------------------+ *
| (C) ADDI-DATA GmbH Dieselstraße 3 D-77833 Ottersweier | * ADDI-DATA GmbH
+-----------------------------------------------------------------------+ * Dieselstrasse 3
| Tel : +49 (0) 7223/9493-0 | email : info@addi-data.com | * D-77833 Ottersweier
| Fax : +49 (0) 7223/9493-92 | Internet : http://www.addi-data.com | * Tel: +19(0)7223/9493-0
+-------------------------------+---------------------------------------+ * Fax: +49(0)7223/9493-92
| Project : APCI-035 | Compiler : GCC | * http://www.addi-data.com
| Module name : hwdrv_apci035.c | Version : 2.96 | * info@addi-data.com
+-------------------------------+---------------------------------------+ *
| Project manager: Eric Stolz | Date : 02/12/2002 | * 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
| Description : Hardware Layer Access For APCI-035 | * Foundation; either version 2 of the License, or (at your option) any later
+-----------------------------------------------------------------------+ * version.
| UPDATES | *
+----------+-----------+------------------------------------------------+ * This program is distributed in the hope that it will be useful, but WITHOUT
| Date | Author | Description of updates | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+----------+-----------+------------------------------------------------+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
| | | | * details.
| | | | */
| | | |
+----------+-----------+------------------------------------------------+
*/
/* Card Specific information */ /* Card Specific information */
#define APCI035_ADDRESS_RANGE 255 #define APCI035_ADDRESS_RANGE 255
...@@ -109,60 +87,32 @@ static struct comedi_lrange range_apci035_ai = { ...@@ -109,60 +87,32 @@ static struct comedi_lrange range_apci035_ai = {
static int i_WatchdogNbr; static int i_WatchdogNbr;
static int i_Temp; static int i_Temp;
static int i_Flag = 1; static int i_Flag = 1;
/* /*
+----------------------------------------------------------------------------+ * Configures The Timer , Counter or Watchdog
| Function Name : int apci035_timer_config | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] 0 = Configure As Timer, 1 = Configure As Watchdog
| struct comedi_insn *insn,unsigned int *data) | * data[1] Watchdog number
+----------------------------------------------------------------------------+ * data[2] Time base Unit
| Task : Configures The Timer , Counter or Watchdog | * data[3] Reload Value
+----------------------------------------------------------------------------+ * data[4] External Trigger, 1 = Enable, 0 = Disable
| Input Parameters : struct comedi_device *dev : Driver handle | * data[5] External Trigger Level
| unsigned int *data : Data Pointer contains | * 00 = Trigger Disabled
| configuration parameters as below | * 01 = Trigger Enabled (Low level)
| | * 10 = Trigger Enabled (High Level)
| data[0] : 0 Configure As Timer | * 11 = Trigger Enabled (High/Low level)
| 1 Configure As Watchdog | * data[6] External Gate, 1 = Enable, 0 = Disable
| data[1] : Watchdog number * data[7] External Gate level
| data[2] : Time base Unit | * 00 = Gate Disabled
| data[3] : Reload Value | * 01 = Gate Enabled (Low level)
| data[4] : External Trigger | * 10 = Gate Enabled (High Level)
| 1:Enable * data[8] Warning Relay, 1 = Enable, 0 = Disable
| 0:Disable * data[9] Warning Delay available
| data[5] :External Trigger Level * data[10] Warning Relay Time unit
| 00 Trigger Disabled * data[11] Warning Relay Time Reload value
| 01 Trigger Enabled (Low level) * data[12] Reset Relay, 1 = Enable, 0 = Disable
| 10 Trigger Enabled (High Level) * data[13] Interrupt, 1 = Enable, 0 = Disable
| 11 Trigger Enabled (High/Low level) */
| data[6] : External Gate |
| 1:Enable
| 0:Disable
| data[7] : External Gate level
| 00 Gate Disabled
| 01 Gate Enabled (Low level)
| 10 Gate Enabled (High Level)
| data[8] :Warning Relay
| 1: ENABLE
| 0: DISABLE
| data[9] :Warning Delay available
| data[10] :Warning Relay Time unit
| data[11] :Warning Relay Time Reload value
| data[12] :Reset Relay
| 1 : ENABLE
| 0 : DISABLE
| data[13] :Interrupt
| 1 : ENABLE
| 0 : DISABLE
|
|
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci035_timer_config(struct comedi_device *dev, static int apci035_timer_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -286,32 +236,16 @@ static int apci035_timer_config(struct comedi_device *dev, ...@@ -286,32 +236,16 @@ static int apci035_timer_config(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Start / Stop The Selected Timer , or Watchdog
| Function Name : int apci035_timer_write | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0]
| struct comedi_insn *insn,unsigned int *data) | * 0 - Stop Selected Timer/Watchdog
+----------------------------------------------------------------------------+ * 1 - Start Selected Timer/Watch*dog
| Task : Start / Stop The Selected Timer , or Watchdog | * 2 - Trigger Selected Timer/Watchdog
+----------------------------------------------------------------------------+ * 3 - Stop All Timer/Watchdog
| Input Parameters : struct comedi_device *dev : Driver handle | * 4 - Start All Timer/Watchdog
| unsigned int *data : Data Pointer contains | * 5 - Trigger All Timer/Watchdog
| configuration parameters as below | */
| |
| data[0] : 0 - Stop Selected Timer/Watchdog |
| 1 - Start Selected Timer/Watchdog |
| 2 - Trigger Selected Timer/Watchdog |
| 3 - Stop All Timer/Watchdog |
| 4 - Start All Timer/Watchdog |
| 5 - Trigger All Timer/Watchdog |
| |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci035_timer_write(struct comedi_device *dev, static int apci035_timer_write(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -401,32 +335,14 @@ static int apci035_timer_write(struct comedi_device *dev, ...@@ -401,32 +335,14 @@ static int apci035_timer_write(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Read The Selected Timer , Counter or Watchdog
| Function Name : int apci035_timer_read | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] software trigger status
| struct comedi_insn *insn,unsigned int *data) | * data[1] hardware trigger status
+----------------------------------------------------------------------------+ * data[2] Software clear status
| Task : Read The Selected Timer , Counter or Watchdog | * data[3] Overflow status
+----------------------------------------------------------------------------+ * data[4] Timer actual value
| Input Parameters : struct comedi_device *dev : Driver handle | */
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| |
| |
+----------------------------------------------------------------------------+
| Output Parameters : data[0] : software trigger status
| data[1] : hardware trigger status
| data[2] : Software clear status
| data[3] : Overflow status
| data[4] : Timer actual value
|
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci035_timer_read(struct comedi_device *dev, static int apci035_timer_read(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -458,28 +374,10 @@ static int apci035_timer_read(struct comedi_device *dev, ...@@ -458,28 +374,10 @@ static int apci035_timer_read(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Configures The Analog Input Subdevice
| Function Name : int apci035_ai_config | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] Warning delay value
| struct comedi_insn *insn,unsigned int *data) | */
+----------------------------------------------------------------------------+
| Task : Configures The Analog Input Subdevice |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| struct comedi_subdevice *s : Subdevice Pointer |
| struct comedi_insn *insn : Insn Structure Pointer |
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| data[0] : Warning delay value
| |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci035_ai_config(struct comedi_device *dev, static int apci035_ai_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -500,26 +398,10 @@ static int apci035_ai_config(struct comedi_device *dev, ...@@ -500,26 +398,10 @@ static int apci035_ai_config(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Read value of the selected channel
| Function Name : int apci035_ai_read | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] Digital Value Of Input
| struct comedi_insn *insn,unsigned int *data) | */
+----------------------------------------------------------------------------+
| Task : Read value of the selected channel |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int ui_NoOfChannels : No Of Channels To read |
| unsigned int *data : Data Pointer to read status |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
| data[0] : Digital Value Of Input |
| |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci035_ai_read(struct comedi_device *dev, static int apci035_ai_read(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -539,21 +421,6 @@ static int apci035_ai_read(struct comedi_device *dev, ...@@ -539,21 +421,6 @@ static int apci035_ai_read(struct comedi_device *dev,
return insn->n; return insn->n;
} }
/*
+----------------------------------------------------------------------------+
| Function Name : int apci035_reset(struct comedi_device *dev)
| |
+----------------------------------------------------------------------------+
| Task :Resets the registers of the card |
+----------------------------------------------------------------------------+
| Input Parameters : |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : |
| |
+----------------------------------------------------------------------------+
*/
static int apci035_reset(struct comedi_device *dev) static int apci035_reset(struct comedi_device *dev)
{ {
struct addi_private *devpriv = dev->private; struct addi_private *devpriv = dev->private;
...@@ -570,23 +437,6 @@ static int apci035_reset(struct comedi_device *dev) ...@@ -570,23 +437,6 @@ static int apci035_reset(struct comedi_device *dev)
return 0; return 0;
} }
/*
+----------------------------------------------------------------------------+
| Function Name : static void apci035_interrupt
| (int irq , void *d) |
+----------------------------------------------------------------------------+
| Task : Interrupt processing Routine |
+----------------------------------------------------------------------------+
| Input Parameters : int irq : irq number |
| void *d : void pointer |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static void apci035_interrupt(int irq, void *d) static void apci035_interrupt(int irq, void *d)
{ {
struct comedi_device *dev = d; struct comedi_device *dev = d;
......
/**
@verbatim
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.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
@endverbatim
*/
/* /*
* Copyright (C) 2004,2005 ADDI-DATA GmbH for the source code of this module.
+-----------------------------------------------------------------------+ *
| (C) ADDI-DATA GmbH Dieselstraße 3 D-77833 Ottersweier | * ADDI-DATA GmbH
+-----------------------------------------------------------------------+ * Dieselstrasse 3
| Tel : +49 (0) 7223/9493-0 | email : info@addi-data.com | * D-77833 Ottersweier
| Fax : +49 (0) 7223/9493-92 | Internet : http://www.addi-data.com | * Tel: +19(0)7223/9493-0
+-------------------------------+---------------------------------------+ * Fax: +49(0)7223/9493-92
| Project : APCI-1500 | Compiler : GCC | * http://www.addi-data.com
| Module name : hwdrv_apci1500.c| Version : 2.96 | * info@addi-data.com
+-------------------------------+---------------------------------------+ *
| Project manager: Eric Stolz | Date : 02/12/2002 | * 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
| Description : Hardware Layer Access For APCI-1500 | * Foundation; either version 2 of the License, or (at your option) any later
+-----------------------------------------------------------------------+ * version.
| UPDATES | *
+----------+-----------+------------------------------------------------+ * This program is distributed in the hope that it will be useful, but WITHOUT
| Date | Author | Description of updates | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+----------+-----------+------------------------------------------------+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
| | | | * details.
| | | | *
| | | | */
+----------+-----------+------------------------------------------------+
*/
/********* Definitions for APCI-1500 card *****/
/* Card Specific information */ /* Card Specific information */
#define APCI1500_ADDRESS_RANGE 4 #define APCI1500_ADDRESS_RANGE 4
...@@ -153,83 +130,29 @@ static int i_TimerCounter1Enabled, i_TimerCounter2Enabled, ...@@ -153,83 +130,29 @@ static int i_TimerCounter1Enabled, i_TimerCounter2Enabled,
i_WatchdogCounter3Enabled; i_WatchdogCounter3Enabled;
/* /*
+----------------------------------------------------------------------------+ * An event can be generated for each port. The first event is related to the
| Function Name : int apci1500_di_config | * first 8 channels (port 1) and the second to the following 6 channels (port 2)
| (struct comedi_device *dev,struct comedi_subdevice *s, | * An interrupt is generated when one or both events have occurred.
| struct comedi_insn *insn,unsigned int *data) | *
+----------------------------------------------------------------------------+ * data[0] Number of the input port on which the event will take place (1 or 2)
| Task : An event can be generated for each port. | * data[1] The event logic for port 1 has three possibilities:
| The first event is related to the first 8 channels | * APCI1500_AND This logic links the inputs with an AND logic.
| (port 1) and the second to the following 6 channels | * APCI1500_OR This logic links the inputs with a OR logic.
| (port 2). An interrupt is generated when one or both | * APCI1500_OR_PRIORITY This logic links the inputs with a priority OR
| events have occurred | * logic. Input 1 has the highest priority level
+----------------------------------------------------------------------------+ * and input 8 the smallest.
| Input Parameters : struct comedi_device *dev : Driver handle | * For the second port the user has 1 possibility:
| unsigned int *data : Data Pointer contains | * APCI1500_OR This logic links the inputs with a polarity OR logic
| configuration parameters as below | * data[2] These 8-character word for port1 and 6-character word for port 2
| | * give the mask of the event. Each place gives the state of the input
| data[0] :Number of the input port on | * channels and can have one of these six characters
| which the event will take place | * 0 This input must be on 0
| (1 or 2) * 1 This input must be on 1
| data[1] : The event logic for port 1 has | * 2 This input reacts to a falling edge
| three possibilities | * 3 This input reacts to a rising edge
| :0 APCI1500_AND :This logic | * 4 This input reacts to both edges
| links | * 5 This input is not used for event
| the inputs | */
| with an AND |
| logic. |
| 1 APCI1500_OR :This logic |
| links |
| the inputs |
| with a |
| OR logic. |
| 2 APCI1500_OR_PRIORITY |
| :This logic |
| links |
| the inputs |
| with a |
| priority |
| OR logic. |
| Input 1 |
| has the |
| highest |
| priority |
| level and |
| input 8 |
| the smallest|
| For the second port the user has|
| 1 possibility: |
| APCI1500_OR :This logic |
| links |
| the inputs |
| with a |
| polarity |
| OR logic |
| data[2] : These 8-character word for port1|
| and 6-character word for port 2 |
| give the mask of the event. |
| Each place gives the state |
| of the input channels and can |
| have one of these six characters|
| |
| 0 : This input must be on 0 |
| 1 : This input must be on 1 |
| 2 : This input reacts to |
| a falling edge |
| 3 : This input reacts to a |
| rising edge |
| 4 : This input reacts to both edges |
|
| 5 : This input is not |
| used for event |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_di_config(struct comedi_device *dev, static int apci1500_di_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -537,27 +460,11 @@ static int apci1500_di_config(struct comedi_device *dev, ...@@ -537,27 +460,11 @@ static int apci1500_di_config(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Allows or disallows a port event
| Function Name : int apci1500_di_write | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] 0 = Start input event, 1 = Stop input event
| struct comedi_insn *insn,unsigned int *data) | * data[1] Number of port (1 or 2)
+----------------------------------------------------------------------------+ */
| Task : Allows or disallows a port event |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int ui_Channel : Channel number to read |
| unsigned int *data : Data Pointer to read status |
| data[0] :0 Start input event
| 1 Stop input event
| data[1] :No of port (1 or 2)
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_di_write(struct comedi_device *dev, static int apci1500_di_write(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -748,24 +655,8 @@ static int apci1500_di_write(struct comedi_device *dev, ...@@ -748,24 +655,8 @@ static int apci1500_di_write(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Return the status of the digital input
| Function Name : int apci1500_di_read | */
| (struct comedi_device *dev,struct comedi_subdevice *s, |
| struct comedi_insn *insn,unsigned int *data) |
+----------------------------------------------------------------------------+
| Task : Return the status of the digital input |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int ui_Channel : Channel number to read |
| unsigned int *data : Data Pointer to read status |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_di_read(struct comedi_device *dev, static int apci1500_di_read(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -915,33 +806,11 @@ static int apci1500_di_insn_bits(struct comedi_device *dev, ...@@ -915,33 +806,11 @@ static int apci1500_di_insn_bits(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Configures the digital output memory and the digital output error interrupt
| Function Name : int apci1500_do_config *
| (struct comedi_device *dev,struct comedi_subdevice *s struct comedi_insn * data[1] 1 = Enable the voltage error interrupt
| *insn,unsigned int *data) | * 2 = Disable the voltage error interrupt
| | */
+----------------------------------------------------------------------------+
| Task : Configures the digital output memory and the digital
| output error interrupt |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| struct comedi_subdevice *s, :pointer to subdevice structure
| struct comedi_insn *insn :pointer to insn structure |
| data[0] :1:Memory on |
| 0:Memory off |
| data[1] :1 Enable the voltage error interrupt
| :0 Disable the voltage error interrupt |
| |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_do_config(struct comedi_device *dev, static int apci1500_do_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -954,24 +823,8 @@ static int apci1500_do_config(struct comedi_device *dev, ...@@ -954,24 +823,8 @@ static int apci1500_do_config(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Writes port value to the selected port
| Function Name : int apci1500_do_write | */
| (struct comedi_device *dev,struct comedi_subdevice *s, |
| struct comedi_insn *insn,unsigned int *data) |
+----------------------------------------------------------------------------+
| Task : Writes port value To the selected port |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int ui_NoOfChannels : No Of Channels To Write |
| unsigned int *data : Data Pointer to read status |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_do_write(struct comedi_device *dev, static int apci1500_do_write(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -1125,53 +978,19 @@ static int apci1500_do_write(struct comedi_device *dev, ...@@ -1125,53 +978,19 @@ static int apci1500_do_write(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Configures The Watchdog
| Function Name : int apci1500_timer_config(comedi_device *
| *dev,struct comedi_subdevice *s,struct comedi_insn *insn,unsigned int *data)| * data[0] 0 = APCI1500_115_KHZ, 1 = APCI1500_3_6_KHZ, 2 = APCI1500_1_8_KHZ
| | * data[1] 0 = Counter1/Timer1, 1 = Counter2/Timer2, 2 = Counter3/Watchdog
+----------------------------------------------------------------------------+ * data[2] 0 = Counter, 1 = Timer/Watchdog
| Task : Configures The Watchdog | * data[3] This parameter has two meanings. If the counter/timer is used as
+----------------------------------------------------------------------------+ * a counter the limit value of the counter is given. If the counter/timer
| Input Parameters : struct comedi_device *dev : Driver handle | * is used as a timer, the divider factor for the output is given.
| struct comedi_subdevice *s, :pointer to subdevice structure * data[4] 0 = APCI1500_CONTINUOUS, 1 = APCI1500_SINGLE
| struct comedi_insn *insn :pointer to insn structure | * data[5] 0 = Software Trigger, 1 = Hardware Trigger
| unsigned int *data : Data Pointer to read status data[0] : 2 APCI1500_1_8_KHZ * data[6] 0 = Software gate, 1 = Hardware gate
| 1 APCI1500_3_6_KHZ | * data[7] 0 = Interrupt Disable, 1 = Interrupt Enable
| 0 APCI1500_115_KHZ */
| data[1] : 0 Counter1/Timer1
| 1 Counter2/Timer2
| 2 Counter3/Watchdog
| data[2] : 0 Counter
| 1 Timer/Watchdog
| data[3] : This parameter has |
| two meanings. |
| - If the counter/timer |
| is used as a counter |
| the limit value of |
| the counter is given |
| |
| - If the counter/timer |
| is used as a timer, |
| the divider factor |
| for the output is |
| given.
| data[4] : 0 APCI1500_CONTINUOUS
| 1 APCI1500_SINGLE
| data[5] : 0 Software Trigger
| 1 Hardware Trigger
|
| data[6] :0 Software gate
| 1 Hardware gate
| data[7] :0 Interrupt Disable
| 1 Interrupt Enable
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_timer_config(struct comedi_device *dev, static int apci1500_timer_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -1663,33 +1482,12 @@ static int apci1500_timer_config(struct comedi_device *dev, ...@@ -1663,33 +1482,12 @@ static int apci1500_timer_config(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Start / Stop or trigger the timer counter or Watchdog
| Function Name : int apci1500_timer_write *
| (struct comedi_device *dev,struct comedi_subdevice *s, * data[0] 0 = Counter1/Timer1, 1 = Counter2/Timer2, 2 = Counter3/Watchdog
| struct comedi_insn *insn,unsigned int *data); | * data[1] 0 = Start, 1 = Stop, 2 = Trigger
+----------------------------------------------------------------------------+ * data[2] 0 = Counter, 1 = Timer/Watchdog
| Task : Start / Stop or trigger the timer counter or Watchdog | */
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| struct comedi_subdevice *s, :pointer to subdevice structure
| struct comedi_insn *insn :pointer to insn structure |
| unsigned int *data : Data Pointer to read status |
| data[0] : 0 Counter1/Timer1
| 1 Counter2/Timer2
| 2 Counter3/Watchdog
| data[1] : 0 start
| 1 stop
| 2 Trigger
| data[2] : 0 Counter
| 1 Timer/Watchdog
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_timer_write(struct comedi_device *dev, static int apci1500_timer_write(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -1959,29 +1757,10 @@ static int apci1500_timer_write(struct comedi_device *dev, ...@@ -1959,29 +1757,10 @@ static int apci1500_timer_write(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Read The Watchdog
| Function Name : int apci1500_timer_bits | *
| (struct comedi_device *dev,struct comedi_subdevice *s,struct comedi_insn *insn, * data[0] 0 = Counter1/Timer1, 1 = Counter2/Timer2, 2 = Counter3/Watchdog
| unsigned int *data); | */
+----------------------------------------------------------------------------+
| Task : Read The Watchdog |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| struct comedi_subdevice *s, :pointer to subdevice structure
| struct comedi_insn *insn :pointer to insn structure |
| unsigned int *data : Data Pointer to read status |
| data[0] : 0 Counter1/Timer1
| 1 Counter2/Timer2
| 2 Counter3/Watchdog
|
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_timer_bits(struct comedi_device *dev, static int apci1500_timer_bits(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -2133,27 +1912,11 @@ static int apci1500_timer_bits(struct comedi_device *dev, ...@@ -2133,27 +1912,11 @@ static int apci1500_timer_bits(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Read the interrupt mask
| Function Name : int apci1500_timer_read | *
| (struct comedi_device *dev,struct comedi_subdevice *s,struct comedi_insn *insn, * data[0] The interrupt mask value
| unsigned int *data); | * data[1] Channel Number
+----------------------------------------------------------------------------+ */
| Task : Read the interrupt mask |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| struct comedi_subdevice *s, :pointer to subdevice structure
| struct comedi_insn *insn :pointer to insn structure |
| unsigned int *data : Data Pointer to read status |
+----------------------------------------------------------------------------+
| Output Parameters : -- data[0]:The interrupt mask value data[1]:Channel no
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_timer_read(struct comedi_device *dev, static int apci1500_timer_read(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -2166,27 +1929,8 @@ static int apci1500_timer_read(struct comedi_device *dev, ...@@ -2166,27 +1929,8 @@ static int apci1500_timer_read(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Configures the interrupt registers
| Function Name : int apci1500_do_bits | */
| (struct comedi_device *dev,struct comedi_subdevice *s,struct comedi_insn *insn,
| unsigned int *data); |
+----------------------------------------------------------------------------+
| Task : Configures the interrupt registers |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| struct comedi_subdevice *s, :pointer to subdevice structure
| struct comedi_insn *insn :pointer to insn structure |
| unsigned int *data : Data Pointer |
|
+----------------------------------------------------------------------------+
| Output Parameters : --
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_do_bits(struct comedi_device *dev, static int apci1500_do_bits(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -2310,23 +2054,6 @@ static int apci1500_do_bits(struct comedi_device *dev, ...@@ -2310,23 +2054,6 @@ static int apci1500_do_bits(struct comedi_device *dev,
return insn->n; return insn->n;
} }
/*
+----------------------------------------------------------------------------+
| Function Name : static void apci1500_interrupt
| (int irq , void *d) |
+----------------------------------------------------------------------------+
| Task : Interrupt handler |
+----------------------------------------------------------------------------+
| Input Parameters : int irq : irq number |
| void *d : void pointer |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static void apci1500_interrupt(int irq, void *d) static void apci1500_interrupt(int irq, void *d)
{ {
...@@ -2505,20 +2232,6 @@ static void apci1500_interrupt(int irq, void *d) ...@@ -2505,20 +2232,6 @@ static void apci1500_interrupt(int irq, void *d)
return; return;
} }
/*
+----------------------------------------------------------------------------+
| Function Name : int apci1500_reset(struct comedi_device *dev)
+----------------------------------------------------------------------------+
| Task :resets all the registers |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : |
| |
+----------------------------------------------------------------------------+
*/
static int apci1500_reset(struct comedi_device *dev) static int apci1500_reset(struct comedi_device *dev)
{ {
struct addi_private *devpriv = dev->private; struct addi_private *devpriv = dev->private;
......
/**
@verbatim
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.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
@endverbatim
*/
/* /*
* Copyright (C) 2004,2005 ADDI-DATA GmbH for the source code of this module.
+-----------------------------------------------------------------------+ *
| (C) ADDI-DATA GmbH Dieselstraße 3 D-77833 Ottersweier | * ADDI-DATA GmbH
+-----------------------------------------------------------------------+ * Dieselstrasse 3
| Tel : +49 (0) 7223/9493-0 | email : info@addi-data.com | * D-77833 Ottersweier
| Fax : +49 (0) 7223/9493-92 | Internet : http://www.addi-data.com | * Tel: +19(0)7223/9493-0
+-------------------------------+---------------------------------------+ * Fax: +49(0)7223/9493-92
| Project : APCI-1564 | Compiler : GCC | * http://www.addi-data.com
| Module name : hwdrv_apci1564.c| Version : 2.96 | * info@addi-data.com
+-------------------------------+---------------------------------------+ *
| Project manager: Eric Stolz | Date : 02/12/2002 | * 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
| Description : Hardware Layer Access For APCI-1564 | * Foundation; either version 2 of the License, or (at your option) any later
+-----------------------------------------------------------------------+ * version.
| UPDATES | *
+----------+-----------+------------------------------------------------+ * This program is distributed in the hope that it will be useful, but WITHOUT
| Date | Author | Description of updates | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+----------+-----------+------------------------------------------------+ * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
| | | | * details.
| | | | *
| | | | */
+----------+-----------+------------------------------------------------+
*/
/********* Definitions for APCI-1564 card *****/
#define APCI1564_ADDRESS_RANGE 128 #define APCI1564_ADDRESS_RANGE 128
...@@ -115,32 +92,13 @@ static unsigned int ui_InterruptStatus_1564; ...@@ -115,32 +92,13 @@ static unsigned int ui_InterruptStatus_1564;
static unsigned int ui_InterruptData, ui_Type; static unsigned int ui_InterruptData, ui_Type;
/* /*
+----------------------------------------------------------------------------+ * Configures the digital input Subdevice
| Function Name : int apci1564_di_config | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] 1 = Enable interrupt, 0 = Disable interrupt
| struct comedi_insn *insn,unsigned int *data) | * data[1] 0 = ADDIDATA Interrupt OR LOGIC, 1 = ADDIDATA Interrupt AND LOGIC
+----------------------------------------------------------------------------+ * data[2] Interrupt mask for the mode 1
| Task : Configures the digital input Subdevice | * data[3] Interrupt mask for the mode 2
+----------------------------------------------------------------------------+ */
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| |
| data[0] : 1 Enable Digital Input Interrupt |
| 0 Disable Digital Input Interrupt |
| data[1] : 0 ADDIDATA Interrupt OR LOGIC |
| : 1 ADDIDATA Interrupt AND LOGIC |
| data[2] : Interrupt mask for the mode 1 |
| data[3] : Interrupt mask for the mode 2 |
| |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_di_config(struct comedi_device *dev, static int apci1564_di_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -182,30 +140,11 @@ static int apci1564_di_insn_bits(struct comedi_device *dev, ...@@ -182,30 +140,11 @@ static int apci1564_di_insn_bits(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Configures The Digital Output Subdevice.
| Function Name : int apci1564_do_config | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[1] 0 = Disable VCC Interrupt, 1 = Enable VCC Interrupt
| struct comedi_insn *insn,unsigned int *data) | * data[2] 0 = Disable CC Interrupt, 1 = Enable CC Interrupt
+----------------------------------------------------------------------------+ */
| Task : Configures The Digital Output Subdevice. |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| |
| data[1] : 1 Enable VCC Interrupt |
| 0 Disable VCC Interrupt |
| data[2] : 1 Enable CC Interrupt |
| 0 Disable CC Interrupt |
| |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_do_config(struct comedi_device *dev, static int apci1564_do_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -259,35 +198,16 @@ static int apci1564_do_insn_bits(struct comedi_device *dev, ...@@ -259,35 +198,16 @@ static int apci1564_do_insn_bits(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Configures The Timer, Counter or Watchdog
| Function Name : int apci1564_timer_config | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] Configure as: 0 = Timer, 1 = Counter, 2 = Watchdog
| struct comedi_insn *insn,unsigned int *data) | * data[1] 1 = Enable Interrupt, 0 = Disable Interrupt
+----------------------------------------------------------------------------+ * data[2] Time Unit
| Task : Configures The Timer , Counter or Watchdog | * data[3] Reload Value
+----------------------------------------------------------------------------+ * data[4] Timer Mode
| Input Parameters : struct comedi_device *dev : Driver handle | * data[5] Timer Counter Watchdog Number
| unsigned int *data : Data Pointer contains | * data[6] Counter Direction
| configuration parameters as below | */
| |
| data[0] : 0 Configure As Timer |
| 1 Configure As Counter |
| 2 Configure As Watchdog |
| data[1] : 1 Enable Interrupt |
| 0 Disable Interrupt |
| data[2] : Time Unit |
| data[3] : Reload Value |
| data[4] : Timer Mode |
| data[5] : Timer Counter Watchdog Number|
data[6] : Counter Direction
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_timer_config(struct comedi_device *dev, static int apci1564_timer_config(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -382,31 +302,11 @@ static int apci1564_timer_config(struct comedi_device *dev, ...@@ -382,31 +302,11 @@ static int apci1564_timer_config(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Start / Stop The Selected Timer, Counter or Watchdog
| Function Name : int apci1564_timer_write | *
| (struct comedi_device *dev,struct comedi_subdevice *s, | * data[0] Configure as: 0 = Timer, 1 = Counter, 2 = Watchdog
| struct comedi_insn *insn,unsigned int *data) | * data[1] 0 = Stop, 1 = Start, 2 = Trigger Clear (Only Counter)
+----------------------------------------------------------------------------+ */
| Task : Start / Stop The Selected Timer , Counter or Watchdog |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| |
| data[0] : 0 Timer |
| 1 Counter |
| 2 Watchdog | | data[1] : 1 Start |
| 0 Stop |
| 2 Trigger |
| Clear (Only Counter) |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_timer_write(struct comedi_device *dev, static int apci1564_timer_write(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -470,26 +370,8 @@ static int apci1564_timer_write(struct comedi_device *dev, ...@@ -470,26 +370,8 @@ static int apci1564_timer_write(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Read The Selected Timer, Counter or Watchdog
| Function Name : int apci1564_timer_read | */
| (struct comedi_device *dev,struct comedi_subdevice *s, |
| struct comedi_insn *insn,unsigned int *data) |
+----------------------------------------------------------------------------+
| Task : Read The Selected Timer , Counter or Watchdog |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev : Driver handle |
| unsigned int *data : Data Pointer contains |
| configuration parameters as below |
| |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_timer_read(struct comedi_device *dev, static int apci1564_timer_read(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -537,22 +419,8 @@ static int apci1564_timer_read(struct comedi_device *dev, ...@@ -537,22 +419,8 @@ static int apci1564_timer_read(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Reads the interrupt status register
| Function Name : int apci1564_do_read | */
| (struct comedi_device *dev,struct comedi_subdevice *s, |
| struct comedi_insn *insn,unsigned int *data) |
+----------------------------------------------------------------------------+
| Task :Reads the interrupt status register |
+----------------------------------------------------------------------------+
| Input Parameters : |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_do_read(struct comedi_device *dev, static int apci1564_do_read(struct comedi_device *dev,
struct comedi_subdevice *s, struct comedi_subdevice *s,
struct comedi_insn *insn, struct comedi_insn *insn,
...@@ -563,22 +431,8 @@ static int apci1564_do_read(struct comedi_device *dev, ...@@ -563,22 +431,8 @@ static int apci1564_do_read(struct comedi_device *dev,
} }
/* /*
+----------------------------------------------------------------------------+ * Interrupt handler for the interruptible digital inputs
| Function Name : static void apci1564_interrupt */
| (int irq , void *d) |
+----------------------------------------------------------------------------+
| Task : Interrupt handler for the interruptible digital inputs |
+----------------------------------------------------------------------------+
| Input Parameters : int irq : irq number |
| void *d : void pointer |
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : TRUE : No error occur |
| : FALSE : Error occur. Return the error |
| |
+----------------------------------------------------------------------------+
*/
static void apci1564_interrupt(int irq, void *d) static void apci1564_interrupt(int irq, void *d)
{ {
struct comedi_device *dev = d; struct comedi_device *dev = d;
...@@ -724,21 +578,6 @@ static void apci1564_interrupt(int irq, void *d) ...@@ -724,21 +578,6 @@ static void apci1564_interrupt(int irq, void *d)
return; return;
} }
/*
+----------------------------------------------------------------------------+
| Function Name : int apci1564_reset(struct comedi_device *dev)
+----------------------------------------------------------------------------+
| Task :resets all the registers |
+----------------------------------------------------------------------------+
| Input Parameters : struct comedi_device *dev
+----------------------------------------------------------------------------+
| Output Parameters : -- |
+----------------------------------------------------------------------------+
| Return Value : |
| |
+----------------------------------------------------------------------------+
*/
static int apci1564_reset(struct comedi_device *dev) static int apci1564_reset(struct comedi_device *dev)
{ {
struct addi_private *devpriv = dev->private; struct addi_private *devpriv = dev->private;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment