summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorjakllsch <jakllsch@NetBSD.org>2010-02-13 04:09:36 +0000
committerjakllsch <jakllsch@NetBSD.org>2010-02-13 04:09:36 +0000
commit15c24d9ce477e69f0edcd1901fb681ded4f2ada5 (patch)
tree579a18b8f7df0738dcf6f1c902144df357840ef2 /sys/dev
parentbd84a040a4f97fb912f22a980080d8f5c4528454 (diff)
Explicitly mark voltage readings as valid in Winbond voltage refresh functions.
This fixes forever-N/A VCore and -12V readings on my W83627THF chips. .
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/ic/nslm7x.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/ic/nslm7x.c b/sys/dev/ic/nslm7x.c
index 9a18393ff44..8e1d2ec46f0 100644
--- a/sys/dev/ic/nslm7x.c
+++ b/sys/dev/ic/nslm7x.c
@@ -1,4 +1,4 @@
-/* $NetBSD: nslm7x.c,v 1.53 2010/02/09 23:04:15 njoly Exp $ */
+/* $NetBSD: nslm7x.c,v 1.54 2010/02/13 04:09:36 jakllsch Exp $ */
/*-
* Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: nslm7x.c,v 1.53 2010/02/09 23:04:15 njoly Exp $");
+__KERNEL_RCSID(0, "$NetBSD: nslm7x.c,v 1.54 2010/02/13 04:09:36 jakllsch Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -2064,6 +2064,7 @@ wb_w83637hf_refresh_vcore(struct lm_softc *sc, int n)
sc->sensors[n].value_cur = (data * 4880) + 700000;
else
sc->sensors[n].value_cur = (data * 16000);
+ sc->sensors[n].state = ENVSYS_SVALID;
DPRINTF(("%s: volt[%d] data=0x%x value_cur=%d\n",
__func__, n, data, sc->sensors[n].value_cur));
}
@@ -2083,6 +2084,7 @@ wb_refresh_nvolt(struct lm_softc *sc, int n)
sc->sensors[n].value_cur /= 10;
sc->sensors[n].value_cur += WB_VREF * 1000;
+ sc->sensors[n].state = ENVSYS_SVALID;
DPRINTF(("%s: volt[%d] data=0x%x value_cur=%d\n",
__func__, n , data, sc->sensors[n].value_cur));
}
@@ -2102,6 +2104,7 @@ wb_w83627ehf_refresh_nvolt(struct lm_softc *sc, int n)
sc->sensors[n].value_cur /= 10;
sc->sensors[n].value_cur += WB_W83627EHF_VREF * 1000;
+ sc->sensors[n].state = ENVSYS_SVALID;
DPRINTF(("%s: volt[%d] data=0x%x value_cur=%d\n",
__func__, n , data, sc->sensors[n].value_cur));
}