summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2015-07-06 06:41:08 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2015-07-06 06:41:08 -0700
commit6d7abad094756ac1b9cd53e03159cda9b59143bf (patch)
treec9a6c9165ee3fa52bd20a2c5509d807b9ba397f2
parent452f9e8a5dcf8ea34638a0d85009066aa1bc02a1 (diff)
parent2f2f10e13d53558c837d5177aa6e08ae06b420a7 (diff)
downloadqcom-6d7abad094756ac1b9cd53e03159cda9b59143bf.tar.gz
Merge "input: sensors: read 16-bit output data in continuous mode" into LA.BR.1.2.4_rb1.7
-rw-r--r--drivers/input/misc/akm8963.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/input/misc/akm8963.c b/drivers/input/misc/akm8963.c
index 4477296df03..e88dfca28f7 100644
--- a/drivers/input/misc/akm8963.c
+++ b/drivers/input/misc/akm8963.c
@@ -467,7 +467,10 @@ static int AKECS_GetData_Poll(
/* Check ST bit */
if (!(AKM_DRDY_IS_HIGH(buffer[0])))
+ {
dev_dbg(&akm->i2c->dev, "DRDY is low. Use last value.\n");
+ return 0;
+ }
/* Read rest data */
buffer[1] = AKM_REG_STATUS + 1;
@@ -890,7 +893,8 @@ static int akm_enable_set(struct sensors_classdev *sensors_cdev,
if (akm->delay[MAG_DATA_FLAG] <
MAX_SNG_MEASURE_SUPPORTED) {
AKECS_SetMode(akm,
- AK8963_MODE_CONT2_MEASURE);
+ AK8963_MODE_CONT2_MEASURE |
+ AKM8963_BIT_OP_16);
akm->use_sng_measure = false;
} else {
AKECS_SetMode(akm,