Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/i2c tidy up.
details: https://anonhg.NetBSD.org/src/rev/e87ccb26b4e1
branches: trunk
changeset: 771265:e87ccb26b4e1
user: christos <christos%NetBSD.org@localhost>
date: Thu Nov 17 16:04:07 2011 +0000
description:
tidy up.
diffstat:
sys/dev/i2c/pic16lc.c | 36 +++++++++++++++++++++---------------
1 files changed, 21 insertions(+), 15 deletions(-)
diffs (70 lines):
diff -r a5119907d5c3 -r e87ccb26b4e1 sys/dev/i2c/pic16lc.c
--- a/sys/dev/i2c/pic16lc.c Thu Nov 17 15:02:22 2011 +0000
+++ b/sys/dev/i2c/pic16lc.c Thu Nov 17 16:04:07 2011 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: pic16lc.c,v 1.17 2011/11/17 13:47:27 jakllsch Exp $ */
+/* $NetBSD: pic16lc.c,v 1.18 2011/11/17 16:04:07 christos Exp $ */
/*-
* Copyright (c) 2007, 2008 Jared D. McNeill <jmcneill%invisible.ca@localhost>
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pic16lc.c,v 1.17 2011/11/17 13:47:27 jakllsch Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pic16lc.c,v 1.18 2011/11/17 16:04:07 christos Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -56,9 +56,9 @@
void pic16lc_poweroff(void);
void pic16lc_setled(uint8_t);
-#define XBOX_SENSOR_CPU 0
-#define XBOX_SENSOR_BOARD 1
-#define XBOX_NSENSORS 2
+#define XBOX_SENSOR_CPU 0
+#define XBOX_SENSOR_BOARD 1
+#define XBOX_NSENSORS 2
struct pic16lc_softc {
device_t sc_dev;
@@ -188,22 +188,28 @@
static void
pic16lc_update(struct pic16lc_softc *sc, envsys_data_t *edata)
{
- uint8_t cputemp, boardtemp;
+ uint8_t temp, sensor;
+
+ switch (edata->sensor) {
+ case XBOX_SENSOR_CPU:
+ sensor = PIC16LC_REG_CPUTEMP;
+ break;
+ case XBOX_SENSOR_BOARD:
+ sensor = PIC16LC_REG_BOARDTEMP;
+ break;
+ default:
+ aprint_error(": invalid sensor %u\n", edata->sensor);
+ return;
+ }
if (iic_acquire_bus(sc->sc_tag, 0) != 0) {
aprint_error(": unable to acquire i2c bus\n");
return;
}
- if (edata->sensor == XBOX_SENSOR_CPU) {
- pic16lc_read_1(sc, PIC16LC_REG_CPUTEMP, &cputemp);
- edata->state = ENVSYS_SVALID;
- edata->value_cur = (int)cputemp * 1000000 + 273150000;
- } else {
- pic16lc_read_1(sc, PIC16LC_REG_BOARDTEMP, &boardtemp);
- edata->state = ENVSYS_SVALID;
- edata->value_cur = (int)boardtemp * 1000000 + 273150000;
- }
+ pic16lc_read_1(sc, sensor, &temp);
+ edata->state = ENVSYS_SVALID;
+ edata->value_cur = (unsigned int)temp * 1000000 + 273150000;
iic_release_bus(sc->sc_tag, 0);
Home |
Main Index |
Thread Index |
Old Index