[lkml]   [2010]   [Oct]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: fails to suspend (pxa2xx-mci.0)
    On Mon, Oct 04, 2010 at 09:30:35AM +0200, Sven Neumann wrote:
    > we are running an embedded system here based on the PXA300 platform.
    > Suspend/resume used to work well so far. However after upgrading the
    > kernel from to, we get the following error when trying
    > to suspend the system:
    > # echo "mem" > "/sys/power/state"
    > [ 5647.295953] PM: Syncing filesystems ... done.
    > [ 5647.318792] Freezing user space processes ... (elapsed 0.01 seconds) done.
    > [ 5647.337048] Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
    > [ 5647.356915] Suspending console(s) (use no_console_suspend to debug)
    > [ 5647.366651] pm_op(): platform_pm_suspend+0x0/0x5c returns -38
    > [ 5647.366671] PM: Device pxa2xx-mci.0 failed to suspend: error -38
    > [ 5647.367082] PM: Some devices failed to suspend

    We've bisected this effect down to commit 152e1d5920 ("PM: Prevent
    waiting forever on asynchronous resume after failing suspend").
    Suspending our PXA3xx based system breaks with this patch.

    I tried to understand what's going wrong, but I didn't follow the
    discussion about this logic, so I would rather like to pass it back to
    the originating people.

    I can only guess that the problem here is the somewhat tricky handling
    around mmc_sdio_suspend(), which returns -ENODEV (-38) in case a
    particular function of a card can not be suspended. The SDIO core would
    have simply removed the card in this case normally, but the PM core
    seems to interfere now, stopping the whole suspend procedure.

    Can anyone shed some light on this?


     \ /
      Last update: 2010-10-07 01:57    [W:0.021 / U:0.608 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site