WSOD fix.

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

WSOD fix.

Lars-Peter Clausen
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi

I've just pushed a patch[1] to the 2.6.34 tree which has been proven to be quite
effective, in regarding to fixing the WSOD in my 2.6.37 tree.
Previously turning the screen on and off had a 60% change of resulting in a permanent
WSOD.
Which the patch applied I haven't seen a single WSOD within 100 display on/off cycles.

You'll still see a short WSOD when turning the display on, that is because the fix
add an additional delay of 100ms in the display init sequence and now the backlight
is turned on before the display.

To get a smooth experience the following scripts have been proven to be useful.

#!/bin/sh
# display_on.sh
echo 0 > /sys/class/graphics/fb0/blank
echo 0 > /sys/class/lcd/jbt6k74-lcd/lcd_power
echo 63 > /sys/class/backlight/pcf50633-backlight/brightness

#!/bin/sh
# display_off.sh
echo 0 > /sys/class/backlight/pcf50633-backlight/brightness
echo 4 > /sys/class/lcd/jbt6k74-lcd/lcd_power
echo 4 > /sys/class/graphics/fb0/blank

They make sure that display, backlight and framebuffer are turned on/off in the
correct order.

- - Lars

[1]
http://git.openmoko.org/?p=kernel.git;a=commitdiff;h=43f0161295bc311d09d705db7b381653fbbb9e46
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk0bkYQACgkQBX4mSR26RiOMdQCfcYqge5XdzBOe5hTLX2ZsywaI
0+AAnjUQcvqb1d9L6RjugiQmlZPaYb8p
=m5jc
-----END PGP SIGNATURE-----

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: WSOD fix (cosmetic issues, white screen for 100ms with xset dpms controlling backlight)

Timo Juhani Lindfors
Lars-Peter Clausen <[hidden email]> writes:
> http://git.openmoko.org/?p=kernel.git;a=commitdiff;h=43f0161295bc311d09d705db7b381653fbbb9e46

I have black background in X and let X handle backlight. When I touch
the screen I see white screen for 100 ms. If I use

> #!/bin/sh
> # display_on.sh
> echo 0 > /sys/class/graphics/fb0/blank
> echo 0 > /sys/class/lcd/jbt6k74-lcd/lcd_power
> echo 63 > /sys/class/backlight/pcf50633-backlight/brightness

> #!/bin/sh
> # display_off.sh
> echo 0 > /sys/class/backlight/pcf50633-backlight/brightness
> echo 4 > /sys/class/lcd/jbt6k74-lcd/lcd_power
> echo 4 > /sys/class/graphics/fb0/blank

then I do not see the white screen.

How should we integrate this to Xorg so that normal "xset dpms" could
be used?



Loading...