Commit 59747847 authored by H Hartley Sweeten's avatar H Hartley Sweeten Committed by Greg Kroah-Hartman

staging: comedi: s626: #if 0 out the "SAA7146 BUG WORKAROUND"

Until it's determined if this workaround can be removed, block
out the code with an #if 0/#endif and remove the individual
comments on each line.
Signed-off-by: default avatarH Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 68ad0ae0
...@@ -2459,16 +2459,10 @@ static int s626_allocate_dma_buffers(struct comedi_device *dev) ...@@ -2459,16 +2459,10 @@ static int s626_allocate_dma_buffers(struct comedi_device *dev)
static void s626_initialize(struct comedi_device *dev) static void s626_initialize(struct comedi_device *dev)
{ {
/* uint8_t PollList; */
/* uint16_t AdcData; */
/* uint16_t StartVal; */
/* uint16_t index; */
/* unsigned int data[16]; */
dma_addr_t pPhysBuf; dma_addr_t pPhysBuf;
uint16_t chan; uint16_t chan;
int i; int i;
/* enab DEBI and audio pins, enable I2C interface. */ /* enab DEBI and audio pins, enable I2C interface. */
MC_ENABLE(P_MC1, MC1_DEBI | MC1_AUDIO | MC1_I2C); MC_ENABLE(P_MC1, MC1_DEBI | MC1_AUDIO | MC1_I2C);
/* Configure DEBI operating mode. */ /* Configure DEBI operating mode. */
...@@ -2568,38 +2562,50 @@ static void s626_initialize(struct comedi_device *dev) ...@@ -2568,38 +2562,50 @@ static void s626_initialize(struct comedi_device *dev)
/* RPS program performs no explicit mem writes. */ /* RPS program performs no explicit mem writes. */
WR7146(P_RPS1_TOUT, 0); /* Disable RPS timeouts. */ WR7146(P_RPS1_TOUT, 0); /* Disable RPS timeouts. */
/* SAA7146 BUG WORKAROUND. Initialize SAA7146 ADC interface #if 0
* to a known state by invoking ADCs until FB BUFFER 1 /*
* register shows that it is correctly receiving ADC data. * SAA7146 BUG WORKAROUND
* This is necessary because the SAA7146 ADC interface does *
* not start up in a defined state after a PCI reset. * Initialize SAA7146 ADC interface to a known state by
* invoking ADCs until FB BUFFER 1 register shows that it
* is correctly receiving ADC data. This is necessary
* because the SAA7146 ADC interface does not start up in
* a defined state after a PCI reset.
*/ */
/* PollList = EOPL; // Create a simple polling */ {
/* // list for analog input */ uint8_t PollList;
/* // channel 0. */ uint16_t AdcData;
/* ResetADC( dev, &PollList ); */ uint16_t StartVal;
uint16_t index;
/* s626_ai_rinsn(dev,dev->subdevices,NULL,data); //( &AdcData ); // */ unsigned int data[16];
/* //Get initial ADC */
/* //value. */ /* Create a simple polling list for analog input channel 0 */
PollList = EOPL;
/* StartVal = data[0]; */ ResetADC(dev, &PollList);
/* // VERSION 2.01 CHANGE: TIMEOUT ADDED TO PREVENT HANGED EXECUTION. */ /* Get initial ADC value */
/* // Invoke ADCs until the new ADC value differs from the initial */ s626_ai_rinsn(dev, dev->subdevices, NULL, data);
/* // value or a timeout occurs. The timeout protects against the */ StartVal = data[0];
/* // possibility that the driver is restarting and the ADC data is a */
/* // fixed value resulting from the applied ADC analog input being */ /*
/* // unusually quiet or at the rail. */ * VERSION 2.01 CHANGE: TIMEOUT ADDED TO PREVENT HANGED EXECUTION.
*
/* for ( index = 0; index < 500; index++ ) */ * Invoke ADCs until the new ADC value differs from the initial
/* { */ * value or a timeout occurs. The timeout protects against the
/* s626_ai_rinsn(dev,dev->subdevices,NULL,data); */ * possibility that the driver is restarting and the ADC data is a
/* AdcData = data[0]; //ReadADC( &AdcData ); */ * fixed value resulting from the applied ADC analog input being
/* if ( AdcData != StartVal ) */ * unusually quiet or at the rail.
/* break; */ */
/* } */ for (index = 0; index < 500; index++) {
s626_ai_rinsn(dev, dev->subdevices, NULL, data);
AdcData = data[0];
if (AdcData != StartVal)
break;
}
}
#endif /* SAA7146 BUG WORKAROUND */
/* end initADC */ /* end initADC */
......
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