#12556 HIGH 13.1.0: XO-4 mouse cursor corrupt after display-off suspend (was: [CL4] After wake up from suspend, the pointer will became garbage.)
Zarro Boogs per Child
bugtracker at laptop.org
Tue Apr 2 12:38:50 EDT 2013
#12556: XO-4 mouse cursor corrupt after display-off suspend
---------------------------------------+------------------------------------
Reporter: tomyin | Owner: jnettlet
Type: defect | Status: new
Priority: high | Milestone: 13.1.0
Component: x window system | Version: not specified
Resolution: | Keywords:
Next_action: diagnose | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
---------------------------------------+------------------------------------
Changes (by dsd):
* cc: dsd (added)
Comment:
Some experiments and analysis on 13.2.0 build 2 on XO-4 B1 and XO-4 C1.
All tests were done with the mouse cursor visible on screen (i.e. the last
input was mouse input, rather than touch input that would have hidden the
cursor).
== FB blank/unblank ==
With X on-screen:
{{{
echo 1 > /sys/devices/d420b000.display/pxa168fb_gfx.0/graphics/fb0/blank
echo 0 > /sys/devices/d420b000.display/pxa168fb_gfx.0/graphics/fb0/blank
}}}
The cursor is OK.
== DCON power cycle ==
With X on-screen:
{{{
echo 1 > /sys/devices/platform/dcon/sleep
echo 0 > /sys/devices/platform/dcon/sleep
}}}
The cursor is OK.
== Suspend with display on, no VT change ==
The normal idle-suspend routine does this. An equivalent test with the
same results is:
1. (on serial console while X is on-screen) echo mem > /sys/power/state
2. Wake up with power button
The mouse cursor is fine after resume.
== Suspend with VT change either side ==
Suspend by tapping the power button; this causes powerd's suspend splash
screen to come up (involves a chvt) before suspend happens. It changes
back to X after resume.
Upon resume (and chvt back to X), the cursor is OK.
== Suspend with DCON off ==
This can be done by closing the lid while X is on-screen. An equivalent
test with the same results is:
1. (on serial console while X is on-screen) echo 1 >
/sys/devices/platform/dcon/sleep; echo mem > /sys/power/state
2. Wake up with power button
3. echo 0 > /sys/devices/platform/dcon/sleep
Upon resume, the mouse cursor is corrupt.
== Suspend with FB blanked ==
With X on-screen:
1. echo 1 >
/sys/devices/d420b000.display/pxa168fb_gfx.0/graphics/fb0/blank
2. echo mem > /sys/power/state
3. Wake up with power button
4. echo 0 >
/sys/devices/d420b000.display/pxa168fb_gfx.0/graphics/fb0/blank
Cursor is OK.
== pxa168fb_cursor disabled ==
pxa168fb_cursor is the function that backs up the cursor when the
framebuffer is blanked.
Let's check it has an effect. Disabled it at the code level, repeated the
"Suspend with display on, no VT change" test. On resume, the mouse cursor
is bad.
--
Ticket URL: <http://dev.laptop.org/ticket/12556#comment:6>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list