diff options
author | Michael Trimarchi <trimarchi@gandalf.sssup.it> | 2009-11-26 01:51:19 +0100 |
---|---|---|
committer | Paul Fertser <fercerpav@gmail.com> | 2009-11-26 11:24:07 +0300 |
commit | bdaf2752eb06b600098f89661baa3e478cd52105 (patch) | |
tree | dfd56aa8299cd0d8aa9aea6a2007c2aca6d14962 /drivers | |
parent | 8c65792a5c83c76d662a617a7c4e1ae8104bb6a5 (diff) |
input: lis302dl: fix the resume path
This fix the resume path of the accelerometer. If the accelerometer
is not power up, restore to initial status. Move the REG_CTRL1 to the
last one position avoid writing on the register when the device is
in power down mode.
Signed-off-by: Michael Trimarchi <michael@panicking.kicks-ass.org>
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/input/misc/lis302dl.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/input/misc/lis302dl.c b/drivers/input/misc/lis302dl.c index f31e5488440..d345bfb2718 100644 --- a/drivers/input/misc/lis302dl.c +++ b/drivers/input/misc/lis302dl.c @@ -818,7 +818,6 @@ static int __devexit lis302dl_remove(struct spi_device *spi) #ifdef CONFIG_PM static u8 regs_to_save[] = { - LIS302DL_REG_CTRL1, LIS302DL_REG_CTRL2, LIS302DL_REG_CTRL3, LIS302DL_REG_FF_WU_CFG_1, @@ -833,7 +832,7 @@ static u8 regs_to_save[] = { LIS302DL_REG_CLICK_TIME_LIMIT, LIS302DL_REG_CLICK_LATENCY, LIS302DL_REG_CLICK_WINDOW, - + LIS302DL_REG_CTRL1, }; static int lis302dl_suspend(struct spi_device *spi, pm_message_t state) @@ -906,11 +905,6 @@ static int lis302dl_resume(struct spi_device *spi) if (__lis302dl_reset_device(lis)) dev_err(&spi->dev, "device BOOT reload failed\n"); - lis->regs[LIS302DL_REG_CTRL1] |= LIS302DL_CTRL1_PD | - LIS302DL_CTRL1_Xen | - LIS302DL_CTRL1_Yen | - LIS302DL_CTRL1_Zen; - /* restore registers after resume */ for (n = 0; n < ARRAY_SIZE(regs_to_save); n++) __reg_write(lis, regs_to_save[n], lis->regs[regs_to_save[n]]); |