Hardcode meaningful alert level, track apm's battery state better
authorkn <kn@openbsd.org>
Thu, 1 Apr 2021 10:34:21 +0000 (10:34 +0000)
committerkn <kn@openbsd.org>
Thu, 1 Apr 2021 10:34:21 +0000 (10:34 +0000)
commit8706e35857510b21082a2e044b430d55f3cca478
tree5796d291ca85d312b0cdabd5e9db562851ba8366
parent8d298c9f312781590f8a69e57e0acc86f4a1ced0
Hardcode meaningful alert level, track apm's battery state better

The current code looks for the nonexistent "cellwise,alert-level" property
and falls back to zero as threshold (like the original NetBSD code).
It also updates the CONFIG register with that very threshold to let the
hardware set a bit and thus alert us when it has been reached.

Since our sensor framework is designed to poll every N seconds and this
driver does not actually look at whether the hardware alerted, neither
using a default threshold of zero nor updating the hardware with it makes
sense.

Remove the alert level code and simply map >50%, >25% and <=25% of
remaining battery life to apm(4)'s "high", "low" and "critical" battery
state respectively;  this matches exactly what acpibat(4) does and provides
more meaningful sensor readings without relying on nonexistent device tree
bindings.

Feedback OK patrick
sys/dev/fdt/cwfg.c