Hi,
* Renju Liu <[email protected]> [151220 15:00]:
> Hello all,
>
> For omap4, I wonder how should emif be handled when suspending the entire SoC.
>
> In playing with Robert Nelson's 4.2 kernel tree [1], I noticed that
> the suspend seems broken: the kernel, in the suspend_noirq phase,
> tries to disable the emif hwmod by calling omap_device_idle(); the
> board thus hangs. It appears to me that the DDR shouldn't be disabled
> at this moment or it needs special treatment -- in comparison, the
> AM35xx kernel switches its execution to on-chip SRAM before turning
> off the emif.
>
> I tried to examine earlier kernels (3.2, 3.4) for omap4 to see how
> emif is power-managed. However I didn't see much useful information.
Hmm am437x is different where it's using a GPIO pin to power the memory.
That's not the case on pandaboard or typical omap2/3/4/5 boards and
seems to be limited to am33xx/am437x designs.
Things should work with current mainline, at least this works for
me on omap4430:
# rtcwake -m mem -s 5
And wakes up properly five seconds later.
And this also works for me with current mainline kernel:
#!/bin/bash
uarts=$(find /sys/class/tty/tty[SO]*/device/power/ -type d)
for uart in $uarts; do
echo 3000 > $uart/autosuspend_delay_ms 2>&1
done
uarts=$(find /sys/class/tty/tty[SO]*/power/ -type d 2>/dev/null)
for uart in $uarts; do
echo enabled > $uart/wakeup 2>&1
echo auto > $uart/control 2>&1
done
echo 1 > /sys/kernel/debug/pm_debug/enable_off_mode
And then echo mem > /sys/power/state will wake up to serial console
activity.
This is with duovero and the wakeriq patch for it's console UART that
I posted last week. AFAIK panda already has that enabled.
Regards,
Tony
> 1. https://eewiki.net/display/linuxonarm/PandaBoard
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html