Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 Nov 2009 18:25:52 +1100 (EST)
From:      Ian Smith <smithi@nimnet.asn.au>
To:        Yuri <yuri@rawbw.com>
Cc:        Paul B Mahol <onemda@gmail.com>, freebsd-questions@freebsd.org
Subject:   Re: Does hybernate/wakeup work?
Message-ID:  <20091104173234.X35366@sola.nimnet.asn.au>
In-Reply-To: <4AF1149C.2070408@rawbw.com>
References:  <20091104005002.6B49F1065714@hub.freebsd.org> <20091104143039.J35366@sola.nimnet.asn.au> <4AF1149C.2070408@rawbw.com>

index | next in thread | previous in thread | raw e-mail

On Tue, 3 Nov 2009, Yuri wrote:
 > Ian Smith wrote:
 > > As Paul said, hibernation only works if the machine's BIOS supports it
 > > (hw.acpi.s4bios = 1) AND you've already prepared a suitable disk area,
 > > usually a separate slice (DOS partition) or as a file in a 'doze slice.
 > > 
 > > To make even a vaguely informed guess as to whether hibernation and/or
 > > acpiconf -s3 (suspend/resume) might work, we'd need to know:
 > > 
 > >  What version of FreeBSD on which architecture?  (output of 'uname -a')
 > > 
 > >  What make and model of laptop?  (someone may know if that one works)
 > > 
 > >  Whether it runs a single or multiple CPUs?  (see /var/run/dmesg.boot)
 > > 
 > >  The output of 'sysctl hw.acpi' ?
 > > 
 > > cheers, Ian
 > >   
 > 
 > Here is this information:
 > FreeBSD-8.0-RC2

i386 or amd64?  It matters, which is why we ask for uname -a .. obscure 
your hostname etc if needed.  Some Atom models (230 and 330, I read) 
have feature 'LM' and so can run amd64; others don't and must run i386.

 > Laptop is Lenovo S10-2, single CPU, Intel Atom.

But with hyperthreading enabled or not?  How many CPUs launched (dmesg)? 
Again, it matters.  As I understand it, on 8.0 amd64 SMP suspend/resume 
(S3) should work, i386 SMP is currently broken, i386 non-SMP should 
(still) work, but I'm really not sure about the Atoms.

head -50 /var/run/dmesg.boot (or so) should clear this up.  We don't 
need the whole thing, but show anything to do with ACPI and CPU(s).

 > --- sysctl hw.acpi output ---
 > 
 > hw.acpi.supported_sleep_state: S3 S4 S5
 > hw.acpi.power_button_state: S5
 > hw.acpi.sleep_button_state: S3
 > hw.acpi.lid_switch_state: NONE
 > hw.acpi.standby_state: NONE
 > hw.acpi.suspend_state: S3
 > hw.acpi.sleep_delay: 1
 > hw.acpi.s4bios: 0

So, hibernate won't work.  There was talk of someone doing that for a 
Google SoC project but I've heard no more about it for a long while.

 > hw.acpi.verbose: 0
 > hw.acpi.disable_on_reboot: 0
 > hw.acpi.handle_reboot: 0
 > hw.acpi.reset_video: 0
 > hw.acpi.thermal.min_runtime: 0
 > hw.acpi.thermal.polling_rate: 10
 > hw.acpi.thermal.user_override: 0
 > hw.acpi.thermal.tz0.temperature: 43.0C
 > hw.acpi.thermal.tz0.active: -1
 > hw.acpi.thermal.tz0.passive_cooling: 0

Slightly surprising, but again I know nothing about Atom BIOSes.

 > hw.acpi.thermal.tz0.thermal_flags: 0
 > hw.acpi.thermal.tz0._PSV: -1
 > hw.acpi.thermal.tz0._HOT: -1
 > hw.acpi.thermal.tz0._CRT: 102.0C
 > hw.acpi.thermal.tz0._ACx: -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
 > hw.acpi.thermal.tz0._TC1: -1
 > hw.acpi.thermal.tz0._TC2: -1
 > hw.acpi.thermal.tz0._TSP: 300
 > hw.acpi.battery.life: -1
 > hw.acpi.battery.time: -1
 > hw.acpi.battery.state: 7
 > hw.acpi.battery.units: 1
 > hw.acpi.battery.info_expire: 5
 > hw.acpi.acline: 1
 > hw.acpi.cpu.cx_lowest: C1

If this is either i386 uniprocessor or amd64 SMP, suspend/resume should 
work, though possibly needing some settings tweaked and/or some modules 
unloaded/reloaded in /etc/rc.{suspend,resume} to do so successfully.

If so, I'd next try the freebsd-mobile@ list where several people who 
should be able to advise on this tend to hang out.  If not, you may be 
out of luck at this stage.

cheers, Ian


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20091104173234.X35366>