#10542 NORM Not Tri: DCON is unfreezing too early on resume

Zarro Boogs per Child bugtracker at laptop.org
Wed Dec 15 19:37:14 EST 2010


#10542: DCON is unfreezing too early on resume
--------------------------+-------------------------------------------------
 Reporter:  jnettlet      |                 Owner:               
     Type:  defect        |                Status:  new          
 Priority:  normal        |             Milestone:  Not Triaged  
Component:  not assigned  |               Version:  not specified
 Keywords:                |           Next_action:  never set    
 Verified:  0             |   Deployment_affected:               
Blockedby:                |              Blocking:               
--------------------------+-------------------------------------------------
 I was researching a glitch when resuming an XO 1.5 with a rotated display.
 There were registers that needed to be restored in viafb during resume.
 After changing these I was still seeing a problem.  These are the steps
 that I did to chase down the problem.

 1)  Custom compile a kernel with lines 791, 801 and 802 of
 drivers/video/olpc_dcon.c commented out.  This was to disable kernel
 suspend/resume from changing the dcon status.
 2)  edit my /bootpart/boot/olpc.fth line 83 so I will boot to run-level 3
 by default.
 3)  Plug in a usb ethernet adapter, or serial console.
 4)  Boot this configuration
 5)  From the console start a GUI by issuing the olpc-dm command
 6)  Rotate the display
 7)  From console or ssh session verify that powerd is not running
 8)  echo 1 > /sys/devices/platform/dcon/freeze  and verify the dcon is
 frozen
 9)  echo 0 > /sys/devices/platform/dcon/freeze and verify the dcon is
 unfrozen
 10) echo 1 > /sys/devices/platform/dcon/freeze
 11) echo mem > /sys/power/state
 12) move mouse, touchpad, or press key on keyboard

 Expected Result)
 Normally we would now move the mouse or press a key to wake the system up
 and the dcon would be unfrozen by the kernel or the powerd daemon, but we
 have both these functions disabled therefore the screen should remain
 frozen.

 Actual Results)
 The DCON unfreezes instantly even before all the video registers have been
 restored so the screen glitches.

 Furthermore we can see the kernel and userspace are not responsible for
 this DCON unfreeze because `cat /sys/devices/platform/dcon/freeze` will
 return 1 and in order to freeze the dcon again we will need to echo 0 to
 the interface first and then 1 to freeze the dcon again.

-- 
Ticket URL: <http://dev.laptop.org/ticket/10542>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system


More information about the Bugs mailing list