Flag sensors as invalid on bogus reads
authorkn <kn@openbsd.org>
Fri, 26 Mar 2021 22:54:41 +0000 (22:54 +0000)
committerkn <kn@openbsd.org>
Fri, 26 Mar 2021 22:54:41 +0000 (22:54 +0000)
commit4b78f41ac76a6cabd33b927b0f8faedb21c7197f
tree8b7880bf2a7576fb9673c806b68f707d9828deb2
parent51772eb6ca0378a11bd1f4965abf57cb7fb874bc
Flag sensors as invalid on bogus reads

Follow-up to the previous commit:

This driver continues to report stale hw.sensors values when reading
them fails, which can easily be observed on a Pinebook Pro after
plugging in the AC cable, causing the hw.sensors.cwfg0.raw0 (battery
remaining minutes) value to jump considerably one or two times before
stalling and becoming incoherent with the rest.

Flag sensors invalid upfront in apm's fashion and mark them OK iff they
yield valid values;   this is what other drivers such as rktemp(4) do,
but the consequence/intention of SENSOR_FINVALID is sysctl(8) and systat(8)
skipping such sensors (until AC gets plugged off again).

OK patrick
sys/dev/fdt/cwfg.c