From: Greg Kroah-Hartman Date: Wed, 11 Mar 2015 14:54:39 +0000 (+0100) Subject: 3.10-stable patches X-Git-Tag: v3.10.72~37 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f53bfe30e9ecbd5828073cbed5abada52e3516cc;p=thirdparty%2Fkernel%2Fstable-queue.git 3.10-stable patches added patches: iio-imu-adis16400-fix-sign-extension.patch --- diff --git a/queue-3.10/iio-imu-adis16400-fix-sign-extension.patch b/queue-3.10/iio-imu-adis16400-fix-sign-extension.patch new file mode 100644 index 00000000000..16c1c8aac9b --- /dev/null +++ b/queue-3.10/iio-imu-adis16400-fix-sign-extension.patch @@ -0,0 +1,41 @@ +From 19e353f2b344ad86cea6ebbc0002e5f903480a90 Mon Sep 17 00:00:00 2001 +From: Rasmus Villemoes +Date: Fri, 23 Jan 2015 00:34:02 +0100 +Subject: iio: imu: adis16400: Fix sign extension + +From: Rasmus Villemoes + +commit 19e353f2b344ad86cea6ebbc0002e5f903480a90 upstream. + +The intention is obviously to sign-extend a 12 bit quantity. But +because of C's promotion rules, the assignment is equivalent to "val16 +&= 0xfff;". Use the proper API for this. + +Signed-off-by: Rasmus Villemoes +Acked-by: Lars-Peter Clausen +Signed-off-by: Jonathan Cameron +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/iio/imu/adis16400_core.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/iio/imu/adis16400_core.c ++++ b/drivers/iio/imu/adis16400_core.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -447,7 +448,7 @@ static int adis16400_read_raw(struct iio + mutex_unlock(&indio_dev->mlock); + if (ret) + return ret; +- val16 = ((val16 & 0xFFF) << 4) >> 4; ++ val16 = sign_extend32(val16, 11); + *val = val16; + return IIO_VAL_INT; + case IIO_CHAN_INFO_OFFSET: diff --git a/queue-3.10/series b/queue-3.10/series index 95a66224309..87dcfb7577b 100644 --- a/queue-3.10/series +++ b/queue-3.10/series @@ -21,3 +21,4 @@ mm-memory.c-actually-remap-enough-memory.patch target-check-for-lba-sectors-wrap-around-in-sbc_parse_cdb.patch pm-qos-remove-duplicate-call-to-pm_qos_update_target.patch x86-asm-entry-64-remove-a-bogus-ret_from_fork-optimization.patch +iio-imu-adis16400-fix-sign-extension.patch