aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/staging/iio/gyro/adis16080_core.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/iio/gyro/adis16080_core.c')
-rw-r--r--drivers/staging/iio/gyro/adis16080_core.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/staging/iio/gyro/adis16080_core.c b/drivers/staging/iio/gyro/adis16080_core.c
index a73902573f79..41d7350d030f 100644
--- a/drivers/staging/iio/gyro/adis16080_core.c
+++ b/drivers/staging/iio/gyro/adis16080_core.c
@@ -69,7 +69,7 @@ static int adis16080_spi_read(struct iio_dev *indio_dev,
ret = spi_read(st->us, st->buf, 2);
if (ret == 0)
- *val = ((st->buf[0] & 0xF) << 8) | st->buf[1];
+ *val = sign_extend32(((st->buf[0] & 0xF) << 8) | st->buf[1], 11);
mutex_unlock(&st->buf_lock);
return ret;
@@ -138,7 +138,7 @@ static const struct iio_info adis16080_info = {
.driver_module = THIS_MODULE,
};
-static int __devinit adis16080_probe(struct spi_device *spi)
+static int adis16080_probe(struct spi_device *spi)
{
int ret;
struct adis16080_state *st;
@@ -177,7 +177,7 @@ error_ret:
}
/* fixme, confirm ordering in this function */
-static int __devexit adis16080_remove(struct spi_device *spi)
+static int adis16080_remove(struct spi_device *spi)
{
iio_device_unregister(spi_get_drvdata(spi));
iio_device_free(spi_get_drvdata(spi));
@@ -191,7 +191,7 @@ static struct spi_driver adis16080_driver = {
.owner = THIS_MODULE,
},
.probe = adis16080_probe,
- .remove = __devexit_p(adis16080_remove),
+ .remove = adis16080_remove,
};
module_spi_driver(adis16080_driver);