diff options
Diffstat (limited to 'drivers/iio/adc/at91_adc.c')
-rw-r--r-- | drivers/iio/adc/at91_adc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/iio/adc/at91_adc.c b/drivers/iio/adc/at91_adc.c index bbba014c9939..89777ed9abd8 100644 --- a/drivers/iio/adc/at91_adc.c +++ b/drivers/iio/adc/at91_adc.c | |||
@@ -1007,8 +1007,11 @@ static int at91_adc_probe(struct platform_device *pdev) | |||
1007 | * the best converted final value between two channels selection | 1007 | * the best converted final value between two channels selection |
1008 | * The formula thus is : Sample and Hold Time = (shtim + 1) / ADCClock | 1008 | * The formula thus is : Sample and Hold Time = (shtim + 1) / ADCClock |
1009 | */ | 1009 | */ |
1010 | shtim = round_up((st->sample_hold_time * adc_clk_khz / | 1010 | if (st->sample_hold_time > 0) |
1011 | 1000) - 1, 1); | 1011 | shtim = round_up((st->sample_hold_time * adc_clk_khz / 1000) |
1012 | - 1, 1); | ||
1013 | else | ||
1014 | shtim = 0; | ||
1012 | 1015 | ||
1013 | reg = AT91_ADC_PRESCAL_(prsc) & st->registers->mr_prescal_mask; | 1016 | reg = AT91_ADC_PRESCAL_(prsc) & st->registers->mr_prescal_mask; |
1014 | reg |= AT91_ADC_STARTUP_(ticks) & st->registers->mr_startup_mask; | 1017 | reg |= AT91_ADC_STARTUP_(ticks) & st->registers->mr_startup_mask; |