From d55bf59fa5aea19e5be5cdb21b5fa7ee9b6fe1f6 Mon Sep 17 00:00:00 2001 From: AnilKumar Ch Date: Mon, 24 Sep 2012 14:53:49 +0530 Subject: [PATCH] --- yaml --- r: 324349 b: refs/heads/master c: e2b2ed8365e040b274dd23bdabd34ec3b0e43137 h: refs/heads/master i: 324347: 0467d66d5c03c38de6d18c8e5b9786ddab960209 v: v3 --- [refs] | 2 +- trunk/drivers/misc/lis3lv02d/lis3lv02d.c | 13 +++++++------ trunk/drivers/misc/lis3lv02d/lis3lv02d.h | 2 +- trunk/drivers/misc/lis3lv02d/lis3lv02d_i2c.c | 2 +- 4 files changed, 10 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index 6f0898274b90..7382b764e831 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bcdee04ea7ae0406ae69094f6df1aacb66a69a0b +refs/heads/master: e2b2ed8365e040b274dd23bdabd34ec3b0e43137 diff --git a/trunk/drivers/misc/lis3lv02d/lis3lv02d.c b/trunk/drivers/misc/lis3lv02d/lis3lv02d.c index 9d37c576d526..e670072fe24c 100644 --- a/trunk/drivers/misc/lis3lv02d/lis3lv02d.c +++ b/trunk/drivers/misc/lis3lv02d/lis3lv02d.c @@ -81,9 +81,10 @@ #define LIS3_SENSITIVITY_8B (18 * LIS3_ACCURACY) /* - * LIS3331DLH spec says 1LSBs corresponds 4G/1024 -> 1LSB is 1000/1024 mG. - * Sensitivity values for +/-2G, outdata in 12 bits for +/-2G scale. so 4 - * bits adjustment is required + * LIS331DLH spec says 1LSBs corresponds 4G/4096 -> 1LSB is 1000/1024 mG. + * Below macros defines sensitivity values for +/-2G. Dataout bits for + * +/-2G range is 12 bits so 4 bits adjustment must be done to get 12bit + * data from 16bit value. Currently this driver supports only 2G range. */ #define LIS3DLH_SENSITIVITY_2G ((LIS3_ACCURACY * 1000) / 1024) #define SHIFT_ADJ_2G 4 @@ -144,7 +145,7 @@ static s16 lis3lv02d_read_12(struct lis3lv02d *lis3, int reg) } /* 12bits for 2G range, 13 bits for 4G range and 14 bits for 8G range */ -static s16 lis3lv02d_read_16(struct lis3lv02d *lis3, int reg) +static s16 lis331dlh_read_data(struct lis3lv02d *lis3, int reg) { u8 lo, hi; int v; @@ -987,8 +988,8 @@ int lis3lv02d_init_device(struct lis3lv02d *lis3) lis3->scale = LIS3_SENSITIVITY_8B; break; case WAI_3DLH: - pr_info("16 bits 3DLH sensor found\n"); - lis3->read_data = lis3lv02d_read_16; + pr_info("16 bits lis331dlh sensor found\n"); + lis3->read_data = lis331dlh_read_data; lis3->mdps_max_val = 2048; /* 12 bits for 2G */ lis3->shift_adj = SHIFT_ADJ_2G; lis3->pwron_delay = LIS3_PWRON_DELAY_WAI_8B; diff --git a/trunk/drivers/misc/lis3lv02d/lis3lv02d.h b/trunk/drivers/misc/lis3lv02d/lis3lv02d.h index c1a545e136a0..387504a37937 100644 --- a/trunk/drivers/misc/lis3lv02d/lis3lv02d.h +++ b/trunk/drivers/misc/lis3lv02d/lis3lv02d.h @@ -104,9 +104,9 @@ enum lis3_who_am_i { }; enum lis3_type { + LIS3LV02D, LIS3DC, HP3DC, - LIS3LV02D, LIS2302D, LIS331DLF, LIS331DLH, diff --git a/trunk/drivers/misc/lis3lv02d/lis3lv02d_i2c.c b/trunk/drivers/misc/lis3lv02d/lis3lv02d_i2c.c index 15255eb8ac81..2c0a1148ee22 100644 --- a/trunk/drivers/misc/lis3lv02d/lis3lv02d_i2c.c +++ b/trunk/drivers/misc/lis3lv02d/lis3lv02d_i2c.c @@ -235,7 +235,7 @@ static int lis3_i2c_runtime_resume(struct device *dev) #endif /* CONFIG_PM_RUNTIME */ static const struct i2c_device_id lis3lv02d_id[] = { - {"lis3lv02d", 0 }, + {"lis3lv02d", LIS3LV02D}, {"lis331dlh", LIS331DLH}, {} };