From: Arun KS <[email protected]>
Signed-off-by: Arun KS <[email protected]>
---
drivers/video/backlight/Kconfig | 2 +-
drivers/video/backlight/da903x_bl.c | 12 ++++++++++++
2 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
index 90861cd..1607bc9 100644
--- a/drivers/video/backlight/Kconfig
+++ b/drivers/video/backlight/Kconfig
@@ -203,7 +203,7 @@ config BACKLIGHT_DA903X
depends on BACKLIGHT_CLASS_DEVICE && PMIC_DA903X
help
If you have a LCD backlight connected to the WLED output of DA9030
- or DA9034 WLED output, say Y here to enable this driver.
+ or DA9034 WLED, LED1, LED2 outputs, say Y here to enable this driver.
config BACKLIGHT_MBP_NVIDIA
tristate "MacBook Pro Nvidia Backlight Driver"
diff --git a/drivers/video/backlight/da903x_bl.c b/drivers/video/backlight/da903x_bl.c
index 93bb434..c6ceb76 100644
--- a/drivers/video/backlight/da903x_bl.c
+++ b/drivers/video/backlight/da903x_bl.c
@@ -23,6 +23,8 @@
#define DA9030_WLED_CP_EN (1 << 6)
#define DA9030_WLED_TRIM(x) ((x) & 0x7)
+#define DA9034_LED1_CONTROL 0x35
+#define DA9034_LED2_CONTROL 0x36
#define DA9034_WLED_CONTROL1 0x3C
#define DA9034_WLED_CONTROL2 0x3D
@@ -66,6 +68,14 @@ static int da903x_backlight_set(struct backlight_device *bl, int brightness)
val |= brightness ? DA9030_WLED_CP_EN : 0;
ret = da903x_write(dev, DA9030_WLED_CONTROL, val);
break;
+ case DA9034_ID_LED_1:
+ ret = da903x_update(dev, DA9034_LED1_CONTROL,
+ brightness, 0x7f);
+ break;
+ case DA9034_ID_LED_2:
+ ret = da903x_update(dev, DA9034_LED2_CONTROL,
+ brightness, 0x7f);
+ break;
}
if (ret)
@@ -114,6 +124,8 @@ static int da903x_backlight_probe(struct platform_device *pdev)
max_brightness = DA9030_MAX_BRIGHTNESS;
break;
case DA9034_ID_WLED:
+ case DA9034_ID_LED_1:
+ case DA9034_ID_LED_2:
max_brightness = DA9034_MAX_BRIGHTNESS;
break;
default:
--
1.5.4.3
Haojian,
Could you please help check if the patch below applies for micco?
Thanks
- eric
On Fri, Sep 18, 2009 at 3:27 AM, <[email protected]> wrote:
> From: Arun KS <[email protected]>
>
> Signed-off-by: Arun KS <[email protected]>
> ---
> drivers/video/backlight/Kconfig | 2 +-
> drivers/video/backlight/da903x_bl.c | 12 ++++++++++++
> 2 files changed, 13 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
> index 90861cd..1607bc9 100644
> --- a/drivers/video/backlight/Kconfig
> +++ b/drivers/video/backlight/Kconfig
> @@ -203,7 +203,7 @@ config BACKLIGHT_DA903X
> depends on BACKLIGHT_CLASS_DEVICE && PMIC_DA903X
> help
> If you have a LCD backlight connected to the WLED output of DA9030
> - or DA9034 WLED output, say Y here to enable this driver.
> + or DA9034 WLED, LED1, LED2 outputs, say Y here to enable this driver.
>
> config BACKLIGHT_MBP_NVIDIA
> tristate "MacBook Pro Nvidia Backlight Driver"
> diff --git a/drivers/video/backlight/da903x_bl.c b/drivers/video/backlight/da903x_bl.c
> index 93bb434..c6ceb76 100644
> --- a/drivers/video/backlight/da903x_bl.c
> +++ b/drivers/video/backlight/da903x_bl.c
> @@ -23,6 +23,8 @@
> #define DA9030_WLED_CP_EN (1 << 6)
> #define DA9030_WLED_TRIM(x) ((x) & 0x7)
>
> +#define DA9034_LED1_CONTROL 0x35
> +#define DA9034_LED2_CONTROL 0x36
> #define DA9034_WLED_CONTROL1 0x3C
> #define DA9034_WLED_CONTROL2 0x3D
>
> @@ -66,6 +68,14 @@ static int da903x_backlight_set(struct backlight_device *bl, int brightness)
> val |= brightness ? DA9030_WLED_CP_EN : 0;
> ret = da903x_write(dev, DA9030_WLED_CONTROL, val);
> break;
> + case DA9034_ID_LED_1:
> + ret = da903x_update(dev, DA9034_LED1_CONTROL,
> + brightness, 0x7f);
> + break;
> + case DA9034_ID_LED_2:
> + ret = da903x_update(dev, DA9034_LED2_CONTROL,
> + brightness, 0x7f);
> + break;
> }
>
> if (ret)
> @@ -114,6 +124,8 @@ static int da903x_backlight_probe(struct platform_device *pdev)
> max_brightness = DA9030_MAX_BRIGHTNESS;
> break;
> case DA9034_ID_WLED:
> + case DA9034_ID_LED_1:
> + case DA9034_ID_LED_2:
> max_brightness = DA9034_MAX_BRIGHTNESS;
> break;
> default:
> --
> 1.5.4.3
>
>
> Apparently there is a bug in the hardware design on my custom board. We are
> using LED1 for backlight control.
> Thanks Haojian for clarification.
>
Now you know that :-)
Either let your hardware engineer change the design, or there are still
workarounds, you can control the LED1/2 through the sysfs entries.
- eric
On Mon, Sep 21, 2009 at 10:08 AM, Eric Miao <[email protected]> wrote:
>
> > Apparently there is a bug in the hardware design on my custom board. We are
> > using LED1 for backlight control.
> > Thanks Haojian for clarification.
> >
>
> Now you know that :-)
>
> Either let your hardware engineer change the design, or there are still
> workarounds, you can control the LED1/2 through the sysfs entries.
If I apply the patch which I send, backlight driver is working well
through the da093x_bl.c driver.
Because LED1 driver is same as the WLED driver apart from current
level it can provide. WLED can provide max of 32mA but LED can only
provide current <500uA.
Thanks for your concern.
Arun
>
> - eric
On Fri, 2009-09-18 at 17:10 +0800, Eric Miao wrote:
> Could you please help check if the patch below applies for micco?
Eric/Haojian: Please let me know if you want me to take this patch or
not...
Cheers,
Richard
> On Fri, Sep 18, 2009 at 3:27 AM, <[email protected]> wrote:
> > From: Arun KS <[email protected]>
> >
> > Signed-off-by: Arun KS <[email protected]>
> > ---
> > drivers/video/backlight/Kconfig | 2 +-
> > drivers/video/backlight/da903x_bl.c | 12 ++++++++++++
> > 2 files changed, 13 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/video/backlight/Kconfig b/drivers/video/backlight/Kconfig
> > index 90861cd..1607bc9 100644
> > --- a/drivers/video/backlight/Kconfig
> > +++ b/drivers/video/backlight/Kconfig
> > @@ -203,7 +203,7 @@ config BACKLIGHT_DA903X
> > depends on BACKLIGHT_CLASS_DEVICE && PMIC_DA903X
> > help
> > If you have a LCD backlight connected to the WLED output of DA9030
> > - or DA9034 WLED output, say Y here to enable this driver.
> > + or DA9034 WLED, LED1, LED2 outputs, say Y here to enable this driver.
> >
> > config BACKLIGHT_MBP_NVIDIA
> > tristate "MacBook Pro Nvidia Backlight Driver"
>