diff options
author | Martin Kepplinger <martink@posteo.de> | 2015-07-06 15:52:21 -0700 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2015-07-07 11:32:35 -0700 |
commit | b7e79329c4e34d63cd374e603ece91f2b2c3331e (patch) | |
tree | 08c3ef6238cb87482588e77b524d095ce0ac5424 /drivers/input/misc/bma150.c | |
parent | d55d0b56b9c3a0d94ca6cc1643063610c138dde9 (diff) | |
download | linux-b7e79329c4e34d63cd374e603ece91f2b2c3331e.tar.gz linux-b7e79329c4e34d63cd374e603ece91f2b2c3331e.tar.bz2 linux-b7e79329c4e34d63cd374e603ece91f2b2c3331e.zip |
Input: bma150 - use sign_extend32() for sign extending
Despite it's name, sign_extend32() is used for 16 bit values aswell.
Signed-off-by: Martin Kepplinger <martink@posteo.de>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'drivers/input/misc/bma150.c')
-rw-r--r-- | drivers/input/misc/bma150.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/input/misc/bma150.c b/drivers/input/misc/bma150.c index b36831c828d3..c2780493b0ed 100644 --- a/drivers/input/misc/bma150.c +++ b/drivers/input/misc/bma150.c @@ -333,10 +333,9 @@ static void bma150_report_xyz(struct bma150_data *bma150) y = ((0xc0 & data[2]) >> 6) | (data[3] << 2); z = ((0xc0 & data[4]) >> 6) | (data[5] << 2); - /* sign extension */ - x = (s16) (x << 6) >> 6; - y = (s16) (y << 6) >> 6; - z = (s16) (z << 6) >> 6; + x = sign_extend32(x, 9); + y = sign_extend32(y, 9); + z = sign_extend32(z, 9); input_report_abs(bma150->input, ABS_X, x); input_report_abs(bma150->input, ABS_Y, y); |