Remove the extra whitespace and the comment cruft in this file.
Signed-off-by: H Hartley Sweeten <[email protected]>
Cc: Ian Abbott <[email protected]>
Cc: Greg Kroah-Hartman <[email protected]>
---
.../staging/comedi/drivers/addi-data/addi_eeprom.c | 561 ---------------------
1 file changed, 561 deletions(-)
diff --git a/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
b/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
index 5d31ecd..2e46a17 100644
--- a/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
+++ b/drivers/staging/comedi/drivers/addi-data/addi_eeprom.c
@@ -77,15 +77,11 @@ struct str_DigitalInputHeader {
};
struct str_DigitalOutputHeader {
-
unsigned short w_Nchannel;
};
-
/* used for timer as well as watchdog */
-
struct str_TimerDetails {
-
unsigned short w_HeaderSize;
unsigned char b_Resolution;
unsigned char b_Mode; /* in case of Watchdog it is
functionality */
@@ -94,13 +90,10 @@ struct str_TimerDetails {
};
struct str_TimerMainHeader {
-
-
unsigned short w_Ntimer;
struct str_TimerDetails s_TimerDetails[4]; /* supports 4 timers
*/
};
-
struct str_AnalogOutputHeader {
unsigned short w_Nchannel;
unsigned char b_Resolution;
@@ -114,11 +107,6 @@ struct str_AnalogInputHeader {
unsigned char b_Resolution;
};
-
- /*****************************************/
- /* Read Header Functions */
- /*****************************************/
-
int i_EepromReadMainHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, struct comedi_device *dev);
@@ -142,9 +130,6 @@ int i_EepromReadAnlogInputHeader(unsigned short
w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, unsigned short w_Address,
struct str_AnalogInputHeader *s_Header);
- /******************************************/
- /* Eeprom Specific Functions */
- /******************************************/
unsigned short w_EepromReadWord(unsigned short w_PCIBoardEepromAddress, char
*pc_PCIChipInformation,
unsigned short w_EepromStartAddress);
void v_EepromWaitBusy(unsigned short w_PCIBoardEepromAddress);
@@ -154,654 +139,212 @@ void v_EepromSendCommand76(unsigned int dw_Address,
unsigned int dw_EepromComman
unsigned char b_DataLengthInBits);
void v_EepromCs76Read(unsigned int dw_Address, unsigned short w_offset,
unsigned short *pw_Value);
-/*
-+----------------------------------------------------------------------------+
-| Function Name : unsigned short w_EepromReadWord
|
-| (unsigned short w_PCIBoardEepromAddress,
|
-| char * pc_PCIChipInformation,
|
-| unsigned short w_EepromStartAddress)
|
-+----------------------------------------------------------------------------+
-| Task : Read from eepromn a word |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| unsigned short w_EepromStartAddress : Selected eeprom
address |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : Read word value from eeprom |
-+----------------------------------------------------------------------------+
-*/
-
unsigned short w_EepromReadWord(unsigned short w_PCIBoardEepromAddress, char
*pc_PCIChipInformation,
unsigned short w_EepromStartAddress)
{
-
unsigned char b_Counter = 0;
-
unsigned char b_ReadByte = 0;
-
unsigned char b_ReadLowByte = 0;
-
unsigned char b_ReadHighByte = 0;
-
unsigned char b_SelectedAddressLow = 0;
-
unsigned char b_SelectedAddressHigh = 0;
-
unsigned short w_ReadWord = 0;
- /**************************/
-
/* Test the PCI chip type */
-
- /**************************/
-
if ((!strcmp(pc_PCIChipInformation, "S5920")) ||
(!strcmp(pc_PCIChipInformation, "S5933")))
{
-
for (b_Counter = 0; b_Counter < 2; b_Counter++)
{
-
b_SelectedAddressLow = (w_EepromStartAddress +
b_Counter) % 256; /* Read the low 8 bit part */
-
b_SelectedAddressHigh = (w_EepromStartAddress +
b_Counter) / 256; /* Read the high 8 bit part */
- /************************************/
-
/* Select the load low address mode */
-
- /************************************/
-
outb(NVCMD_LOAD_LOW, w_PCIBoardEepromAddress + 0x3F);
- /****************/
-
/* Wait on busy */
-
- /****************/
-
v_EepromWaitBusy(w_PCIBoardEepromAddress);
- /************************/
-
/* Load the low address */
-
- /************************/
-
outb(b_SelectedAddressLow,
w_PCIBoardEepromAddress + 0x3E);
- /****************/
-
/* Wait on busy */
-
- /****************/
-
v_EepromWaitBusy(w_PCIBoardEepromAddress);
- /*************************************/
-
/* Select the load high address mode */
-
- /*************************************/
-
outb(NVCMD_LOAD_HIGH, w_PCIBoardEepromAddress + 0x3F);
- /****************/
-
/* Wait on busy */
-
- /****************/
-
v_EepromWaitBusy(w_PCIBoardEepromAddress);
- /*************************/
-
/* Load the high address */
-
- /*************************/
-
outb(b_SelectedAddressHigh,
w_PCIBoardEepromAddress + 0x3E);
- /****************/
-
/* Wait on busy */
-
- /****************/
-
v_EepromWaitBusy(w_PCIBoardEepromAddress);
- /************************/
-
/* Select the READ mode */
-
- /************************/
-
outb(NVCMD_BEGIN_READ, w_PCIBoardEepromAddress + 0x3F);
- /****************/
-
/* Wait on busy */
-
- /****************/
-
v_EepromWaitBusy(w_PCIBoardEepromAddress);
- /*****************************/
-
/* Read data into the EEPROM */
-
- /*****************************/
-
b_ReadByte = inb(w_PCIBoardEepromAddress + 0x3E);
- /****************/
-
/* Wait on busy */
-
- /****************/
-
v_EepromWaitBusy(w_PCIBoardEepromAddress);
- /*********************************/
-
/* Select the upper address part */
-
- /*********************************/
-
if (b_Counter == 0)
{
-
b_ReadLowByte = b_ReadByte;
-
} /* if(b_Counter==0) */
-
else
{
-
b_ReadHighByte = b_ReadByte;
-
} /* if(b_Counter==0) */
-
} /* 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"))
{
-
- /*************************************/
-
/* Read 16 bit from the EEPROM 93C76 */
-
- /*************************************/
-
v_EepromCs76Read(w_PCIBoardEepromAddress, w_EepromStartAddress,
&w_ReadWord);
-
}
return w_ReadWord;
-
}
-/*
-
-+----------------------------------------------------------------------------+
-
-| Function Name : void v_EepromWaitBusy |
-
-| (unsigned short w_PCIBoardEepromAddress)
|
-
-+----------------------------------------------------------------------------+
-
-| Task : Wait the busy flag from PCI controller |
-
-+----------------------------------------------------------------------------+
-
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom base
address |
-
-+----------------------------------------------------------------------------+
-
-| Output Parameters : - |
-
-+----------------------------------------------------------------------------+
-
-| Return Value : - |
-
-+----------------------------------------------------------------------------+
-
-*/
-
void v_EepromWaitBusy(unsigned short w_PCIBoardEepromAddress)
{
-
unsigned char b_EepromBusy = 0;
do
{
-
- /*************/
-
/* IMPORTANT */
-
- /*************/
-
-
/************************************************************************/
-
/* An error has been written in the AMCC 5933 book at the page
B-13 */
-
/* Ex: if you read a byte and look for the busy
statusEEPROM=0x80 and */
-
/* the operator register is AMCC_OP_REG_MCSR+3 */
-
/* unsigned short read EEPROM=0x8000
andAMCC_OP_REG_MCSR+2 */
-
/* unsigned int read EEPROM=0x80000000 and
AMCC_OP_REG_MCSR */
-
-
/************************************************************************/
-
b_EepromBusy = inb(w_PCIBoardEepromAddress + 0x3F);
b_EepromBusy = b_EepromBusy & 0x80;
-
} while (b_EepromBusy == 0x80);
-
}
-/*
-
-+---------------------------------------------------------------------------------+
-
-| Function Name : void v_EepromClock76(unsigned int dw_Address,
|
-
-| unsigned int dw_RegisterValue)
|
-
-+---------------------------------------------------------------------------------+
-
-| Task : This function sends the clocking sequence to the EEPROM.
|
-
-+---------------------------------------------------------------------------------+
-
-| Input Parameters : unsigned int dw_Address : PCI eeprom base address
|
-
-| unsigned int dw_RegisterValue : PCI eeprom register value
to write.|
-
-+---------------------------------------------------------------------------------+
-
-| Output Parameters : -
|
-
-+---------------------------------------------------------------------------------+
-
-| Return Value : -
|
-
-+---------------------------------------------------------------------------------+
-
-*/
-
void v_EepromClock76(unsigned int dw_Address, unsigned int dw_RegisterValue)
{
-
- /************************/
-
/* Set EEPROM clock Low */
-
- /************************/
-
outl(dw_RegisterValue & 0x6, dw_Address);
- /***************/
-
/* Wait 0.1 ms */
-
- /***************/
-
udelay(100);
- /*************************/
-
/* Set EEPROM clock High */
-
- /*************************/
-
outl(dw_RegisterValue | 0x1, dw_Address);
- /***************/
-
/* Wait 0.1 ms */
-
- /***************/
-
udelay(100);
-
}
-/*
-
-+---------------------------------------------------------------------------------+
-
-| Function Name : void v_EepromSendCommand76(unsigned int dw_Address,
|
-
-| unsigned int dw_EepromCommand,
|
-
-| unsigned char b_DataLengthInBits)
|
-
-+---------------------------------------------------------------------------------+
-
-| Task : This function sends a Command to the EEPROM 93C76.
|
-
-+---------------------------------------------------------------------------------+
-
-| Input Parameters : unsigned int dw_Address : PCI eeprom base address
|
-
-| unsigned int dw_EepromCommand : PCI eeprom command to
write. |
-
-| unsigned char b_DataLengthInBits : PCI eeprom command
data length. |
-
-+---------------------------------------------------------------------------------+
-
-| Output Parameters : -
|
-
-+---------------------------------------------------------------------------------+
-
-| Return Value : -
|
-
-+---------------------------------------------------------------------------------+
-
-*/
-
void v_EepromSendCommand76(unsigned int dw_Address, unsigned int
dw_EepromCommand,
unsigned char b_DataLengthInBits)
{
-
char c_BitPos = 0;
-
unsigned int dw_RegisterValue = 0;
- /*****************************/
-
/* Enable EEPROM Chip Select */
-
- /*****************************/
-
dw_RegisterValue = 0x2;
- /********************************************************************/
-
/* Toggle EEPROM's Chip select to get it out of Shift Register Mode */
-
- /********************************************************************/
-
outl(dw_RegisterValue, dw_Address);
- /***************/
-
/* Wait 0.1 ms */
-
- /***************/
-
udelay(100);
- /*******************************************/
-
/* Send EEPROM command - one bit at a time */
-
- /*******************************************/
-
for (c_BitPos = (b_DataLengthInBits - 1); c_BitPos >= 0; c_BitPos--)
{
-
- /**********************************/
-
/* Check if current bit is 0 or 1 */
-
- /**********************************/
-
if (dw_EepromCommand & (1 << c_BitPos))
{
-
- /***********/
-
/* Write 1 */
-
- /***********/
-
dw_RegisterValue = dw_RegisterValue | 0x4;
-
}
-
else
{
-
- /***********/
-
/* Write 0 */
-
- /***********/
-
dw_RegisterValue = dw_RegisterValue & 0x3;
-
}
- /*********************/
-
/* Write the command */
-
- /*********************/
-
outl(dw_RegisterValue, dw_Address);
- /***************/
-
/* Wait 0.1 ms */
-
- /***************/
-
udelay(100);
- /****************************/
-
/* Trigger the EEPROM clock */
-
- /****************************/
-
v_EepromClock76(dw_Address, dw_RegisterValue);
-
}
-
}
-/*
-
-+---------------------------------------------------------------------------------+
-
-| Function Name : void v_EepromCs76Read(unsigned int dw_Address,
|
-
-| unsigned short w_offset,
|
-
-| unsigned short * pw_Value)
|
-
-+---------------------------------------------------------------------------------+
-
-| Task : This function read a value from the EEPROM 93C76.
|
-
-+---------------------------------------------------------------------------------+
-
-| Input Parameters : unsigned int dw_Address : PCI eeprom base address
|
-
-| unsigned short w_offset : Offset of the address to
read |
-
-| unsigned short * pw_Value : PCI eeprom 16 bit read
value. |
-
-+---------------------------------------------------------------------------------+
-
-| Output Parameters : -
|
-
-+---------------------------------------------------------------------------------+
-
-| Return Value : -
|
-
-+---------------------------------------------------------------------------------+
-
-*/
-
void v_EepromCs76Read(unsigned int dw_Address, unsigned short w_offset,
unsigned short *pw_Value)
{
-
char c_BitPos = 0;
-
unsigned int dw_RegisterValue = 0;
-
unsigned int dw_RegisterValueRead = 0;
- /*************************************************/
-
/* Send EEPROM read command and offset to EEPROM */
-
- /*************************************************/
-
v_EepromSendCommand76(dw_Address, (EE_READ << 4) | (w_offset / 2),
EE76_CMD_LEN);
- /*******************************/
-
/* Get the last register value */
-
- /*******************************/
-
dw_RegisterValue = (((w_offset / 2) & 0x1) << 2) | 0x2;
- /*****************************/
-
/* Set the 16-bit value of 0 */
-
- /*****************************/
-
*pw_Value = 0;
- /************************/
-
/* Get the 16-bit value */
-
- /************************/
-
for (c_BitPos = 0; c_BitPos < 16; c_BitPos++)
{
-
- /****************************/
-
/* Trigger the EEPROM clock */
-
- /****************************/
-
v_EepromClock76(dw_Address, dw_RegisterValue);
- /**********************/
-
/* Get the result bit */
-
- /**********************/
-
dw_RegisterValueRead = inl(dw_Address);
- /***************/
-
/* Wait 0.1 ms */
-
- /***************/
-
udelay(100);
- /***************************************/
-
/* Get bit value and shift into result */
-
- /***************************************/
-
if (dw_RegisterValueRead & 0x8)
{
-
- /**********/
-
/* Read 1 */
-
- /**********/
-
*pw_Value = (*pw_Value << 1) | 0x1;
-
}
-
else
{
-
- /**********/
-
/* Read 0 */
-
- /**********/
-
*pw_Value = (*pw_Value << 1);
-
}
-
}
- /*************************/
-
/* Clear all EEPROM bits */
-
- /*************************/
-
dw_RegisterValue = 0x0;
- /********************************************************************/
-
/* Toggle EEPROM's Chip select to get it out of Shift Register Mode */
-
- /********************************************************************/
-
outl(dw_RegisterValue, dw_Address);
- /***************/
-
/* Wait 0.1 ms */
-
- /***************/
-
udelay(100);
-
}
- /******************************************/
- /* EEPROM HEADER READ FUNCTIONS */
- /******************************************/
-
-/*
-+----------------------------------------------------------------------------+
-| Function Name : int i_EepromReadMainHeader(unsigned short
w_PCIBoardEepromAddress, |
-| char * pc_PCIChipInformation,struct
comedi_device *dev) |
-+----------------------------------------------------------------------------+
-| Task : Read from eeprom Main Header |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| struct comedi_device *dev : comedi
device structure |
-|
pointer |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : 0
|
-+----------------------------------------------------------------------------+
-*/
-
int i_EepromReadMainHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, struct comedi_device *dev)
{
@@ -924,27 +467,6 @@ int i_EepromReadMainHeader(unsigned short
w_PCIBoardEepromAddress,
return 0;
}
-/*
-+----------------------------------------------------------------------------+
-| Function Name : int i_EepromReadDigitalInputHeader(unsigned short
|
-| w_PCIBoardEepromAddress,char *pc_PCIChipInformation,
|
-| unsigned short w_Address,struct str_DigitalInputHeader
*s_Header) |
-|
|
-+----------------------------------------------------------------------------+
-| Task : Read Digital Input Header |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| struct str_DigitalInputHeader *s_Header: Digita Input
Header |
-|
Pointer |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : 0
|
-+----------------------------------------------------------------------------+
-*/
int i_EepromReadDigitalInputHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, unsigned short w_Address,
struct str_DigitalInputHeader *s_Header)
@@ -969,27 +491,6 @@ int i_EepromReadDigitalInputHeader(unsigned short
w_PCIBoardEepromAddress,
return 0;
}
-/*
-+----------------------------------------------------------------------------+
-| Function Name : int i_EepromReadDigitalOutputHeader(unsigned short
|
-| w_PCIBoardEepromAddress,char *pc_PCIChipInformation,
|
-| unsigned short w_Address,struct str_DigitalOutputHeader
*s_Header) |
-|
|
-+----------------------------------------------------------------------------+
-| Task : Read Digital Output Header |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| struct str_DigitalOutputHeader *s_Header: Digital
Output Header|
-|
Pointer |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : 0
|
-+----------------------------------------------------------------------------+
-*/
int i_EepromReadDigitalOutputHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, unsigned short w_Address,
struct str_DigitalOutputHeader *s_Header)
@@ -1001,26 +502,6 @@ int i_EepromReadDigitalOutputHeader(unsigned short
w_PCIBoardEepromAddress,
return 0;
}
-/*
-+----------------------------------------------------------------------------+
-| Function Name : int i_EepromReadTimerHeader(unsigned short
w_PCIBoardEepromAddress, |
-| char *pc_PCIChipInformation,WORD w_Address,
|
-| struct str_TimerMainHeader *s_Header)
|
-+----------------------------------------------------------------------------+
-| Task : Read Timer or Watchdog Header |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| struct str_TimerMainHeader *s_Header: Timer Header
|
-|
Pointer |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : 0
|
-+----------------------------------------------------------------------------+
-*/
int i_EepromReadTimerHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, unsigned short w_Address,
struct str_TimerMainHeader *s_Header)
@@ -1066,27 +547,6 @@ int i_EepromReadTimerHeader(unsigned short
w_PCIBoardEepromAddress,
return 0;
}
-/*
-+----------------------------------------------------------------------------+
-| Function Name : int i_EepromReadAnlogOutputHeader(unsigned short
|
-| w_PCIBoardEepromAddress,char *pc_PCIChipInformation,
|
-| unsigned short w_Address,str_AnalogOutputHeader
*s_Header) |
-+----------------------------------------------------------------------------+
-| Task : Read Nalog Output Header |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| str_AnalogOutputHeader *s_Header:Anlog Output Header
|
-|
Pointer |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : 0
|
-+----------------------------------------------------------------------------+
-*/
-
int i_EepromReadAnlogOutputHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, unsigned short w_Address,
struct str_AnalogOutputHeader *s_Header)
@@ -1103,27 +563,6 @@ int i_EepromReadAnlogOutputHeader(unsigned short
w_PCIBoardEepromAddress,
return 0;
}
-/*
-+----------------------------------------------------------------------------+
-| Function Name : int i_EepromReadAnlogInputHeader(unsigned short
|
-| w_PCIBoardEepromAddress,char *pc_PCIChipInformation,
|
-| unsigned short w_Address,struct str_AnalogInputHeader
*s_Header) |
-+----------------------------------------------------------------------------+
-| Task : Read Nalog Output Header |
-+----------------------------------------------------------------------------+
-| Input Parameters : unsigned short w_PCIBoardEepromAddress : PCI eeprom
address |
-|
|
-| char *pc_PCIChipInformation : PCI Chip Type. |
-|
|
-| struct str_AnalogInputHeader *s_Header:Anlog Input
Header |
-|
Pointer |
-+----------------------------------------------------------------------------+
-| Output Parameters : - |
-+----------------------------------------------------------------------------+
-| Return Value : 0
|
-+----------------------------------------------------------------------------+
-*/
-
/* Reads only for ONE hardware component */
int i_EepromReadAnlogInputHeader(unsigned short w_PCIBoardEepromAddress,
char *pc_PCIChipInformation, unsigned short w_Address,
--
1.7.11
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel