diff options
| author | Jasper Lievisse Adriaanse <jasper@openbsd.org> | 2012-10-10 09:53:34 +0200 | 
|---|---|---|
| committer | Michael Stapelberg <michael@stapelberg.de> | 2012-10-16 10:48:44 +0200 | 
| commit | 1c2517a3998385dbfca0559aca3ba7e72b5c216c (patch) | |
| tree | b2340b4ee6c501b5f78de5a5c1551ff553ac5903 | |
| parent | ed03d2450ceae3cc7952b65d8349373bbb45a487 (diff) | |
i3status - Default to acpitz(4) instead of cpu(4) for OpenBSD temperature readings
The acpitz(4) values are eventually used by the kernel to determine if the machine
is getting too hot.
| -rw-r--r-- | include/i3status.h | 6 | ||||
| -rw-r--r-- | src/print_cpu_temperature.c | 9 | 
2 files changed, 9 insertions, 6 deletions
| diff --git a/include/i3status.h b/include/i3status.h index 2317936..93f9791 100644 --- a/include/i3status.h +++ b/include/i3status.h @@ -31,9 +31,11 @@ enum { O_DZEN2, O_XMOBAR, O_I3BAR, O_NONE } output_format;   * Due to the fact there are various ways to obtain a temperature reading, THERMAL_ZONE will need   * to be adjustable enough for those situations. As it can either be hw.sensors.cpu%d.temp0, or   * hw.sensors.acpitz%d.temp0 or even something different entirely within hw.sensors.%s.temp0. - * XXX: For now just check cpu%d.temp0. Adjust this later. + * XXX: + * Due to the fact the i3status API only allows to set the THERMAL_ZONE parameter to an integer, + * we can't make this fully configureable (yet?).   */ -#define THERMAL_ZONE "cpu%d" +#define THERMAL_ZONE "acpitz%d"  #endif diff --git a/src/print_cpu_temperature.c b/src/print_cpu_temperature.c index 8e7d7f9..b1d1221 100644 --- a/src/print_cpu_temperature.c +++ b/src/print_cpu_temperature.c @@ -88,18 +88,19 @@ void print_cpu_temperature_info(yajl_gen json_gen, char *buffer, int zone, const  			goto error;  		}  		/* -		 * 'path' is actually the node within the full path (eg, cpu0). +		 * 'path' is actually the node within the full path (currently always acpitz0).  		 * XXX: Extend the API to allow a string instead of just an int for path, this would -		 * allow us to have a path of 'acpitz0' for example. +		 * allow us to build an arbitrary path.  		 */  		if (strncmp(sensordev.xname, path, strlen(path)) == 0) {  			mib[3] = SENSOR_TEMP;  			for (numt = 0; numt < sensordev.maxnumt[SENSOR_TEMP]; numt++) {  				mib[4] = numt;  				if (sysctl(mib, 5, &sensor, &slen, NULL, 0) == -1) { -					if (errno != ENOENT) +					if (errno != ENOENT) {  						warn("sysctl"); -					continue; +						continue; +					}  				}  				outwalk += sprintf(outwalk, "%.2f", (sensor.value - 273150000) / 1000000.0 );  			} | 
