Skip to content

Commit

Permalink
staging: comedi: addi_eeprom: rename 'pc_PCIChipInformation'
Browse files Browse the repository at this point in the history
This variable is the pointer to the string name of the eeprom type
found on the board. This name comes from the boardinfo of the
driver.

For aesthetic reasons, rename it to simply 'type'.

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>
  • Loading branch information
H Hartley Sweeten authored and Greg Kroah-Hartman committed Oct 30, 2012
1 parent f9d8344 commit 6baf510
Showing 1 changed file with 34 additions and 45 deletions.
79 changes: 34 additions & 45 deletions drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ static void v_EepromWaitBusy(unsigned long iobase)
}

static unsigned short w_EepromReadWord(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
unsigned short w_EepromStartAddress)
{
unsigned char b_Counter = 0;
Expand All @@ -220,9 +220,7 @@ static unsigned short w_EepromReadWord(unsigned long iobase,
unsigned short w_ReadWord = 0;

/* Test the PCI chip type */
if ((!strcmp(pc_PCIChipInformation, "S5920")) ||
(!strcmp(pc_PCIChipInformation, "S5933")))
{
if (!strcmp(type, "S5920") || !strcmp(type, "S5933")) {
for (b_Counter = 0; b_Counter < 2; b_Counter++)
{
b_SelectedAddressLow = (w_EepromStartAddress + b_Counter) % 256; /* Read the low 8 bit part */
Expand Down Expand Up @@ -276,10 +274,9 @@ static unsigned short w_EepromReadWord(unsigned long iobase,
} /* for (b_Counter=0; b_Counter<2; b_Counter++) */

w_ReadWord = (b_ReadLowByte | (((unsigned short) b_ReadHighByte) * 256));
} /* end of if ((!strcmp(pc_PCIChipInformation, "S5920")) || (!strcmp(pc_PCIChipInformation, "S5933"))) */
}

if (!strcmp(pc_PCIChipInformation, "93C76"))
{
if (!strcmp(type, "93C76")) {
/* Read 16 bit from the EEPROM 93C76 */
v_EepromCs76Read(iobase, w_EepromStartAddress, &w_ReadWord);
}
Expand All @@ -288,58 +285,57 @@ static unsigned short w_EepromReadWord(unsigned long iobase,
}

static int i_EepromReadDigitalInputHeader(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
unsigned short w_Address,
struct str_DigitalInputHeader *s_Header)
{
unsigned short w_Temp;

/* read nbr of channels */
s_Header->w_Nchannel = w_EepromReadWord(iobase, pc_PCIChipInformation,
s_Header->w_Nchannel = w_EepromReadWord(iobase, type,
0x100 + w_Address + 6);

/* interruptible or not */
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 8);
s_Header->b_Interruptible = (unsigned char) (w_Temp >> 7) & 0x01;

/* How many interruptible logic */
s_Header->w_NinterruptLogic = w_EepromReadWord(iobase,
pc_PCIChipInformation,
s_Header->w_NinterruptLogic = w_EepromReadWord(iobase, type,
0x100 + w_Address + 10);

return 0;
}

static int i_EepromReadDigitalOutputHeader(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
unsigned short w_Address,
struct str_DigitalOutputHeader *s_Header)
{
/* Read Nbr channels */
s_Header->w_Nchannel = w_EepromReadWord(iobase, pc_PCIChipInformation,
s_Header->w_Nchannel = w_EepromReadWord(iobase, type,
0x100 + w_Address + 6);
return 0;
}

#if 0
static int i_EepromReadTimerHeader(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
unsigned short w_Address,
struct str_TimerMainHeader *s_Header)
{

unsigned short i, w_Size = 0, w_Temp;

/* Read No of Timer */
s_Header->w_Ntimer = w_EepromReadWord(iobase, pc_PCIChipInformation,
s_Header->w_Ntimer = w_EepromReadWord(iobase, type,
0x100 + w_Address + 6);
/* Read header size */
for (i = 0; i < s_Header->w_Ntimer; i++) {
s_Header->s_TimerDetails[i].w_HeaderSize =
w_EepromReadWord(iobase, pc_PCIChipInformation,
w_EepromReadWord(iobase, type,
0x100 + w_Address + 8 + w_Size + 0);
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 8 + w_Size + 2);

/* Read Resolution */
Expand All @@ -350,7 +346,7 @@ static int i_EepromReadTimerHeader(unsigned long iobase,
s_Header->s_TimerDetails[i].b_Mode =
(unsigned char) (w_Temp >> 4) & 0x3F;

w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 8 + w_Size + 4);

/* Read MinTiming */
Expand All @@ -366,44 +362,42 @@ static int i_EepromReadTimerHeader(unsigned long iobase,
#endif

static int i_EepromReadAnlogOutputHeader(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
unsigned short w_Address,
struct str_AnalogOutputHeader *s_Header)
{
unsigned short w_Temp;

/* No of channels for 1st hard component */
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 10);
s_Header->w_Nchannel = (w_Temp >> 4) & 0x03FF;
/* Resolution for 1st hard component */
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 16);
s_Header->b_Resolution = (unsigned char) (w_Temp >> 8) & 0xFF;
return 0;
}

/* Reads only for ONE hardware component */
static int i_EepromReadAnlogInputHeader(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
unsigned short w_Address,
struct str_AnalogInputHeader *s_Header)
{
unsigned short w_Temp, w_Offset;
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 10);
s_Header->w_Nchannel = (w_Temp >> 4) & 0x03FF;
s_Header->w_MinConvertTiming = w_EepromReadWord(iobase,
pc_PCIChipInformation,
s_Header->w_MinConvertTiming = w_EepromReadWord(iobase, type,
0x100 + w_Address + 16);
s_Header->w_MinDelayTiming = w_EepromReadWord(iobase,
pc_PCIChipInformation,
s_Header->w_MinDelayTiming = w_EepromReadWord(iobase, type,
0x100 + w_Address + 30);
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 20);
s_Header->b_HasDma = (w_Temp >> 13) & 0x01; /* whether dma present or not */

w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + 72); /* reading Y */
w_Temp = w_Temp & 0x00FF;
if (w_Temp) /* Y>0 */
Expand All @@ -417,15 +411,15 @@ static int i_EepromReadAnlogInputHeader(unsigned long iobase,
}

/* read Resolution */
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + w_Address + w_Offset);
s_Header->b_Resolution = w_Temp & 0x001F; /* last 5 bits */

return 0;
}

static int i_EepromReadMainHeader(unsigned long iobase,
char *pc_PCIChipInformation,
char *type,
struct comedi_device *dev)
{
const struct addi_board *this_board = comedi_board(dev);
Expand All @@ -440,25 +434,24 @@ static int i_EepromReadMainHeader(unsigned long iobase,
struct str_AnalogInputHeader s_AnalogInputHeader;

/* Read size */
s_MainHeader.w_HeaderSize = w_EepromReadWord(iobase,
pc_PCIChipInformation,
s_MainHeader.w_HeaderSize = w_EepromReadWord(iobase, type,
0x100 + 8);

/* Read nbr of functionality */
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + 10);
s_MainHeader.b_Nfunctions = (unsigned char) w_Temp & 0x00FF;

/* Read functionality details */
for (i = 0; i < s_MainHeader.b_Nfunctions; i++) {
/* Read Type */
w_Temp = w_EepromReadWord(iobase, pc_PCIChipInformation,
w_Temp = w_EepromReadWord(iobase, type,
0x100 + 12 + w_Count);
s_MainHeader.s_Functions[i].b_Type = (unsigned char) w_Temp & 0x3F;
w_Count = w_Count + 2;
/* Read Address */
s_MainHeader.s_Functions[i].w_Address =
w_EepromReadWord(iobase, pc_PCIChipInformation,
w_EepromReadWord(iobase, type,
0x100 + 12 + w_Count);
w_Count = w_Count + 2;
}
Expand All @@ -468,17 +461,15 @@ static int i_EepromReadMainHeader(unsigned long iobase,

switch (s_MainHeader.s_Functions[i].b_Type) {
case EEPROM_DIGITALINPUT:
i_EepromReadDigitalInputHeader(iobase,
pc_PCIChipInformation,
i_EepromReadDigitalInputHeader(iobase, type,
s_MainHeader.s_Functions[i].w_Address,
&s_DigitalInputHeader);
devpriv->s_EeParameters.i_NbrDiChannel =
s_DigitalInputHeader.w_Nchannel;
break;

case EEPROM_DIGITALOUTPUT:
i_EepromReadDigitalOutputHeader(iobase,
pc_PCIChipInformation,
i_EepromReadDigitalOutputHeader(iobase, type,
s_MainHeader.s_Functions[i].w_Address,
&s_DigitalOutputHeader);
devpriv->s_EeParameters.i_NbrDoChannel =
Expand All @@ -490,8 +481,7 @@ static int i_EepromReadMainHeader(unsigned long iobase,
break;

case EEPROM_ANALOGINPUT:
i_EepromReadAnlogInputHeader(iobase,
pc_PCIChipInformation,
i_EepromReadAnlogInputHeader(iobase, type,
s_MainHeader.s_Functions[i].w_Address,
&s_AnalogInputHeader);
if (!(strcmp(this_board->pc_DriverName, "apci3200")))
Expand All @@ -515,8 +505,7 @@ static int i_EepromReadMainHeader(unsigned long iobase,
break;

case EEPROM_ANALOGOUTPUT:
i_EepromReadAnlogOutputHeader(iobase,
pc_PCIChipInformation,
i_EepromReadAnlogOutputHeader(iobase, type,
s_MainHeader.s_Functions[i].w_Address,
&s_AnalogOutputHeader);
devpriv->s_EeParameters.i_NbrAoChannel =
Expand Down

0 comments on commit 6baf510

Please sign in to comment.