diff options
author | Ingo Molnar <mingo@kernel.org> | 2016-11-11 08:25:07 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2016-11-11 08:25:07 +0100 |
commit | 4c8ee71620d734c8ad129fad085167f56f9ce351 (patch) | |
tree | 87208b0144aa664c96dd8b43bbcaaf1f25af606b /drivers/iio/temperature/maxim_thermocouple.c | |
parent | locking/drm: Fix i915_gem_shrinker_lock() locking (diff) | |
parent | Merge tag 'sound-4.9-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/ti... (diff) | |
download | linux-4c8ee71620d734c8ad129fad085167f56f9ce351.tar.xz linux-4c8ee71620d734c8ad129fad085167f56f9ce351.zip |
Merge branch 'linus' into locking/core, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'drivers/iio/temperature/maxim_thermocouple.c')
-rw-r--r-- | drivers/iio/temperature/maxim_thermocouple.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/drivers/iio/temperature/maxim_thermocouple.c b/drivers/iio/temperature/maxim_thermocouple.c index 39dd2026ccc9..066161a4bccd 100644 --- a/drivers/iio/temperature/maxim_thermocouple.c +++ b/drivers/iio/temperature/maxim_thermocouple.c @@ -123,22 +123,24 @@ static int maxim_thermocouple_read(struct maxim_thermocouple_data *data, { unsigned int storage_bytes = data->chip->read_size; unsigned int shift = chan->scan_type.shift + (chan->address * 8); - unsigned int buf; + __be16 buf16; + __be32 buf32; int ret; - ret = spi_read(data->spi, (void *) &buf, storage_bytes); - if (ret) - return ret; - switch (storage_bytes) { case 2: - *val = be16_to_cpu(buf); + ret = spi_read(data->spi, (void *)&buf16, storage_bytes); + *val = be16_to_cpu(buf16); break; case 4: - *val = be32_to_cpu(buf); + ret = spi_read(data->spi, (void *)&buf32, storage_bytes); + *val = be32_to_cpu(buf32); break; } + if (ret) + return ret; + /* check to be sure this is a valid reading */ if (*val & data->chip->status_bit) return -EINVAL; |