diff options
author | Colin Ian King <colin.king@canonical.com> | 2016-11-09 23:12:31 +0000 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2016-11-12 14:38:38 +0000 |
commit | 6c02e33facff34b95b6d67a182b9a0a0b51fabf8 (patch) | |
tree | ac540785f828d3e2b3d6cc7b5d57f319b15284ff /drivers/iio/common | |
parent | 0d8391f3d60f0b544951b4014f433b4c068da293 (diff) | |
download | blackbird-op-linux-6c02e33facff34b95b6d67a182b9a0a0b51fabf8.tar.gz blackbird-op-linux-6c02e33facff34b95b6d67a182b9a0a0b51fabf8.zip |
iio: cros_ec_sensors_core: fix unsigned compared less than zero on status
status is a u8 hence the check if status is less than zero has no effect.
Fix this by replacing status with int ret so the less than zero compare
will correctly detect errors.
Issue found with static analysis with CoverityScan, CID 1375919
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Fixes: 974e6f02e27e ("iio: cros_ec_sensors_core: Add common functions for the ChromeOS EC Sensor Hub")
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
Diffstat (limited to 'drivers/iio/common')
-rw-r--r-- | drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c b/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c index a3be7991355e..416cae5ebbd0 100644 --- a/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c +++ b/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c @@ -291,15 +291,15 @@ int cros_ec_sensors_read_lpc(struct iio_dev *indio_dev, return -EIO; /* Read status byte until EC is not busy. */ - status = cros_ec_sensors_read_until_not_busy(st); - if (status < 0) - return status; + ret = cros_ec_sensors_read_until_not_busy(st); + if (ret < 0) + return ret; /* * Store the current sample id so that we can compare to the * sample id after reading the data. */ - samp_id = status & EC_MEMMAP_ACC_STATUS_SAMPLE_ID_MASK; + samp_id = ret & EC_MEMMAP_ACC_STATUS_SAMPLE_ID_MASK; /* Read all EC data, format it, and store it into data. */ ret = cros_ec_sensors_read_data_unsafe(indio_dev, scan_mask, |