summaryrefslogtreecommitdiff
path: root/target/linux/s3c24xx/patches-2.6.24/1202-fix-pcf50633-platform-backlight-resume-ramp-setting.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.24/1202-fix-pcf50633-platform-backlight-resume-ramp-setting.patch')
-rw-r--r--target/linux/s3c24xx/patches-2.6.24/1202-fix-pcf50633-platform-backlight-resume-ramp-setting.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.24/1202-fix-pcf50633-platform-backlight-resume-ramp-setting.patch b/target/linux/s3c24xx/patches-2.6.24/1202-fix-pcf50633-platform-backlight-resume-ramp-setting.patch
new file mode 100644
index 0000000..389e48d
--- /dev/null
+++ b/target/linux/s3c24xx/patches-2.6.24/1202-fix-pcf50633-platform-backlight-resume-ramp-setting.patch
@@ -0,0 +1,58 @@
+From 31afa68418678eef1885db656a935b24d51dce9b Mon Sep 17 00:00:00 2001
+From: Andy Green <andy@openmoko.com>
+Date: Wed, 2 Jul 2008 22:42:29 +0100
+Subject: [PATCH] fix-pcf50633-platform-backlight-resume-ramp-setting.patch
+
+Signed-off-by: Andy Green <andy@openmoko.com>
+---
+ arch/arm/mach-s3c2440/mach-gta02.c | 1 +
+ drivers/i2c/chips/pcf50633.c | 6 ++++--
+ include/linux/pcf50633.h | 1 +
+ 3 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/arch/arm/mach-s3c2440/mach-gta02.c b/arch/arm/mach-s3c2440/mach-gta02.c
+index 297b792..309e484 100644
+--- a/arch/arm/mach-s3c2440/mach-gta02.c
++++ b/arch/arm/mach-s3c2440/mach-gta02.c
+@@ -577,6 +577,7 @@ static struct pcf50633_platform_data gta02_pcf_pdata = {
+ },
+ },
+ .defer_resume_backlight = 1,
++ .resume_backlight_ramp_speed = 5
+ };
+
+ #if 0 /* currently unused */
+diff --git a/drivers/i2c/chips/pcf50633.c b/drivers/i2c/chips/pcf50633.c
+index 875a5ee..a697ee1 100644
+--- a/drivers/i2c/chips/pcf50633.c
++++ b/drivers/i2c/chips/pcf50633.c
+@@ -2483,10 +2483,12 @@ void pcf50633_backlight_resume(struct pcf50633_data *pcf)
+ {
+ dev_info(&pcf->client.dev, "pcf50633_backlight_resume\n");
+
+- /* we force the backlight on in fact */
+- reg_write(pcf, PCF50633_REG_LEDDIM, 1);
++ /* platform defines resume ramp speed */
++ reg_write(pcf, PCF50633_REG_LEDDIM,
++ pcf->pdata->resume_backlight_ramp_speed);
+ reg_write(pcf, PCF50633_REG_LEDOUT, pcf->standby_regs.misc[
+ PCF50633_REG_LEDOUT - PCF50633_REG_AUTOOUT]);
++ /* we force the backlight on in fact */
+ reg_write(pcf, PCF50633_REG_LEDENA, pcf->standby_regs.misc[
+ PCF50633_REG_LEDENA - PCF50633_REG_AUTOOUT] | 1);
+ }
+diff --git a/include/linux/pcf50633.h b/include/linux/pcf50633.h
+index fa1c7e8..b94b72a 100644
+--- a/include/linux/pcf50633.h
++++ b/include/linux/pcf50633.h
+@@ -173,6 +173,7 @@ struct pcf50633_platform_data {
+
+ /* post-resume backlight bringup */
+ int defer_resume_backlight;
++ u8 resume_backlight_ramp_speed;
+ };
+
+ #endif /* _PCF50633_H */
+--
+1.5.6.5
+