|
@@ -199,6 +199,7 @@ static int tiadc_buffer_predisable(struct iio_dev *indio_dev)
|
|
tiadc_writel(adc_dev, REG_IRQCLR, (IRQENB_FIFO1THRES |
|
|
tiadc_writel(adc_dev, REG_IRQCLR, (IRQENB_FIFO1THRES |
|
|
IRQENB_FIFO1OVRRUN | IRQENB_FIFO1UNDRFLW));
|
|
IRQENB_FIFO1OVRRUN | IRQENB_FIFO1UNDRFLW));
|
|
am335x_tsc_se_clr(adc_dev->mfd_tscadc, adc_dev->buffer_en_ch_steps);
|
|
am335x_tsc_se_clr(adc_dev->mfd_tscadc, adc_dev->buffer_en_ch_steps);
|
|
|
|
+ adc_dev->buffer_en_ch_steps = 0;
|
|
|
|
|
|
/* Flush FIFO of leftover data in the time it takes to disable adc */
|
|
/* Flush FIFO of leftover data in the time it takes to disable adc */
|
|
fifo1count = tiadc_readl(adc_dev, REG_FIFO1CNT);
|
|
fifo1count = tiadc_readl(adc_dev, REG_FIFO1CNT);
|
|
@@ -491,6 +492,7 @@ static int tiadc_resume(struct device *dev)
|
|
tiadc_writel(adc_dev, REG_CTRL, restore);
|
|
tiadc_writel(adc_dev, REG_CTRL, restore);
|
|
|
|
|
|
tiadc_step_config(indio_dev);
|
|
tiadc_step_config(indio_dev);
|
|
|
|
+ am335x_tsc_se_set(adc_dev->mfd_tscadc, adc_dev->buffer_en_ch_steps);
|
|
|
|
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|