Hibernation

Good day,

I'm looking for a way to implement suspend to disk for the omap3530 on
the beagle board. Do anyone have any clues if it could work? I've
already looked through kernel.org git trees for linux-omap-pm and
linux-omap-2.6 but none already have merge this functionality.

Any pointers would be appreciated,

Flip

I asked about a related issue here, and Koen Kooi replied with some
useful information:
http://groups.google.com/group/beagleboard/browse_thread/thread/dcac43d213b3c2b5/2d27915ea0f756d4

-Preston

Thanks for your fast anwser,

I’ve looked at the other thread and helps a bit but I still have some questions. I’ve pulled the linux-omap-pm tree yesterday afternoon and used the latest tag v2.6.28-rc3. The omap3_beagleboard_defconfig file doesn’t have CONFIG_SUSPEND_FREEZER and CONFIG_HIBERNATION available. I’m not sure what I have to do next. Should I try to merge the beagleboard defconfig with another that support such options?

-Phil

Thanks for your fast anwser,

I've looked at the other thread and helps a bit but I still have some questions. I've pulled the linux-omap-pm tree yesterday afternoon and used the latest tag v2.6.28-rc3.

That won't have the extra pm patches, you'll need this branch:

http://git.kernel.org/?p=linux/kernel/git/khilman/linux-omap-pm.git;a=shortlog;h=pm-20081119

The omap3_beagleboard_defconfig file doesn't have CONFIG_SUSPEND_FREEZER and CONFIG_HIBERNATION available. I'm not sure what I have to do next. Should I try to merge the beagleboard defconfig with another that support such options?

Hibernation isn't used much on arm platforms since regular suspend saved enough power, the nokia internet tablets don't even suspend anymore, they just go into idle when not being used and last ~2 weeks on a single charge.
Anyway, the ARM part in the kernel only enables a small set of KConfig options, so you could tweak them so it will expose the hibernation stuff. I don't know if the codepaths work for non-x86, but there's only one way to find out :slight_smile:

regards,

Koen

Thanks a lot Koen,

I'll investigate this a bit more... To be precise, I'm not really
looking for suspending to disk only to save power. I'm thinking that
boot-up time would be greatly improved if an image of the memory would
stay on disk. I would like the board to boot as fast as a cellular
phone from a power off state. In fact it should even be quicker since
there's no wireless network to join. I would like it to take about 30
seconds from power off to a complete functional desktop solution.
There might be others ways to achieve this. Any other ideas?

Thanks
Phil

Op 20 nov 2008, om 16:44 heeft godp1301@gmail.com het volgende geschreven:

Thanks a lot Koen,

I'll investigate this a bit more... To be precise, I'm not really
looking for suspending to disk only to save power. I'm thinking that
boot-up time would be greatly improved if an image of the memory would
stay on disk. I would like the board to boot as fast as a cellular
phone from a power off state. In fact it should even be quicker since
there's no wireless network to join. I would like it to take about 30
seconds from power off to a complete functional desktop solution.
There might be others ways to achieve this. Any other ideas?

The trick-du-jour is to save memory to flash and have the bootloader load that into ram and resume the kernel, which makes it possible to 'boot' linux in less than 2 seconds on arm platforms. The problem with that is that changing userspace (e.g. package upgrades) conflicts with that and a boot will result in a crash loop till the image in flash gets updated.
I haven't played with that yet, so I'm not sure if that needs extra patches to uboot or the kernel.

regards,

Koen