ACPI Suspend, devd and rc.suspend

Kevin Oberman oberman at es.net
Tue Mar 28 05:15:31 UTC 2006


> From: George Hartzell <hartzell at alerce.com>
> Date: Mon, 27 Mar 2006 20:17:59 -0800
> Sender: owner-freebsd-mobile at freebsd.org
> 
> Norberto Meijome writes:
>  > On Mon, 27 Mar 2006 09:45:27 -0800
>  > Ben Jencks <ben-freebsd-mobile at bjencks.net> wrote:
>  > [...]
>  > >
>  > > In order to make this work on my T43p, I set dev.acpi_ibm.0.events=1,
>  > > so that Fn-F4 generates an acpi_ibm event (which is handled by devd)
>  > > rather than a suspend event (which tells the kernel to suspend
>  > > straightaway). I have the block
>  > > 
>  > > notify 10 {
>  > >         match "system"          "ACPI";
>  > >         match "subsystem"       "IBM";
>  > >         match "notify"          "0x04";
>  > >         action "/usr/sbin/zzz";
>  > > };
>  > > 
>  > > in my devd.conf, so that it calls zzz, which does the right thing.
>  > > 
>  > 
>  > cool, that's EXACTLY what I was after :) thx man
> 
> Is there any way to hook up 
> 
>   hw.acpi.lid_switch_state: S3
> 
> so that it also runs through devd and can run zzz?
> 
> The atheros wireless card in my T42p doesn't wake up properly when I
> suspend/resume from X, but if I use vidcontrol to switch to a
> different virtual terminal on suspend and back on resume then it works
> just fine.
> 
> I've add a couple of hacks in /etc/rc.{suspend,resume}, but they're
> not called on a lid close event.

You might want to look at a couple of sysctls: hw.acpi.reset_video and
hw.syscons.sc_no_suspend_vtswitch. these might help.

I am pretty sure that hooks to the lid switch are possible, but I don't
think code has been put in FreeBSD to do it.
-- 
R. Kevin Oberman, Network Engineer
Energy Sciences Network (ESnet)
Ernest O. Lawrence Berkeley National Laboratory (Berkeley Lab)
E-mail: oberman at es.net			Phone: +1 510 486-8634


More information about the freebsd-mobile mailing list