* [PATCH 1/2] backlight: Fix blanking for LMS283GF05 LCD
@ 2010-06-04 5:52 Marek Vasut
2010-06-04 5:52 ` [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD Marek Vasut
0 siblings, 1 reply; 8+ messages in thread
From: Marek Vasut @ 2010-06-04 5:52 UTC (permalink / raw)
To: linux-arm-kernel
The LCD was turned on if the variable power was > 0, but that was incorrect. The
LCD has to be turned on in every case but POWERDOWN.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
---
drivers/video/backlight/lms283gf05.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/video/backlight/lms283gf05.c b/drivers/video/backlight/lms283gf05.c
index abc43a0..6a35602 100644
--- a/drivers/video/backlight/lms283gf05.c
+++ b/drivers/video/backlight/lms283gf05.c
@@ -129,7 +129,7 @@ static int lms283gf05_power_set(struct lcd_device *ld, int power)
struct spi_device *spi = st->spi;
struct lms283gf05_pdata *pdata = spi->dev.platform_data;
- if (power) {
+ if (power < FB_BLANK_POWERDOWN) {
if (pdata)
lms283gf05_reset(pdata->reset_gpio,
pdata->reset_inverted);
--
1.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD
2010-06-04 5:52 [PATCH 1/2] backlight: Fix blanking for LMS283GF05 LCD Marek Vasut
@ 2010-06-04 5:52 ` Marek Vasut
2010-06-04 7:29 ` Alberto Panizzo
0 siblings, 1 reply; 8+ messages in thread
From: Marek Vasut @ 2010-06-04 5:52 UTC (permalink / raw)
To: linux-arm-kernel
The LCD was turned on if the variable power was > 0, but that was incorrect. The
LCD has to be turned on in every case but POWERDOWN.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
---
drivers/video/backlight/l4f00242t03.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/video/backlight/l4f00242t03.c b/drivers/video/backlight/l4f00242t03.c
index 9093ef0..ac20b2e 100644
--- a/drivers/video/backlight/l4f00242t03.c
+++ b/drivers/video/backlight/l4f00242t03.c
@@ -78,7 +78,7 @@ static int l4f00242t03_lcd_power_set(struct lcd_device *ld, int power)
const u16 slpin = 0x10;
const u16 disoff = 0x28;
- if (power) {
+ if (power < FB_BLANK_POWERDOWN) {
if (priv->lcd_on)
return 0;
--
1.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD
2010-06-04 5:52 ` [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD Marek Vasut
@ 2010-06-04 7:29 ` Alberto Panizzo
2010-06-05 1:25 ` Marek Vasut
0 siblings, 1 reply; 8+ messages in thread
From: Alberto Panizzo @ 2010-06-04 7:29 UTC (permalink / raw)
To: linux-arm-kernel
On ven, 2010-06-04 at 07:52 +0200, Marek Vasut wrote:
> The LCD was turned on if the variable power was > 0, but that was incorrect. The
> LCD has to be turned on in every case but POWERDOWN.
>
> Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Ack
> ---
> drivers/video/backlight/l4f00242t03.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/video/backlight/l4f00242t03.c b/drivers/video/backlight/l4f00242t03.c
> index 9093ef0..ac20b2e 100644
> --- a/drivers/video/backlight/l4f00242t03.c
> +++ b/drivers/video/backlight/l4f00242t03.c
> @@ -78,7 +78,7 @@ static int l4f00242t03_lcd_power_set(struct lcd_device *ld, int power)
> const u16 slpin = 0x10;
> const u16 disoff = 0x28;
>
> - if (power) {
> + if (power < FB_BLANK_POWERDOWN) {
> if (priv->lcd_on)
> return 0;
>
lcd.h states:
struct lcd_ops {
/* Get the LCD panel power status (0: full on, 1..3: controller
power on, flat panel power off, 4: full off), see FB_BLANK_XXX */
int (*get_power)(struct lcd_device *);
/* Enable or disable power to the LCD (0: on; 4: off, see FB_BLANK_XXX) */
int (*set_power)(struct lcd_device *, int power);
AFAIK the gray area between FB_BLANK_NORMAL and FB_BLANK_HSYNC_SUSPEND
can be chosen as needs.
Why not:
+ #define POWER_IS_ON(pwr) ((pwr) <= FB_BLANK_NORMAL)
...
- if (power) {
+ if (POWER_IS_ON(power)) {
if (priv->lcd_on)
return 0;
So with FB_BLANK_NORMAL the lcd is active and on -> low latencies
in re-enabling the video out, but for !POWER_IS_ON(power) we will send
the lcd to standby.
It have to be implemented for power == FB_BLANK_POWERDOWN to turn off the
regulators of the lcd.
What do you think about?
Regards,
--
Alberto!
Be Persistent!
- Greg Kroah-Hartman (FOSDEM 2010)
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD
2010-06-04 7:29 ` Alberto Panizzo
@ 2010-06-05 1:25 ` Marek Vasut
2010-06-05 9:22 ` Alberto Panizzo
0 siblings, 1 reply; 8+ messages in thread
From: Marek Vasut @ 2010-06-05 1:25 UTC (permalink / raw)
To: linux-arm-kernel
Dne P? 4. ?ervna 2010 09:29:43 Alberto Panizzo napsal(a):
> On ven, 2010-06-04 at 07:52 +0200, Marek Vasut wrote:
> > The LCD was turned on if the variable power was > 0, but that was
> > incorrect. The LCD has to be turned on in every case but POWERDOWN.
> >
> > Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
>
> Ack
>
> > ---
> >
> > drivers/video/backlight/l4f00242t03.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/video/backlight/l4f00242t03.c
> > b/drivers/video/backlight/l4f00242t03.c index 9093ef0..ac20b2e 100644
> > --- a/drivers/video/backlight/l4f00242t03.c
> > +++ b/drivers/video/backlight/l4f00242t03.c
> > @@ -78,7 +78,7 @@ static int l4f00242t03_lcd_power_set(struct lcd_device
> > *ld, int power)
> >
> > const u16 slpin = 0x10;
> > const u16 disoff = 0x28;
> >
> > - if (power) {
> > + if (power < FB_BLANK_POWERDOWN) {
> >
> > if (priv->lcd_on)
> >
> > return 0;
>
> lcd.h states:
> struct lcd_ops {
> /* Get the LCD panel power status (0: full on, 1..3: controller
> power on, flat panel power off, 4: full off), see FB_BLANK_XXX */
> int (*get_power)(struct lcd_device *);
> /* Enable or disable power to the LCD (0: on; 4: off, see FB_BLANK_XXX)
*/
> int (*set_power)(struct lcd_device *, int power);
>
> AFAIK the gray area between FB_BLANK_NORMAL and FB_BLANK_HSYNC_SUSPEND
> can be chosen as needs.
>
> Why not:
>
> + #define POWER_IS_ON(pwr) ((pwr) <= FB_BLANK_NORMAL)
>
> ...
>
> - if (power) {
> + if (POWER_IS_ON(power)) {
> if (priv->lcd_on)
> return 0;
>
> So with FB_BLANK_NORMAL the lcd is active and on -> low latencies
> in re-enabling the video out, but for !POWER_IS_ON(power) we will send
> the lcd to standby.
>
> It have to be implemented for power == FB_BLANK_POWERDOWN to turn off the
> regulators of the lcd.
>
> What do you think about?
Thanks! I sent a new (better) version. If you want credit in it, tell me how
should I add you one ;-)
>
> Regards,
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD
2010-06-05 1:25 ` Marek Vasut
@ 2010-06-05 9:22 ` Alberto Panizzo
2010-06-05 9:46 ` Marek Vasut
0 siblings, 1 reply; 8+ messages in thread
From: Alberto Panizzo @ 2010-06-05 9:22 UTC (permalink / raw)
To: linux-arm-kernel
On sab, 2010-06-05 at 03:25 +0200, Marek Vasut wrote:
> Dne P? 4. ?ervna 2010 09:29:43 Alberto Panizzo napsal(a):
> > On ven, 2010-06-04 at 07:52 +0200, Marek Vasut wrote:
> > > The LCD was turned on if the variable power was > 0, but that was
> > > incorrect. The LCD has to be turned on in every case but POWERDOWN.
> > >
> > > Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
> >
> > Ack
> >
> > > ---
> > >
> > > drivers/video/backlight/l4f00242t03.c | 2 +-
> > > 1 files changed, 1 insertions(+), 1 deletions(-)
> > >
> > > diff --git a/drivers/video/backlight/l4f00242t03.c
> > > b/drivers/video/backlight/l4f00242t03.c index 9093ef0..ac20b2e 100644
> > > --- a/drivers/video/backlight/l4f00242t03.c
> > > +++ b/drivers/video/backlight/l4f00242t03.c
> > > @@ -78,7 +78,7 @@ static int l4f00242t03_lcd_power_set(struct lcd_device
> > > *ld, int power)
> > >
> > > const u16 slpin = 0x10;
> > > const u16 disoff = 0x28;
> > >
> > > - if (power) {
> > > + if (power < FB_BLANK_POWERDOWN) {
> > >
> > > if (priv->lcd_on)
> > >
> > > return 0;
> >
> > lcd.h states:
> > struct lcd_ops {
> > /* Get the LCD panel power status (0: full on, 1..3: controller
> > power on, flat panel power off, 4: full off), see FB_BLANK_XXX */
> > int (*get_power)(struct lcd_device *);
> > /* Enable or disable power to the LCD (0: on; 4: off, see FB_BLANK_XXX)
> */
> > int (*set_power)(struct lcd_device *, int power);
> >
> > AFAIK the gray area between FB_BLANK_NORMAL and FB_BLANK_HSYNC_SUSPEND
> > can be chosen as needs.
> >
> > Why not:
> >
> > + #define POWER_IS_ON(pwr) ((pwr) <= FB_BLANK_NORMAL)
> >
> > ...
> >
> > - if (power) {
> > + if (POWER_IS_ON(power)) {
> > if (priv->lcd_on)
> > return 0;
> >
> > So with FB_BLANK_NORMAL the lcd is active and on -> low latencies
> > in re-enabling the video out, but for !POWER_IS_ON(power) we will send
> > the lcd to standby.
> >
> > It have to be implemented for power == FB_BLANK_POWERDOWN to turn off the
> > regulators of the lcd.
> >
> > What do you think about?
>
> Thanks! I sent a new (better) version. If you want credit in it, tell me how
> should I add you one ;-)
Oh no, you have the credit on it. I admit that my L4F00242T03 is not my
best driver, but soon I will work on it again ;)
Thank you for your fix!
Regards,
--
Alberto!
Be Persistent!
- Greg Kroah-Hartman (FOSDEM 2010)
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD
2010-06-05 9:22 ` Alberto Panizzo
@ 2010-06-05 9:46 ` Marek Vasut
0 siblings, 0 replies; 8+ messages in thread
From: Marek Vasut @ 2010-06-05 9:46 UTC (permalink / raw)
To: linux-arm-kernel
Dne So 5. ?ervna 2010 11:22:02 Alberto Panizzo napsal(a):
> On sab, 2010-06-05 at 03:25 +0200, Marek Vasut wrote:
> > Dne P? 4. ?ervna 2010 09:29:43 Alberto Panizzo napsal(a):
> > > On ven, 2010-06-04 at 07:52 +0200, Marek Vasut wrote:
> > > > The LCD was turned on if the variable power was > 0, but that was
> > > > incorrect. The LCD has to be turned on in every case but POWERDOWN.
> > > >
> > > > Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
> > >
> > > Ack
> > >
> > > > ---
> > > >
> > > > drivers/video/backlight/l4f00242t03.c | 2 +-
> > > > 1 files changed, 1 insertions(+), 1 deletions(-)
> > > >
> > > > diff --git a/drivers/video/backlight/l4f00242t03.c
> > > > b/drivers/video/backlight/l4f00242t03.c index 9093ef0..ac20b2e 100644
> > > > --- a/drivers/video/backlight/l4f00242t03.c
> > > > +++ b/drivers/video/backlight/l4f00242t03.c
> > > > @@ -78,7 +78,7 @@ static int l4f00242t03_lcd_power_set(struct
> > > > lcd_device *ld, int power)
> > > >
> > > > const u16 slpin = 0x10;
> > > > const u16 disoff = 0x28;
> > > >
> > > > - if (power) {
> > > > + if (power < FB_BLANK_POWERDOWN) {
> > > >
> > > > if (priv->lcd_on)
> > > >
> > > > return 0;
> > >
> > > lcd.h states:
> > > struct lcd_ops {
> > >
> > > /* Get the LCD panel power status (0: full on, 1..3: controller
> > >
> > > power on, flat panel power off, 4: full off), see FB_BLANK_XXX */
> > >
> > > int (*get_power)(struct lcd_device *);
> > > /* Enable or disable power to the LCD (0: on; 4: off, see
> > > FB_BLANK_XXX)
> >
> > */
> >
> > > int (*set_power)(struct lcd_device *, int power);
> > >
> > > AFAIK the gray area between FB_BLANK_NORMAL and FB_BLANK_HSYNC_SUSPEND
> > > can be chosen as needs.
> > >
> > > Why not:
> > >
> > > + #define POWER_IS_ON(pwr) ((pwr) <= FB_BLANK_NORMAL)
> > >
> > > ...
> > >
> > > - if (power) {
> > > + if (POWER_IS_ON(power)) {
> > >
> > > if (priv->lcd_on)
> > >
> > > return 0;
> > >
> > > So with FB_BLANK_NORMAL the lcd is active and on -> low latencies
> > > in re-enabling the video out, but for !POWER_IS_ON(power) we will send
> > > the lcd to standby.
> > >
> > > It have to be implemented for power == FB_BLANK_POWERDOWN to turn off
> > > the regulators of the lcd.
> > >
> > > What do you think about?
> >
> > Thanks! I sent a new (better) version. If you want credit in it, tell me
> > how should I add you one ;-)
>
> Oh no, you have the credit on it. I admit that my L4F00242T03 is not my
> best driver, but soon I will work on it again ;)
You're very welcome, you did a great job!
>
> Thank you for your fix!
>
> Regards,
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/2] backlight: Fix blanking for LMS283GF05 LCD
@ 2010-06-05 1:25 Marek Vasut
0 siblings, 0 replies; 8+ messages in thread
From: Marek Vasut @ 2010-06-05 1:25 UTC (permalink / raw)
To: linux-arm-kernel
The LCD was turned on if the variable power was > 0, but that was incorrect. The
LCD has to be turned on in every case but POWERDOWN.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
---
drivers/video/backlight/lms283gf05.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/video/backlight/lms283gf05.c b/drivers/video/backlight/lms283gf05.c
index abc43a0..5d3cf33 100644
--- a/drivers/video/backlight/lms283gf05.c
+++ b/drivers/video/backlight/lms283gf05.c
@@ -129,7 +129,7 @@ static int lms283gf05_power_set(struct lcd_device *ld, int power)
struct spi_device *spi = st->spi;
struct lms283gf05_pdata *pdata = spi->dev.platform_data;
- if (power) {
+ if (power <= FB_BLANK_NORMAL) {
if (pdata)
lms283gf05_reset(pdata->reset_gpio,
pdata->reset_inverted);
--
1.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 1/2] backlight: Fix blanking for LMS283GF05 LCD
@ 2010-06-05 9:50 Marek Vasut
0 siblings, 0 replies; 8+ messages in thread
From: Marek Vasut @ 2010-06-05 9:50 UTC (permalink / raw)
To: linux-arm-kernel
The LCD was turned on if the variable power was > 0, but that was incorrect. The
LCD has to be turned on in NORMAL and UNBLANK case.
Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
---
drivers/video/backlight/lms283gf05.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/video/backlight/lms283gf05.c b/drivers/video/backlight/lms283gf05.c
index abc43a0..5d3cf33 100644
--- a/drivers/video/backlight/lms283gf05.c
+++ b/drivers/video/backlight/lms283gf05.c
@@ -129,7 +129,7 @@ static int lms283gf05_power_set(struct lcd_device *ld, int power)
struct spi_device *spi = st->spi;
struct lms283gf05_pdata *pdata = spi->dev.platform_data;
- if (power) {
+ if (power <= FB_BLANK_NORMAL) {
if (pdata)
lms283gf05_reset(pdata->reset_gpio,
pdata->reset_inverted);
--
1.7.1
^ permalink raw reply related [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-06-05 9:50 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-04 5:52 [PATCH 1/2] backlight: Fix blanking for LMS283GF05 LCD Marek Vasut
2010-06-04 5:52 ` [PATCH 2/2] backlight: Fix blanking for L4F00242T03 LCD Marek Vasut
2010-06-04 7:29 ` Alberto Panizzo
2010-06-05 1:25 ` Marek Vasut
2010-06-05 9:22 ` Alberto Panizzo
2010-06-05 9:46 ` Marek Vasut
-- strict thread matches above, loose matches on Subject: below --
2010-06-05 1:25 [PATCH 1/2] backlight: Fix blanking for LMS283GF05 LCD Marek Vasut
2010-06-05 9:50 Marek Vasut
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).