suspend using APM on a Sony PCG-F350 with FreeBSD 6.1

RJ White rj at moxad.com
Sun Dec 17 13:47:19 PST 2006


	On Tue, Dec 12, 2006, freebsd-mobile-request at freebsd.org wrote:

	From: Ian Smith <smithi at nimnet.asn.au>

	No clues in /var/log/messages like 'suspend failed' ono?  Running out of
	ideas fast here, but it still sounds familiar from when I upgraded from
	4.5 to 5.4 a couple of years ago, struggling to remember details .. 
	
	I run apmd -v here for the extra noise to syslog, and quit using zzz
	and use the sleep button instead, because with apmd running it runs
	rc.suspend, which logs suspend (as well as resume) times to syslog,
	unlike using zzz, plus allowing custom kldunloads etc.  Just now:

	Dec 12 03:35:40 paqi apmd[444]: apmevent 000a index 6    <-- apmd -v
	Dec 12 03:35:41 paqi apm: suspend at 20061212 03:35:41   <-- rc.suspend
	Dec 12 03:36:05 paqi kernel: xe0: detached
	Dec 12 03:36:05 paqi kernel: wakeup from sleeping state (slept 00:00:18)
	Dec 12 03:36:04 paqi apmd[444]: apmevent 0003 index 7    <-- apmd -v
	Dec 12 03:36:04 paqi apm: resumed at 20061212 03:36:04   <-- rc.resume
	Dec 12 03:36:08 paqi kernel: xe0: <Xircom CreditCard Ethernet+Modem 33.6>
	 at port 0x2f8-0x2ff irq 11 function 0 config 2 on pccard0
	Dec 12 03:36:08 paqi kernel: xe0: Ethernet address: 00:80:c7:ea:cb:c5

I don't get all the output you're seeing.
I tried using the sleep buttons instead of 'zzz', and 'apmd -v', and the
most I get in /var/log/messages when I try a System Suspend is :
	Dec 11 18:08:40 laptop2 apmd[480]: apmevent 000a index 1
and then I had to power-cycle again. 
And then when I try a System Idle, I get :
	Dec 11 18:15:46 laptop2 apmd[473]: apmevent 000b index 1
	Dec 11 18:15:46 laptop2 apm: resumed at 20061211 18:15:46
the 'index #' increases by 1 each experiment I tried.
No, it didn't suspend.  The 'resumed' message came immediately.
and when I try a System Hibernation, I get :
	Dec 11 18:20:07 laptop2 apmd[473]: apmevent 000a index 8
Note it went back to 000a, and I had to power-cycle again.

(As you can see, I tried this a week ago - I haven't had time to respond
till now.  No, not really the day before your suggestions - Big time zone
difference :-)

	Been there too .. um, are you loading VESA at all?

I don't think so.  I see alot of messages in Xorg.0.log about vesa, but
ultimately the last messages are :
	(II) UnloadModule: "vesa"
	(II) Unloading /usr/X11R6/lib/modules/drivers/vesa_drv.so

When I tried to have zzz exec rc.suspend directly, there is no change.
There is no USB involved, so if I had uncommented the usb entries in
rc.suspend, it will just tell me No such file found.  This is all I have :

	laptop2# kldstat
	Id Refs Address    Size     Name
	 1   10 0xc0400000 6b0e20   kernel
	 2    1 0xc0ab1000 10948    snd_neomagic.ko
	 3    1 0xc0ac2000 2620     acpi_sony.ko
	 4    2 0xc0ac5000 58554    acpi.ko
	 5    1 0xc1fa9000 16000    linux.ko

I tried a kernel compiled with "options  SC_NO_SUSPEND_VTYSWITCH", but it
made no difference.

Not sure about the BIOS version, but I'm reluctant to go the route of uprading
it because I can't try any potentially disabling experiments on this machine
right now.  I'm on a critical project now working 7 days/wk and can't afford
anything going wrong.  And I know suspend used to work on older (4.8?) FreeBSD,
so I know the machine is capable.

Here is the output from 'apm' says about capabilities :
APM version: 1.2
...
APM Capabilities:
        global standby state
        global suspend state
        resume timer from standby
        resume timer from suspend
        RI resume from standby
        RI resume from suspend
        PCMCIA RI resume from standby
        PCMCIA RI resume from suspend

Thanks for all the help.  When I get free time I can try further experiments
but that won't be till the new year.

cheers,
	-rj


More information about the freebsd-mobile mailing list