* [PATCH 1/3] backlight: Add pcf50633 backlight driver
2010-05-12 0:44 [PATCH 0/3] Add pcf50633 backlight driver Lars-Peter Clausen
@ 2010-05-12 0:44 ` Lars-Peter Clausen
2010-05-12 0:44 ` [PATCH 2/3] MFD: pcf50633: Register a pcf50633-backlight device in pcf50633 core driver Lars-Peter Clausen
2010-05-12 0:44 ` [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver Lars-Peter Clausen
2 siblings, 0 replies; 8+ messages in thread
From: Lars-Peter Clausen @ 2010-05-12 0:44 UTC (permalink / raw)
To: rpurdie; +Cc: sameo, linux-kernel, Lars-Peter Clausen
This patch adds a backlight driver for controlling the pcf50633 LED module.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
drivers/video/backlight/Kconfig | 7 +
drivers/video/backlight/Makefile | 1 +
drivers/video/backlight/pcf50633-backlight.c | 190 ++++++++++++++++++++++++++
include/linux/mfd/pcf50633/backlight.h | 51 +++++++
4 files changed, 249 insertions(+), 0 deletions(-)
create mode 100644 drivers/video/backlight/pcf50633-backlight.c
create mode 100644 include/linux/mfd/pcf50633/backlight.h
diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
index 4dfb5f4..3e8e7f7 100644
--- a/drivers/video/backlight/Kconfig
+++ b/drivers/video/backlight/Kconfig
@@ -270,6 +270,13 @@ config BACKLIGHT_88PM860X
help
Say Y to enable the backlight driver for Marvell 88PM8606.
+config BACKLIGHT_PCF50633
+ tristate "Backlight driver for NXP PCF50633 MFD"
+ depends on BACKLIGHT_CLASS_DEVICE && MFD_PCF50633
+ help
+ If you have a backlight driven by a NXP PCF50633 MFD, say Y here to
+ enable its driver.
+
endif # BACKLIGHT_CLASS_DEVICE
endif # BACKLIGHT_LCD_SUPPORT
diff --git a/drivers/video/backlight/Makefile b/drivers/video/backlight/Makefile
index 09d1f14..8b714c1 100644
--- a/drivers/video/backlight/Makefile
+++ b/drivers/video/backlight/Makefile
@@ -31,4 +31,5 @@ obj-$(CONFIG_BACKLIGHT_WM831X) += wm831x_bl.o
obj-$(CONFIG_BACKLIGHT_ADX) += adx_bl.o
obj-$(CONFIG_BACKLIGHT_ADP5520) += adp5520_bl.o
obj-$(CONFIG_BACKLIGHT_88PM860X) += 88pm860x_bl.o
+obj-$(CONFIG_BACKLIGHT_PCF50633) += pcf50633-backlight.o
diff --git a/drivers/video/backlight/pcf50633-backlight.c b/drivers/video/backlight/pcf50633-backlight.c
new file mode 100644
index 0000000..3c424f7
--- /dev/null
+++ b/drivers/video/backlight/pcf50633-backlight.c
@@ -0,0 +1,190 @@
+/*
+ * Copyright (C) 2009-2010, Lars-Peter Clausen <lars@metafoo.de>
+ * PCF50633 backlight device driver
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ */
+
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/slab.h>
+#include <linux/platform_device.h>
+
+#include <linux/backlight.h>
+#include <linux/fb.h>
+
+#include <linux/mfd/pcf50633/core.h>
+#include <linux/mfd/pcf50633/backlight.h>
+
+struct pcf50633_bl {
+ struct pcf50633 *pcf;
+ struct backlight_device *bl;
+
+ unsigned int brightness;
+ unsigned int brightness_limit;
+};
+
+/*
+ * pcf50633_bl_set_brightness_limit
+ *
+ * Update the brightness limit for the pc50633 backlight. The actual brightness
+ * will not go above the limit. This is useful to limit power drain for example
+ * on low battery.
+ *
+ * @dev: Pointer to a pcf50633 device
+ * @limit: The brightness limit. Valid values are 0-63
+ */
+int pcf50633_bl_set_brightness_limit(struct pcf50633 *pcf, unsigned int limit)
+{
+ struct pcf50633_bl *pcf_bl = platform_get_drvdata(pcf->bl_pdev);
+
+ if (!pcf_bl)
+ return -ENODEV;
+
+ pcf_bl->brightness_limit = limit & 0x3f;
+ backlight_update_status(pcf_bl->bl);
+
+ return 0;
+}
+
+static int pcf50633_bl_update_status(struct backlight_device *bl)
+{
+ struct pcf50633_bl *pcf_bl = bl_get_data(bl);
+ unsigned int new_brightness;
+
+
+ if (bl->props.state & (BL_CORE_SUSPENDED | BL_CORE_FBBLANK) ||
+ bl->props.power != FB_BLANK_UNBLANK)
+ new_brightness = 0;
+ else if (bl->props.brightness < pcf_bl->brightness_limit)
+ new_brightness = bl->props.brightness;
+ else
+ new_brightness = pcf_bl->brightness_limit;
+
+
+ if (pcf_bl->brightness == new_brightness)
+ return 0;
+
+ if (new_brightness) {
+ pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDOUT,
+ new_brightness);
+ if (!pcf_bl->brightness)
+ pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDENA, 1);
+ } else {
+ pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDENA, 0);
+ }
+
+ pcf_bl->brightness = new_brightness;
+
+ return 0;
+}
+
+static int pcf50633_bl_get_brightness(struct backlight_device *bl)
+{
+ struct pcf50633_bl *pcf_bl = bl_get_data(bl);
+ return pcf_bl->brightness;
+}
+
+static const struct backlight_ops pcf50633_bl_ops = {
+ .get_brightness = pcf50633_bl_get_brightness,
+ .update_status = pcf50633_bl_update_status,
+ .options = BL_CORE_SUSPENDRESUME,
+};
+
+static int __devinit pcf50633_bl_probe(struct platform_device *pdev)
+{
+ int ret;
+ struct pcf50633_bl *pcf_bl;
+ struct device *parent = pdev->dev.parent;
+ struct pcf50633_platform_data *pcf50633_data = parent->platform_data;
+ struct pcf50633_bl_platform_data *pdata = pcf50633_data->backlight_data;
+ struct backlight_properties bl_props;
+
+ pcf_bl = kzalloc(sizeof(*pcf_bl), GFP_KERNEL);
+ if (!pcf_bl)
+ return -ENOMEM;
+
+ bl_props.max_brightness = 0x3f;
+ bl_props.power = FB_BLANK_UNBLANK;
+
+ if (pdata) {
+ bl_props.brightness = pdata->default_brightness;
+ pcf_bl->brightness_limit = pdata->default_brightness_limit;
+ } else {
+ bl_props.brightness = 0x3f;
+ pcf_bl->brightness_limit = 0x3f;
+ }
+
+ pcf_bl->pcf = dev_to_pcf50633(pdev->dev.parent);
+
+ pcf_bl->bl = backlight_device_register(pdev->name, &pdev->dev, pcf_bl,
+ &pcf50633_bl_ops, &bl_props);
+
+ if (IS_ERR(pcf_bl->bl)) {
+ ret = PTR_ERR(pcf_bl->bl);
+ goto err_free;
+ }
+
+ platform_set_drvdata(pdev, pcf_bl);
+
+ pcf50633_reg_write(pcf_bl->pcf, PCF50633_REG_LEDDIM, pdata->ramp_time);
+
+ /* Should be different from bl_props.brightness, so we do not exit
+ * update_status early the first time it's called */
+ pcf_bl->brightness = pcf_bl->bl->props.brightness + 1;
+
+ backlight_update_status(pcf_bl->bl);
+
+ return 0;
+
+err_free:
+ kfree(pcf_bl);
+
+ return ret;
+}
+
+static int __devexit pcf50633_bl_remove(struct platform_device *pdev)
+{
+ struct pcf50633_bl *pcf_bl = platform_get_drvdata(pdev);
+
+ backlight_device_unregister(pcf_bl->bl);
+
+ platform_set_drvdata(pdev, NULL);
+
+ kfree(pcf_bl);
+
+ return 0;
+}
+
+static struct platform_driver pcf50633_bl_driver = {
+ .probe = pcf50633_bl_probe,
+ .remove = __devexit_p(pcf50633_bl_remove),
+ .driver = {
+ .name = "pcf50633-backlight",
+ },
+};
+
+static int __init pcf50633_bl_init(void)
+{
+ return platform_driver_register(&pcf50633_bl_driver);
+}
+module_init(pcf50633_bl_init);
+
+static void __exit pcf50633_bl_exit(void)
+{
+ platform_driver_unregister(&pcf50633_bl_driver);
+}
+module_exit(pcf50633_bl_exit);
+
+MODULE_AUTHOR("Lars-Peter Clausen <lars@metafoo.de>");
+MODULE_DESCRIPTION("PCF50633 backlight driver");
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50633-backlight");
diff --git a/include/linux/mfd/pcf50633/backlight.h b/include/linux/mfd/pcf50633/backlight.h
new file mode 100644
index 0000000..83747e2
--- /dev/null
+++ b/include/linux/mfd/pcf50633/backlight.h
@@ -0,0 +1,51 @@
+/*
+ * Copyright (C) 2009-2010, Lars-Peter Clausen <lars@metafoo.de>
+ * PCF50633 backlight device driver
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ */
+
+#ifndef __LINUX_MFD_PCF50633_BACKLIGHT
+#define __LINUX_MFD_PCF50633_BACKLIGHT
+
+/*
+* @default_brightness: Backlight brightness is initialized to this value
+*
+* Brightness to be used after the driver has been probed.
+* Valid range 0-63.
+*
+* @default_brightness_limit: The actual brightness is limited by this value
+*
+* Brightness limit to be used after the driver has been probed. This is useful
+* when it is not known how much power is available for the backlight during
+* probe.
+* Valid range 0-63. Can be changed later with pcf50633_bl_set_brightness_limit.
+*
+* @ramp_time: Display ramp time when changing brightness
+*
+* When changing the backlights brightness the change is not instant, instead
+* it fades smooth from one state to another. This value specifies how long
+* the fade should take. The lower the value the higher the fade time.
+* Valid range 0-255
+*/
+struct pcf50633_bl_platform_data {
+ unsigned int default_brightness;
+ unsigned int default_brightness_limit;
+ uint8_t ramp_time;
+};
+
+
+struct pcf50633;
+
+int pcf50633_bl_set_brightness_limit(struct pcf50633 *pcf, unsigned int limit);
+
+#endif
+
--
1.5.6.5
^ permalink raw reply related [flat|nested] 8+ messages in thread* [PATCH 2/3] MFD: pcf50633: Register a pcf50633-backlight device in pcf50633 core driver.
2010-05-12 0:44 [PATCH 0/3] Add pcf50633 backlight driver Lars-Peter Clausen
2010-05-12 0:44 ` [PATCH 1/3] backlight: " Lars-Peter Clausen
@ 2010-05-12 0:44 ` Lars-Peter Clausen
2010-05-12 0:44 ` [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver Lars-Peter Clausen
2 siblings, 0 replies; 8+ messages in thread
From: Lars-Peter Clausen @ 2010-05-12 0:44 UTC (permalink / raw)
To: rpurdie; +Cc: sameo, linux-kernel, Lars-Peter Clausen
Register a device newly added pcf50633-backlight driver as a child device in
the pcf50633 core driver.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Cc: Samuel Ortiz <sameo@linux.intel.com>
---
drivers/mfd/pcf50633-core.c | 3 +++
include/linux/mfd/pcf50633/core.h | 4 ++++
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/drivers/mfd/pcf50633-core.c b/drivers/mfd/pcf50633-core.c
index e1ee046..704736e 100644
--- a/drivers/mfd/pcf50633-core.c
+++ b/drivers/mfd/pcf50633-core.c
@@ -305,6 +305,9 @@ static int __devinit pcf50633_probe(struct i2c_client *client,
&pcf->mbc_pdev);
pcf50633_client_dev_register(pcf, "pcf50633-adc",
&pcf->adc_pdev);
+ pcf50633_client_dev_register(pcf, "pcf50633-backlight",
+ &pcf->bl_pdev);
+
for (i = 0; i < PCF50633_NUM_REGULATORS; i++) {
struct platform_device *pdev;
diff --git a/include/linux/mfd/pcf50633/core.h b/include/linux/mfd/pcf50633/core.h
index 3398bd9..ad411a7 100644
--- a/include/linux/mfd/pcf50633/core.h
+++ b/include/linux/mfd/pcf50633/core.h
@@ -18,6 +18,7 @@
#include <linux/regulator/driver.h>
#include <linux/regulator/machine.h>
#include <linux/power_supply.h>
+#include <linux/mfd/pcf50633/backlight.h>
struct pcf50633;
@@ -43,6 +44,8 @@ struct pcf50633_platform_data {
void (*force_shutdown)(struct pcf50633 *);
u8 resumers[5];
+
+ struct pcf50633_bl_platform_data *backlight_data;
};
struct pcf50633_irq {
@@ -152,6 +155,7 @@ struct pcf50633 {
struct platform_device *mbc_pdev;
struct platform_device *adc_pdev;
struct platform_device *input_pdev;
+ struct platform_device *bl_pdev;
struct platform_device *regulator_pdev[PCF50633_NUM_REGULATORS];
};
--
1.5.6.5
^ permalink raw reply related [flat|nested] 8+ messages in thread* [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver.
2010-05-12 0:44 [PATCH 0/3] Add pcf50633 backlight driver Lars-Peter Clausen
2010-05-12 0:44 ` [PATCH 1/3] backlight: " Lars-Peter Clausen
2010-05-12 0:44 ` [PATCH 2/3] MFD: pcf50633: Register a pcf50633-backlight device in pcf50633 core driver Lars-Peter Clausen
@ 2010-05-12 0:44 ` Lars-Peter Clausen
2010-05-12 1:02 ` Ben Dooks
2 siblings, 1 reply; 8+ messages in thread
From: Lars-Peter Clausen @ 2010-05-12 0:44 UTC (permalink / raw)
To: rpurdie; +Cc: sameo, linux-kernel, Lars-Peter Clausen, Ben Dooks
Use the pcf50633 backlight driver instead of the platform backlight driver.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Cc: Ben Dooks <ben-linux@fluff.org>
---
arch/arm/mach-s3c2440/mach-gta02.c | 76 ++++-------------------------------
1 files changed, 9 insertions(+), 67 deletions(-)
diff --git a/arch/arm/mach-s3c2440/mach-gta02.c b/arch/arm/mach-s3c2440/mach-gta02.c
index 45799c6..120a26f 100644
--- a/arch/arm/mach-s3c2440/mach-gta02.c
+++ b/arch/arm/mach-s3c2440/mach-gta02.c
@@ -49,7 +49,6 @@
#include <linux/io.h>
#include <linux/i2c.h>
-#include <linux/backlight.h>
#include <linux/regulator/machine.h>
#include <linux/mfd/pcf50633/core.h>
@@ -57,6 +56,7 @@
#include <linux/mfd/pcf50633/adc.h>
#include <linux/mfd/pcf50633/gpio.h>
#include <linux/mfd/pcf50633/pmic.h>
+#include <linux/mfd/pcf50633/backlight.h>
#include <asm/mach/arch.h>
#include <asm/mach/map.h>
@@ -254,6 +254,12 @@ static char *gta02_batteries[] = {
"battery",
};
+static struct pcf50633_bl_platform_data gta02_backlight_data = {
+ .default_brightness = 0x3f,
+ .default_brightness_limit = 0,
+ .ramp_time = 5,
+};
+
struct pcf50633_platform_data gta02_pcf_pdata = {
.resumers = {
[0] = PCF50633_INT1_USBINS |
@@ -271,6 +277,8 @@ struct pcf50633_platform_data gta02_pcf_pdata = {
.charger_reference_current_ma = 1000,
+ .backlight_data = >a02_backlight_data,
+
.reg_init_data = {
[PCF50633_REGULATOR_AUTO] = {
.constraints = {
@@ -478,71 +486,6 @@ static struct s3c2410_udc_mach_info gta02_udc_cfg = {
};
-
-
-static void gta02_bl_set_intensity(int intensity)
-{
- struct pcf50633 *pcf = gta02_pcf;
- int old_intensity = pcf50633_reg_read(pcf, PCF50633_REG_LEDOUT);
-
- /* We map 8-bit intensity to 6-bit intensity in hardware. */
- intensity >>= 2;
-
- /*
- * This can happen during, eg, print of panic on blanked console,
- * but we can't service i2c without interrupts active, so abort.
- */
- if (in_atomic()) {
- printk(KERN_ERR "gta02_bl_set_intensity called while atomic\n");
- return;
- }
-
- old_intensity = pcf50633_reg_read(pcf, PCF50633_REG_LEDOUT);
- if (intensity == old_intensity)
- return;
-
- /* We can't do this anywhere else. */
- pcf50633_reg_write(pcf, PCF50633_REG_LEDDIM, 5);
-
- if (!(pcf50633_reg_read(pcf, PCF50633_REG_LEDENA) & 3))
- old_intensity = 0;
-
- /*
- * The PCF50633 cannot handle LEDOUT = 0 (datasheet p60)
- * if seen, you have to re-enable the LED unit.
- */
- if (!intensity || !old_intensity)
- pcf50633_reg_write(pcf, PCF50633_REG_LEDENA, 0);
-
- /* Illegal to set LEDOUT to 0. */
- if (!intensity)
- pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_LEDOUT, 0x3f, 2);
- else
- pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_LEDOUT, 0x3f,
- intensity);
-
- if (intensity)
- pcf50633_reg_write(pcf, PCF50633_REG_LEDENA, 2);
-
-}
-
-static struct generic_bl_info gta02_bl_info = {
- .name = "gta02-bl",
- .max_intensity = 0xff,
- .default_intensity = 0xff,
- .set_bl_intensity = gta02_bl_set_intensity,
-};
-
-static struct platform_device gta02_bl_dev = {
- .name = "generic-bl",
- .id = 1,
- .dev = {
- .platform_data = >a02_bl_info,
- },
-};
-
-
-
/* USB */
static struct s3c2410_hcd_info gta02_usb_info __initdata = {
.port[0] = {
@@ -579,7 +522,6 @@ static struct platform_device *gta02_devices[] __initdata = {
/* These guys DO need to be children of PMU. */
static struct platform_device *gta02_devices_pmu_children[] = {
- >a02_bl_dev,
};
--
1.5.6.5
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver.
2010-05-12 0:44 ` [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver Lars-Peter Clausen
@ 2010-05-12 1:02 ` Ben Dooks
2010-05-13 14:25 ` Richard Purdie
0 siblings, 1 reply; 8+ messages in thread
From: Ben Dooks @ 2010-05-12 1:02 UTC (permalink / raw)
To: Lars-Peter Clausen; +Cc: rpurdie, sameo, linux-kernel, Ben Dooks
On Wed, May 12, 2010 at 02:44:34AM +0200, Lars-Peter Clausen wrote:
> Use the pcf50633 backlight driver instead of the platform backlight driver.
>
> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> Cc: Ben Dooks <ben-linux@fluff.org>
ok, does anyone else have a comment on this?
---
> arch/arm/mach-s3c2440/mach-gta02.c | 76 ++++-------------------------------
> 1 files changed, 9 insertions(+), 67 deletions(-)
>
> diff --git a/arch/arm/mach-s3c2440/mach-gta02.c b/arch/arm/mach-s3c2440/mach-gta02.c
> index 45799c6..120a26f 100644
> --- a/arch/arm/mach-s3c2440/mach-gta02.c
> +++ b/arch/arm/mach-s3c2440/mach-gta02.c
> @@ -49,7 +49,6 @@
> #include <linux/io.h>
>
> #include <linux/i2c.h>
> -#include <linux/backlight.h>
> #include <linux/regulator/machine.h>
>
> #include <linux/mfd/pcf50633/core.h>
> @@ -57,6 +56,7 @@
> #include <linux/mfd/pcf50633/adc.h>
> #include <linux/mfd/pcf50633/gpio.h>
> #include <linux/mfd/pcf50633/pmic.h>
> +#include <linux/mfd/pcf50633/backlight.h>
>
> #include <asm/mach/arch.h>
> #include <asm/mach/map.h>
> @@ -254,6 +254,12 @@ static char *gta02_batteries[] = {
> "battery",
> };
>
> +static struct pcf50633_bl_platform_data gta02_backlight_data = {
> + .default_brightness = 0x3f,
> + .default_brightness_limit = 0,
> + .ramp_time = 5,
> +};
> +
> struct pcf50633_platform_data gta02_pcf_pdata = {
> .resumers = {
> [0] = PCF50633_INT1_USBINS |
> @@ -271,6 +277,8 @@ struct pcf50633_platform_data gta02_pcf_pdata = {
>
> .charger_reference_current_ma = 1000,
>
> + .backlight_data = >a02_backlight_data,
> +
> .reg_init_data = {
> [PCF50633_REGULATOR_AUTO] = {
> .constraints = {
> @@ -478,71 +486,6 @@ static struct s3c2410_udc_mach_info gta02_udc_cfg = {
>
> };
>
> -
> -
> -static void gta02_bl_set_intensity(int intensity)
> -{
> - struct pcf50633 *pcf = gta02_pcf;
> - int old_intensity = pcf50633_reg_read(pcf, PCF50633_REG_LEDOUT);
> -
> - /* We map 8-bit intensity to 6-bit intensity in hardware. */
> - intensity >>= 2;
> -
> - /*
> - * This can happen during, eg, print of panic on blanked console,
> - * but we can't service i2c without interrupts active, so abort.
> - */
> - if (in_atomic()) {
> - printk(KERN_ERR "gta02_bl_set_intensity called while atomic\n");
> - return;
> - }
> -
> - old_intensity = pcf50633_reg_read(pcf, PCF50633_REG_LEDOUT);
> - if (intensity == old_intensity)
> - return;
> -
> - /* We can't do this anywhere else. */
> - pcf50633_reg_write(pcf, PCF50633_REG_LEDDIM, 5);
> -
> - if (!(pcf50633_reg_read(pcf, PCF50633_REG_LEDENA) & 3))
> - old_intensity = 0;
> -
> - /*
> - * The PCF50633 cannot handle LEDOUT = 0 (datasheet p60)
> - * if seen, you have to re-enable the LED unit.
> - */
> - if (!intensity || !old_intensity)
> - pcf50633_reg_write(pcf, PCF50633_REG_LEDENA, 0);
> -
> - /* Illegal to set LEDOUT to 0. */
> - if (!intensity)
> - pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_LEDOUT, 0x3f, 2);
> - else
> - pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_LEDOUT, 0x3f,
> - intensity);
> -
> - if (intensity)
> - pcf50633_reg_write(pcf, PCF50633_REG_LEDENA, 2);
> -
> -}
> -
> -static struct generic_bl_info gta02_bl_info = {
> - .name = "gta02-bl",
> - .max_intensity = 0xff,
> - .default_intensity = 0xff,
> - .set_bl_intensity = gta02_bl_set_intensity,
> -};
> -
> -static struct platform_device gta02_bl_dev = {
> - .name = "generic-bl",
> - .id = 1,
> - .dev = {
> - .platform_data = >a02_bl_info,
> - },
> -};
> -
> -
> -
> /* USB */
> static struct s3c2410_hcd_info gta02_usb_info __initdata = {
> .port[0] = {
> @@ -579,7 +522,6 @@ static struct platform_device *gta02_devices[] __initdata = {
> /* These guys DO need to be children of PMU. */
>
> static struct platform_device *gta02_devices_pmu_children[] = {
> - >a02_bl_dev,
> };
>
>
> --
> 1.5.6.5
>
--
--
Ben
Q: What's a light-year?
A: One-third less calories than a regular year.
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver.
2010-05-12 1:02 ` Ben Dooks
@ 2010-05-13 14:25 ` Richard Purdie
2010-05-16 22:00 ` Samuel Ortiz
0 siblings, 1 reply; 8+ messages in thread
From: Richard Purdie @ 2010-05-13 14:25 UTC (permalink / raw)
To: Ben Dooks; +Cc: Lars-Peter Clausen, sameo, linux-kernel
On Wed, 2010-05-12 at 02:02 +0100, Ben Dooks wrote:
> On Wed, May 12, 2010 at 02:44:34AM +0200, Lars-Peter Clausen wrote:
> > Use the pcf50633 backlight driver instead of the platform backlight driver.
> >
> > Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> > Cc: Ben Dooks <ben-linux@fluff.org>
>
> ok, does anyone else have a comment on this?
Looks like a sensible idea to me but I'm travelling and don't have time
to properly review the patches right now.
The main question is who takes which patches. I can take the main new
backlight one, the other two I need opinions from the mfd (Samuel) and
gta02 (?) maintainers...
Cheers,
Richard
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver.
2010-05-13 14:25 ` Richard Purdie
@ 2010-05-16 22:00 ` Samuel Ortiz
2010-05-26 11:57 ` Richard Purdie
0 siblings, 1 reply; 8+ messages in thread
From: Samuel Ortiz @ 2010-05-16 22:00 UTC (permalink / raw)
To: Richard Purdie; +Cc: Ben Dooks, Lars-Peter Clausen, linux-kernel
Hi Richard,
On Thu, May 13, 2010 at 10:25:05PM +0800, Richard Purdie wrote:
> On Wed, 2010-05-12 at 02:02 +0100, Ben Dooks wrote:
> > On Wed, May 12, 2010 at 02:44:34AM +0200, Lars-Peter Clausen wrote:
> > > Use the pcf50633 backlight driver instead of the platform backlight driver.
> > >
> > > Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> > > Cc: Ben Dooks <ben-linux@fluff.org>
> >
> > ok, does anyone else have a comment on this?
>
> Looks like a sensible idea to me but I'm travelling and don't have time
> to properly review the patches right now.
>
> The main question is who takes which patches. I can take the main new
> backlight one, the other two I need opinions from the mfd (Samuel) and
> gta02 (?) maintainers...
The MFD patch looks good to me, you can add my:
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Cheers,
Samuel.
> Cheers,
>
> Richard
>
>
>
--
Intel Open Source Technology Centre
http://oss.intel.com/
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] gta02: Use pcf50633 backlight driver instead of platform backlight driver.
2010-05-16 22:00 ` Samuel Ortiz
@ 2010-05-26 11:57 ` Richard Purdie
0 siblings, 0 replies; 8+ messages in thread
From: Richard Purdie @ 2010-05-26 11:57 UTC (permalink / raw)
To: Samuel Ortiz; +Cc: Ben Dooks, Lars-Peter Clausen, linux-kernel
On Mon, 2010-05-17 at 00:00 +0200, Samuel Ortiz wrote:
> On Thu, May 13, 2010 at 10:25:05PM +0800, Richard Purdie wrote:
> > On Wed, 2010-05-12 at 02:02 +0100, Ben Dooks wrote:
> > > On Wed, May 12, 2010 at 02:44:34AM +0200, Lars-Peter Clausen wrote:
> > > > Use the pcf50633 backlight driver instead of the platform backlight driver.
> > > >
> > > > Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
> > > > Cc: Ben Dooks <ben-linux@fluff.org>
> > >
> > > ok, does anyone else have a comment on this?
> >
> > Looks like a sensible idea to me but I'm travelling and don't have time
> > to properly review the patches right now.
> >
> > The main question is who takes which patches. I can take the main new
> > backlight one, the other two I need opinions from the mfd (Samuel) and
> > gta02 (?) maintainers...
> The MFD patch looks good to me, you can add my:
> Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Thanks, I've queued these in the backlight tree.
Cheers,
Richard
^ permalink raw reply [flat|nested] 8+ messages in thread