Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Jan 2004 23:19:29 +0000
From:      James Green <jim@thebadger.org>
To:        freebsd-current@freebsd.org
Subject:   Re: API to turn off the display
Message-ID:  <1075418369.2662.170.camel@mobius.int.thebadger.org>
In-Reply-To: <bvbnk1$56h$1@sea.gmane.org>
References:  <1075401074.2660.106.camel@mobius.int.thebadger.org> <bvbnk1$56h$1@sea.gmane.org>

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

On Thu, 2004-01-29 at 19:40, Jesse Guardiani wrote:
> James Green wrote:
> 
> [...]
> 
> > Interestingly, however, is that:
> > # sysctl hw.acpi.video.lcd0.active=0 &&  acpiconf -s 1
> > 
> > will turn off the LCD and suspend gracefully, whereas
> > # xset -display :0 dpms force off && sysctl hw.acpi.video.lcd0.active=0
> > && acpiconf -s 1
> > 
> > just locks everything up... (discovered by adding the commands to
> > /etc/rc.suspend and getting a lock up)
> 
> What about from SSH? I've found that things sometimes need a bit of a delay
> to work properly from /etc/rc.suspend.

I have found that too. I did most of my testing over ssh, until I setup
a serial login console (boot -h, and appropriate line in /etc/ttys) , so
I could see any messages that I might be missing... and I could not
reproduce the hang. Suspended without any problem at all. Tried booting 
with the -h and I could reproduce the hang every time.

Recompiled the kernel with:
options SC_NO_SUSPEND_VTYSWITCH

and now it all works!

I added to rc.suspend:

xset -display :0 dpms force off
sleep 3
sysctl hw.acpi.video.lcd0.active=0
sleep 1
sysctl hw.acpi.cpu.throttle_state=1

and to rc.resume:

sysctl hw.acpi.cpu.throttle_state=8
xset -display :0 dpms force on
sysctl hw.acpi.video.lcd0.active=1

The order of DPMS and ACPI is important. This works on both the console
and in X. Next up is to add in ataidle...


James


home | help

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