WSOD on device

Michael Trimarchi trimarchi at
Fri Mar 20 18:32:50 CET 2009


commit 6d4f252dce85b42042cfe0cc266f6568a859b4ff
Author: Nicolas Dufresne <nicolas.dufresne at>
Date:   Mon Mar 2 10:45:59 2009 +0000

    Fixed corruption of LCM registers
    Some registers where not set properly, or at the right time (thanks 
to Balaj
    for his patch).
    Weak locking could lead to corruption when using sysfs to switch 
state from
    multiple threads or processes. The state transitions are now all atomic.
    The driver attribute 'last_state' was used for same purpose of 
    Kept only 'normal_state' and used it in 'init_regs' instead of 
custom qvga
    This patch should fix bug #2235.
    Signed-off-by: Nicolas Dufresne <nicolas.dufresne at>

My freerunner during resume go in WSOD and remain in that state forever, 
can you explain
me better these changes?

-       /* hard reset the jbt6k74 */
-       (jbt6k74_pdata->reset)(0, 0);
-       mdelay(1);
-       (jbt6k74_pdata->reset)(0, 1);
-       mdelay(120);
-       rc = jbt_reg_write_nodata(jbt, 0x01);
-       if (rc < 0)
-               dev_err(&spi->dev, "cannot soft reset\n");
-       mdelay(120);

You cut this code too, I don't understand all the change because I don't
now how device work. I have this problem and I must revert this patch 
for my device to
work properly. I will try to understand what part is wrong.


More information about the openmoko-kernel mailing list