summaryrefslogtreecommitdiffstats
path: root/lis3-improve-handling-of-null-rate.patch
diff options
context:
space:
mode:
Diffstat (limited to 'lis3-improve-handling-of-null-rate.patch')
-rw-r--r--lis3-improve-handling-of-null-rate.patch75
1 files changed, 0 insertions, 75 deletions
diff --git a/lis3-improve-handling-of-null-rate.patch b/lis3-improve-handling-of-null-rate.patch
deleted file mode 100644
index 1dd00b645..000000000
--- a/lis3-improve-handling-of-null-rate.patch
+++ /dev/null
@@ -1,75 +0,0 @@
-From: =?UTF-8?q?=C3=89ric=20Piel?= <eric.piel@tremplin-utc.net>
-Date: Thu, 3 Nov 2011 16:22:40 +0100
-Subject: [PATCH] lis3: improve handling of null rate
-
-When obtaining a rate of 0, we would disable the device supposely
-because it seems to behave incorectly. It actually only comes from the
-fact that the device is off and on lis3dc it's reflected in the rate.
-So handle this nicely by just waiting a safe time, and then using the
-device as normally.
-
-Bugzilla: 785814
-Upstream-status: ??
-
-Signed-off-by: ??ric Piel <eric.piel@tremplin-utc.net>
----
- drivers/misc/lis3lv02d/lis3lv02d.c | 16 ++++++++--------
- 1 file changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/drivers/misc/lis3lv02d/lis3lv02d.c b/drivers/misc/lis3lv02d/lis3lv02d.c
-index fb8705fc3aca..50c2b93c1273 100644
---- a/drivers/misc/lis3lv02d/lis3lv02d.c
-+++ b/drivers/misc/lis3lv02d/lis3lv02d.c
-@@ -216,7 +216,8 @@ static void lis3lv02d_get_xyz(struct lis3lv02d *lis3, int *x, int *y, int *z)
- /* conversion btw sampling rate and the register values */
- static int lis3_12_rates[4] = {40, 160, 640, 2560};
- static int lis3_8_rates[2] = {100, 400};
--static int lis3_3dc_rates[16] = {0, 1, 10, 25, 50, 100, 200, 400, 1600, 5000};
-+/* LIS3DC: 0 = power off, above 9 = undefined */
-+static int lis3_3dc_rates[16] = {0, 1, 10, 25, 50, 100, 200, 400, 1600, 5000, -1, -1, -1, -1, -1, -1};
- static int lis3_3dlh_rates[4] = {50, 100, 400, 1000};
-
- /* ODR is Output Data Rate */
-@@ -231,12 +232,11 @@ static int lis3lv02d_get_odr(struct lis3lv02d *lis3)
- return lis3->odrs[(ctrl >> shift)];
- }
-
--static int lis3lv02d_get_pwron_wait(struct lis3lv02d *lis3)
-+static int lis3lv02d_wait_pwron(struct lis3lv02d *lis3)
- {
- int div = lis3lv02d_get_odr(lis3);
--
-- if (WARN_ONCE(div == 0, "device returned spurious data"))
-- return -ENXIO;
-+ if (div <= 0)
-+ div = 1; /* maximum delay */
-
- /* LIS3 power on delay is quite long */
- msleep(lis3->pwron_delay / div);
-@@ -303,7 +303,7 @@ static int lis3lv02d_selftest(struct lis3lv02d *lis3, s16 results[3])
-
- lis3->read(lis3, ctlreg, &reg);
- lis3->write(lis3, ctlreg, (reg | selftest));
-- ret = lis3lv02d_get_pwron_wait(lis3);
-+ ret = lis3lv02d_wait_pwron(lis3);
- if (ret)
- goto fail;
-
-@@ -314,7 +314,7 @@ static int lis3lv02d_selftest(struct lis3lv02d *lis3, s16 results[3])
-
- /* back to normal settings */
- lis3->write(lis3, ctlreg, reg);
-- ret = lis3lv02d_get_pwron_wait(lis3);
-+ ret = lis3lv02d_wait_pwron(lis3);
- if (ret)
- goto fail;
-
-@@ -434,7 +434,7 @@ int lis3lv02d_poweron(struct lis3lv02d *lis3)
- }
- }
-
-- err = lis3lv02d_get_pwron_wait(lis3);
-+ err = lis3lv02d_wait_pwron(lis3);
- if (err)
- return err;
-