summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorH Hartley Sweeten <hartleys@visionengravers.com>2012-10-29 17:07:45 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-10-30 10:50:14 -0700
commitef4e05f0c881a8a1152ac6f2e24ed0bccc41d045 (patch)
tree04c0278b80bfa4f8f09fbf9180636913c12ae303 /drivers
parent7cd25bf08c2bc4794b026feea0230b9caf787744 (diff)
staging: comedi: addi_eeprom: cleanup i_EepromReadDigitalInputHeader()
Add namespace by renaming this CamelCase function to addi_eeprom_read_di_info(). Refactor the function so that it stores the data from the eeprom directly in the private data instead of using the a struct to pass the data back to i_EepromReadMainHeader(). This allows removing the str_DigitalInputHeader struct. Leave the reads of the unused eeprom data for now. The return value is always 0 and it's never checked. Change it to void. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Cc: Ian Abbott <abbotti@mev.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/staging/comedi/drivers/addi-data/addi_eeprom.c40
1 files changed, 14 insertions, 26 deletions
diff --git a/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c b/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
index 529f9b1341cd..438968c261fd 100644
--- a/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
+++ b/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
@@ -66,12 +66,6 @@ You should also find the complete GPL in the COPYING file accompanying this sour
#define EEPROM_WATCHDOG 5
#define EEPROM_TIMER_WATCHDOG_COUNTER 10
-struct str_DigitalInputHeader {
- unsigned short w_Nchannel;
- unsigned char b_Interruptible;
- unsigned short w_NinterruptLogic;
-};
-
struct str_DigitalOutputHeader {
unsigned short w_Nchannel;
};
@@ -232,25 +226,24 @@ static unsigned short addi_eeprom_readw(unsigned long iobase,
return val;
}
-static int i_EepromReadDigitalInputHeader(unsigned long iobase,
- char *type,
- unsigned short w_Address,
- struct str_DigitalInputHeader *s_Header)
+static void addi_eeprom_read_di_info(struct comedi_device *dev,
+ unsigned long iobase,
+ char *type,
+ unsigned short addr)
{
- unsigned short w_Temp;
+ struct addi_private *devpriv = dev->private;
+ unsigned short tmp;
- /* read nbr of channels */
- s_Header->w_Nchannel = addi_eeprom_readw(iobase, type, w_Address + 6);
+ /* Number of channels */
+ tmp = addi_eeprom_readw(iobase, type, addr + 6);
+ devpriv->s_EeParameters.i_NbrDiChannel = tmp;
- /* interruptible or not */
- w_Temp = addi_eeprom_readw(iobase, type, w_Address + 8);
- s_Header->b_Interruptible = (unsigned char) (w_Temp >> 7) & 0x01;
+ /* Interruptible or not */
+ tmp = addi_eeprom_readw(iobase, type, addr + 8);
+ tmp = (tmp >> 7) & 0x01;
/* How many interruptible logic */
- s_Header->w_NinterruptLogic = addi_eeprom_readw(iobase, type,
- w_Address + 10);
-
- return 0;
+ tmp = addi_eeprom_readw(iobase, type, addr + 10);
}
static int i_EepromReadDigitalOutputHeader(unsigned long iobase,
@@ -367,7 +360,6 @@ static int i_EepromReadMainHeader(unsigned long iobase,
const struct addi_board *this_board = comedi_board(dev);
struct addi_private *devpriv = dev->private;
unsigned int ui_Temp;
- struct str_DigitalInputHeader s_DigitalInputHeader;
struct str_DigitalOutputHeader s_DigitalOutputHeader;
/* struct str_TimerMainHeader s_TimerMainHeader,s_WatchdogMainHeader; */
struct str_AnalogOutputHeader s_AnalogOutputHeader;
@@ -390,11 +382,7 @@ static int i_EepromReadMainHeader(unsigned long iobase,
switch (func) {
case EEPROM_DIGITALINPUT:
- i_EepromReadDigitalInputHeader(iobase, type, addr,
- &s_DigitalInputHeader);
-
- devpriv->s_EeParameters.i_NbrDiChannel =
- s_DigitalInputHeader.w_Nchannel;
+ addi_eeprom_read_di_info(dev, iobase, type, addr);
break;
case EEPROM_DIGITALOUTPUT: