Date: Sun, 26 Nov 2006 14:31:59 +1100 (EST) From: Ian Smith <smithi@nimnet.asn.au> To: "M. Warner Losh" <imp@bsdimp.com> Cc: freebsd-acpi@freebsd.org Subject: Re: How do I... Message-ID: <Pine.BSF.3.96.1061126142335.1087A-100000@gaia.nimnet.asn.au> In-Reply-To: <20061125.160917.1628359610.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 25 Nov 2006, M. Warner Losh wrote:
> In message: <4568AA2F.4050602@root.org>
> Nate Lawson <nate@root.org> writes:
> : M. Warner Losh wrote:
> : > ... run a command when there's < 1% battery life left?
> : >
> : > Warner
> :
> : You add support here in acpi_cmbat.c:
> : /* XXX If all batteries are critical, perhaps we should suspend. */
> : if (sc->bst.state & ACPI_BATT_STAT_CRITICAL) {
> : if ((sc->flags & ACPI_BATT_STAT_CRITICAL) == 0) {
> : sc->flags |= ACPI_BATT_STAT_CRITICAL;
> : device_printf(dev, "critically low charge!\n");
> : }
> : }
> :
> : Use the acpi_NotifyMumble function to send a value to devd. You
> : probably want to make sure you're off AC power also since you may still
> : have that crit state when plugged in. So read the value of AC status
> : (see kern_power.c for how to do this) before sending the notify.
>
> I was thinking of sending the critical message as well as for each %
> of battery life that changed. I just wanted to make sure that it
> wasn't being done already and i was captain clueless.
>
> Warner
I suspect what you're after is basically the functionality previously
provided by apmd for APM battery % {dis,}charging (and other) power
related events, where you could define in apmd.conf, eg from mine:
apm_battery 20% discharging {
exec "logger -p user.notice battery status low [20%]";
exec "echo T250L8CE-GE-C >>/dev/speaker";
}
Me too .. and here's where Nate says 'well write it then!' :)
Cheers, Ian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.96.1061126142335.1087A-100000>
