Skip to content

Commit

Permalink
iio: stmpe-adc: Use wait_for_completion_timeout
Browse files Browse the repository at this point in the history
Use wait_for_completion_timeout instead of
wait_for_completion_interuptible_timeout.

The interruptible variant gets constantly interrupted if a user
program is compiled with the -pg option.
The killable variant was not used due to the fact that a second
program, reading on this device, that gets killed is then also killing
that wait.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
  • Loading branch information
Philippe Schenker authored and jic23 committed May 11, 2019
1 parent 4bd44bb commit e813dde
Showing 1 changed file with 4 additions and 12 deletions.
16 changes: 4 additions & 12 deletions drivers/iio/adc/stmpe-adc.c
Original file line number Diff line number Diff line change
Expand Up @@ -77,15 +77,11 @@ static int stmpe_read_voltage(struct stmpe_adc *info,
stmpe_reg_write(info->stmpe, STMPE_REG_ADC_CAPT,
STMPE_ADC_CH(info->channel));

ret = wait_for_completion_interruptible_timeout
(&info->completion, STMPE_ADC_TIMEOUT);
ret = wait_for_completion_timeout(&info->completion, STMPE_ADC_TIMEOUT);

if (ret <= 0) {
mutex_unlock(&info->lock);
if (ret == 0)
return -ETIMEDOUT;
else
return ret;
return -ETIMEDOUT;
}

*val = info->value;
Expand Down Expand Up @@ -114,15 +110,11 @@ static int stmpe_read_temp(struct stmpe_adc *info,
stmpe_reg_write(info->stmpe, STMPE_REG_TEMP_CTRL,
STMPE_START_ONE_TEMP_CONV);

ret = wait_for_completion_interruptible_timeout
(&info->completion, STMPE_ADC_TIMEOUT);
ret = wait_for_completion_timeout(&info->completion, STMPE_ADC_TIMEOUT);

if (ret <= 0) {
mutex_unlock(&info->lock);
if (ret == 0)
return -ETIMEDOUT;
else
return ret;
return -ETIMEDOUT;
}

/*
Expand Down

0 comments on commit e813dde

Please sign in to comment.