aboutsummaryrefslogtreecommitdiff
path: root/drivers/i2c/chips
diff options
context:
space:
mode:
authorSean McNeil <sean@mcneil.com>2008-11-19 17:09:46 +0000
committerAndy Green <agreen@pads.home.warmcat.com>2008-11-19 17:09:46 +0000
commitfeb93198c9bfed1a0e07e421328e8f270e8fb788 (patch)
tree6a573af107abf28bdeb54de97136386db67bff80 /drivers/i2c/chips
parent2204d8b104b812411a39118ffb436dfbd479787a (diff)
The following is a minor cleanup of backlight resume:
Diffstat (limited to 'drivers/i2c/chips')
-rw-r--r--drivers/i2c/chips/pcf50633.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/i2c/chips/pcf50633.c b/drivers/i2c/chips/pcf50633.c
index e5ffeff711d..f6886d7d05e 100644
--- a/drivers/i2c/chips/pcf50633.c
+++ b/drivers/i2c/chips/pcf50633.c
@@ -2228,8 +2228,9 @@ static int pcf50633_suspend(struct device *dev, pm_message_t state)
void pcf50633_backlight_resume(struct pcf50633_data *pcf)
{
+ /* we force the backlight on in fact */
__reg_write(pcf, PCF50633_REG_LEDOUT, pcf->standby_regs.ledout);
- __reg_write(pcf, PCF50633_REG_LEDENA, pcf->standby_regs.ledena);
+ __reg_write(pcf, PCF50633_REG_LEDENA, pcf->standby_regs.ledena | 0x01);
__reg_write(pcf, PCF50633_REG_LEDDIM, pcf->standby_regs.leddim);
}
EXPORT_SYMBOL_GPL(pcf50633_backlight_resume);
@@ -2243,8 +2244,6 @@ static int pcf50633_resume(struct device *dev)
mutex_lock(&pcf->lock);
- __reg_write(pcf, PCF50633_REG_LEDENA, 0x01);
-
/* Resume all saved registers that don't "survive" standby state */
__reg_write(pcf, PCF50633_REG_INT1M, pcf->standby_regs.int1m);
__reg_write(pcf, PCF50633_REG_INT2M, pcf->standby_regs.int2m);
@@ -2263,11 +2262,8 @@ static int pcf50633_resume(struct device *dev)
__reg_write(pcf, PCF50633_REG_MEMLDOENA, pcf->standby_regs.memldoena);
/* platform can choose to defer backlight bringup */
- if (!pcf->pdata->defer_resume_backlight) {
- __reg_write(pcf, PCF50633_REG_LEDOUT, pcf->standby_regs.ledout);
- __reg_write(pcf, PCF50633_REG_LEDENA, pcf->standby_regs.ledena);
- __reg_write(pcf, PCF50633_REG_LEDDIM, pcf->standby_regs.leddim);
- }
+ if (!pcf->pdata->defer_resume_backlight)
+ pcf50633_backlight_resume(pcf);
/* FIXME: one big read? */
for (i = 0; i < 7; i++) {